CSV to Markdown table converter

Paste or drop a CSV file and get a clean Markdown table instantly. Runs entirely in your browser, so your data is never uploaded to a server.

About this converter

Markdown had no table syntax in its original specification, but every widely used flavour today supports pipe tables: GitHub Flavored Markdown, GitLab, Obsidian, MkDocs, Docusaurus. The trouble is that writing one by hand is miserable. Column alignment is fiddly, a single missing pipe silently breaks the rendering, and the data you actually want to publish almost always starts life in a spreadsheet or a database export rather than in your editor.

This converter closes that gap. Paste CSV text directly, or drop a .csv file onto the box, and you get a pipe table you can paste straight into a README, a pull request description, a wiki page, or your documentation site. Quoted fields containing commas are handled correctly, embedded newlines inside quotes are preserved, and pipe characters in your data are escaped so they cannot break the table structure.

How this works matters if your data is not public: the conversion runs entirely inside your browser using JavaScript. Nothing is uploaded, nothing is logged, and no copy of your file exists on any server. You can confirm it by opening devtools, switching to the Network tab, and running a conversion - there is no request. That makes this safe for internal exports, customer lists, and anything else you would hesitate to paste into a tool that round-trips through someone else’s backend.

You can choose whether the first row is treated as a header, pick the column alignment, and switch the delimiter if your file is actually semicolon- or tab-separated, which is a common result of exporting from Excel in a locale that uses commas as decimal separators.

Frequently asked questions

Does this upload my CSV anywhere?
No. Parsing and formatting both run in your browser. Open the Network tab in devtools and run a conversion - no request is made. Your file never leaves your machine.
What happens to commas inside quoted fields?
They are preserved. The parser follows RFC 4180, so a field like "Smith, John" stays one cell instead of splitting into two columns.
My data contains pipe characters. Will that break the table?
No. Any pipe inside a cell is escaped so the Markdown renderer treats it as literal text rather than a column separator.
Which Markdown flavours support these tables?
Pipe tables render in GitHub, GitLab, Bitbucket, Obsidian, MkDocs, Docusaurus and most static site generators. They do not render in strict CommonMark without a table extension.

Related converters