CSV to Markdown Table
Paste CSV, or copy cells from a spreadsheet, and get a GitHub-flavoured Markdown table ready for a README, issue, wiki or documentation page. Number columns are right-aligned, pipe characters in values are escaped so they do not split cells, line breaks become <br>, and the source is padded so the columns line up in plain text too.
- Runs in your browser
- No sign-up
- Free to use
How to use CSV to Markdown Table
- Paste CSV or tab-separated cells.
- Choose alignment and whether to pad the columns.
- Confirm the first row is the header.
- Copy the Markdown into your document.
CSV to Markdown Table features
GFM tables
Works on GitHub, GitLab, Bitbucket, Notion and most Markdown renderers.
Smart alignment
Numeric columns right-aligned, text left-aligned.
Safe cells
Pipes escaped and line breaks converted to <br>.
Readable source
Columns padded to equal width in the raw Markdown.
Any delimiter
Comma, semicolon, tab or pipe, detected automatically.
Local
Converted in your browser.
When to use CSV to Markdown Table
- Adding a comparison or pricing table to a README.
- Pasting spreadsheet data into a GitHub issue or pull request.
- Documenting configuration options in a wiki.
- Turning query results into a table for a report in Markdown.
CSV to Markdown Table FAQ
Which Markdown flavour is produced?
GitHub-flavoured Markdown pipe tables, which most renderers support, including GitLab, Bitbucket, Obsidian, Notion and static site generators.
Why are pipes escaped?
A | character separates cells, so a value containing one would split into two cells. Writing it as \| shows the pipe as text.
How are line breaks inside cells handled?
Markdown table cells must be on one line, so line breaks become <br> tags, which most renderers display as line breaks.
What does padding the source do?
It adds spaces so that the columns line up in the raw text, which makes the table readable in editors and diffs. Renderers ignore the extra spaces.
Can I convert Markdown tables back to CSV?
Yes, with the Markdown Table to CSV tool.
Is my data uploaded?
No. Everything runs in your browser.
Markdown tables from CSV
Markdown has no table syntax in its original form, but the pipe tables introduced by GitHub-flavoured Markdown are now supported almost everywhere Markdown is used. A row is a line of cells separated by pipes, the header is followed by a line of dashes, and colons in that line set the alignment of each column.
Writing such tables by hand is fiddly for more than a few rows, and pasting data in directly breaks easily. This converter parses CSV with proper quoting rules and builds the table, so commas inside quoted values, multi-line cells and different delimiters are handled correctly. Spreadsheet cells copied to the clipboard arrive as tab-separated text, which the delimiter detection recognises.
Alignment improves readability. Columns whose values are all numbers, including currency symbols, thousands separators and percentages, are right-aligned so digits line up, and text columns are left-aligned. You can also force left or centred alignment, or leave alignment markers out entirely.
Cell content needs two kinds of care. A pipe character inside a value would end the cell, so it is escaped with a backslash, and line breaks are not allowed inside table cells, so they become <br> tags. Backslashes are doubled so they are displayed rather than interpreted.
Padding the source with spaces makes the raw table readable in editors, code reviews and diffs, where Markdown is often read without rendering. Renderers ignore the padding, so it only affects how the source looks.