This tool converts CSV data into a Markdown table ready to paste into a README, wiki, GitHub issue or pull request. It produces aligned, padding-formatted GitHub-Flavored Markdown so the raw text is readable and the rendered table looks correct. You choose the delimiter and the first row becomes the table header.
How it works
The CSV is read by an RFC 4180-aware parser that handles quoted fields, commas inside quotes and doubled quotes. Each value is then made safe for Markdown tables: pipe characters are escaped as \| and any line breaks inside a cell are collapsed to spaces, because Markdown tables cannot contain raw pipes or newlines within a cell. The tool emits a header row, a separator row of dashes, then the data rows, padding each column so cells line up in the source. You can choose comma, semicolon, tab or pipe as the input delimiter.
Example
Given:
Name,Role,City
Ada,Engineer,London
Bo,Designer,Lagos
it produces:
| Name | Role | City |
| ---- | -------- | ------ |
| Ada | Engineer | London |
| Bo | Designer | Lagos |
This renders as a proper table in any Markdown viewer.
Where to paste the output
- GitHub README / pull request description — paste directly; GitHub renders GFM tables without extra configuration.
- GitLab wiki — same syntax; works identically.
- Notion, Confluence, Linear — most accept pasted Markdown including tables.
- Docusaurus, VitePress, Astro MDX — all render GFM tables in
.mdand.mdxfiles. - Obsidian and Typora — live-preview editors render the table immediately on paste.
Limitations of Markdown tables
Markdown tables do not support:
- Cell merging (colspan / rowspan) — every cell is independent.
- Multi-line cell content — newlines inside a cell are collapsed to spaces during conversion, which is why this tool does that automatically.
- Rich formatting inside a cell — inline code and bold/italic work, but nested lists or block-level elements do not.
If you need those features, use an HTML table instead.
Pipe characters in your data
Any pipe (|) in a cell value would break the column delimiter, so this tool automatically escapes them as \|. Most Markdown renderers interpret \| as a literal pipe, but a small number of parsers do not — if your environment has issues, consider replacing pipes in the source data before converting.
Column alignment (optional)
Standard GFM syntax supports optional column alignment by using colons in the separator row. This tool outputs a plain separator (----), which defaults to left-alignment. You can add alignment manually after pasting:
| Name | Score | Date |
| :------- | -----: | :--------: |
| Alice | 100 | 2026-01-01 |
| Bob | 85 | 2026-01-02 |
:---= left-align---:= right-align (useful for numbers and currency):---:= centre-align
Right-aligning numeric columns makes tables considerably easier to scan.
Everything runs locally in your browser — nothing is uploaded, which makes it safe for confidential exports and internal data.