Markdown Table to CSV Converter
Paste a Markdown table and copy or download comma-separated CSV, with quotes added only where a cell needs them.
Sample data shown — paste or drop your own to replace it.
How to convert a Markdown table to CSV in 3 steps
Paste the Markdown table
Paste it into the Paste Markdown box (TSV, JSON and HTML tables are detected too), or upload a file. If the text holds several tables, the first one is converted.
Check the CSV
The CSV tab on the right is already selected and updates as you type. The header row is the first line. Use Edit grid to fix cells before exporting.
Copy or download
Click Copy CSV to paste it elsewhere, or open Download › CSV (.csv) to save table.csv.
Example
| Name | Qty | Price | Notes | | :--- | :---: | ---: | --- | | Widget | 12 | 4.50 | "rush" order, a\|b | | Gadget & Co | 3 | 19.00 | 50% off<br>ends Friday |
Name,Qty,Price,Notes Widget,12,4.50,"""rush"" order, a|b" Gadget & Co,3,19.00,"50% off ends Friday"
Options explained
- Paste Markdown box
- Converts 150 ms after you stop typing, and immediately on paste. The badge shows the detected format. Only the first table in the text is used.
- Upload file
- Reads a .md, .csv, .tsv, .json, .html, .txt or Excel file from your computer without uploading it anywhere..md · .csv · .tsv · .json · .html · .txt · .xlsx · .xls · .ods
- Paste / Sample / Clear
- Paste reads the clipboard, Sample loads an example Markdown table, Clear empties the box.
- Edit grid / Markdown tabs
- Fix cells and headers before exporting, with undo and redo. The Markdown tab shows the source and stays in sync. Alignment is not part of CSV.
- Tools
- Header case, transpose, and quick or deep clean for stray spaces and blank rows. Auto-align changes only the Markdown view.UPPER · lower · Title Case · Transpose · Quick clean · Deep clean
- Output tabs
- This page opens on CSV. The same table can be switched to Markdown, HTML, TSV, JSON, LaTeX, SQL or Jira. The comma delimiter is fixed; for tabs use the TSV tab. Three checkboxes sit above the output: UTF-8 BOM in download (on), Neutralize spreadsheet formulas (off) and <br> as line break (on).CSV (selected) · Markdown · HTML · TSV · JSON · LaTeX · SQL · Jira
- Copy CSV
- Copies exactly what the output box shows.
- Download
- Saves the CSV as table.csv (with a UTF-8 byte-order mark unless you untick it), or the table as an Excel workbook (.xlsx), an HTML file or a PNG image..csv · .xlsx · .png · other tabs’ formats
- Copy link
- Copies a URL that reopens this table. The table is stored after #md= in the link, which browsers do not send to a server.
Convert to and from other formats
Also useful
Convert Markdown to…
- Markdown Table to TSVCopy as tab-separated values that paste cleanly into Excel and Sheets.
- Markdown Table to HTMLExport semantic <table> markup.
- Markdown Table to JSONExport rows as an array of JSON objects.
- Markdown Table to LaTeXExport LaTeX tabular code for papers and Overleaf.
- Markdown Table to SQLGenerate CREATE TABLE and INSERT statements.
- Markdown Table to ExcelDownload a real .xlsx with numbers, bold header and one sheet per table.
- Markdown Table to Google SheetsCopy a table that pastes cleanly into Google Sheets.
- Markdown Table to WordCopy a formatted table into Word or Google Docs, or download .docx.
- Markdown Table to ConfluenceWiki markup, storage format or a rich copy for the Cloud editor.
- Markdown Table to JiraConvert to Jira and Confluence wiki markup.
- Markdown Table to ImageRender the table as a PNG or SVG for slides and posts.
Convert to Markdown from…
- CSV to Markdown TableConvert CSV text or .csv files, including quoted cells.
- Excel to Markdown TablePaste cells copied from Excel straight into a Markdown table.
- Google Sheets to Markdown TablePaste a copied range or a public sheet URL.
- TSV to Markdown TableConvert tab-separated text into a Markdown table.
- HTML Table to MarkdownConvert <table> markup into a Markdown table.
- JSON to Markdown TableConvert a JSON array of objects into a table.
- SQL to Markdown TableConvert MySQL, PostgreSQL or SQLite CLI query output.
- Word Table to MarkdownPaste a table copied from Word or Google Docs.
- Web Table to MarkdownCopy a table from any web page and paste it here.
- Image to Markdown TableTurn a screenshot or photo of a table into Markdown in your browser.
- PDF to Markdown TableExtract a table from a PDF page, with OCR for scans.
- Universal Table to MarkdownPaste anything tabular; the format is detected for you.
About this tool
Paste a Markdown table and the CSV appears as you type: the header row first, one line per row, comma-separated. A cell is wrapped in quotes only when it contains a comma, a quote or a line break, and quotes inside it are doubled. Every value is written as the text in the cell, so nothing is retyped or reformatted. A <br> in a cell becomes a real line break inside the quoted field, the downloaded file starts with a UTF-8 byte-order mark so Excel reads accents, and an optional checkbox prefixes cells that start with = + - @ with a quote so spreadsheets do not run them as formulas. Everything runs in your browser.
- Header row first, then one line per row
- Quotes only cells that contain a comma, quote or line break
- Quotes inside a cell are doubled ("")
- Optional UTF-8 BOM in the download so Excel reads accents
- Optional single-quote prefix for cells that start with = + - @
- <br> becomes a real line break inside the quoted cell
- Markdown escapes removed: \| becomes |
- Edit cells and headers before exporting
- Also saves .xlsx for Excel, which avoids CSV encoding problems
- Runs in your browser; the table is not uploaded
Technical details
How the CSV is written
The first Markdown table in the text is read, then written with a comma delimiter, one line per row. A cell is wrapped in double quotes only when it contains a comma, a double quote or a line break, and any quote inside is doubled, which is the quoting RFC 4180 describes. Lines end in a line feed (\n) rather than the CRLF the RFC names, which spreadsheets and CSV libraries read without trouble.
- Header: The Markdown header row becomes the first CSV line. A headerless table (delimiter row first) is written without one.
- Text only: Every value is written as the text in the cell. Numbers, dates and 007 are not converted or reformatted, and alignment is dropped.
- Line breaks: A <br> in a Markdown cell becomes a real line break inside the quoted CSV field, which Excel and Sheets read back as a multi-line cell. Untick <br> as line break to keep the literal characters <br>.
- Inline Markdown: **bold**, `code` and [links](https://example.com) are not stripped. They appear as typed.
- Pipes: A \| in Markdown is written as a plain | in the CSV.
- Encoding: The downloaded .csv starts with a UTF-8 byte-order mark by default, so Excel on Windows reads accents and symbols when you double-click it. Copy never includes the mark, and you can untick UTF-8 BOM in download if another tool rejects it.
- Formulas: Cells starting with =, +, - or @ are written as-is by default, and a spreadsheet may treat them as formulas when it opens the file. Tick Neutralize spreadsheet formulas to prefix them with a single quote; plain numbers such as -5 are left alone.
Tips and best practices
Open it in Excel with the Data tab
The downloaded file carries a UTF-8 byte-order mark, so a double-click should show accents correctly. If it still looks garbled (for example after copying the text into a new file), use Data › From Text/CSV and choose UTF-8, or download the .xlsx instead.
Strip Markdown before exporting
Remove ** and backticks in Edit grid (or with Find and replace in your editor) first, because the CSV keeps them as text.
Check cells that start with = + - or @
The CSV writes them unchanged by default, and a spreadsheet may run them as formulas when it opens the file. Tick Neutralize spreadsheet formulas to prefix them with a single quote when the file goes to someone else.
Common problems and fixes
Accented letters or symbols look wrong in Excel
Cause: The text was copied instead of downloaded (Copy never includes the byte-order mark), the UTF-8 BOM in download box was unticked, or Excel read the file as ANSI.
Fix: Use Download › CSV with UTF-8 BOM in download ticked, import with Data › From Text/CSV and set the file origin to UTF-8, or use Download › Excel (.xlsx).
Leading zeros disappeared (007 became 7)
Cause: The CSV keeps 007 as typed; Excel converts it to a number when it opens the file.
Fix: Import the column as Text in Excel’s Data › From Text/CSV wizard, or use the .xlsx download.
<br> shows up inside a CSV cell
Cause: The <br> as line break box is unticked, so <br> is written as the characters <br>.
Fix: Tick <br> as line break. The cell then holds a real line break inside quotes.
Only the first table was exported
Cause: The converter reads one table at a time.
Fix: Paste each table separately.
Platform compatibility
| Platform | Support | Notes |
|---|---|---|
| Excel | Supported | Opens by double-click; use Data › From Text/CSV (UTF-8) for accents and leading zeros. |
| Google Sheets | Supported | File › Import › Upload reads UTF-8 CSV files. |
| Python (pandas), R, databases | Supported | Quoted fields follow RFC 4180, so standard CSV readers parse them correctly. |
| LibreOffice Calc | Supported | The text import dialog lets you choose UTF-8 and the comma separator. |
Frequently asked questions
How do I convert a Markdown table to CSV?
Paste the Markdown table into the box above. The CSV tab on the right is already selected and updates as you type. Click Copy CSV, or open Download › CSV (.csv) to save table.csv. The header row becomes the first line.
How are commas, quotes and line breaks handled?
A cell containing a comma, a double quote or a line break is wrapped in double quotes, and any double quote inside it is doubled, so "rush" order, a|b becomes """rush"" order, a|b". Other cells are written without quotes.
Why do I see <br> inside my CSV cells?
It should not appear: <br> is written as a real line break inside the quoted cell. If you untick <br> as line break above the output, the characters <br> are kept as typed instead.
Why do accents look wrong when I open the CSV in Excel?
Download › CSV adds a UTF-8 byte-order mark by default, which Excel on Windows needs to read accents on a double-click. Copy never includes it, so a pasted-and-saved file may still look wrong: use Data › From Text/CSV and choose UTF-8, or download the Excel (.xlsx) file from the same Download menu.
Can I use semicolons or tabs instead of commas?
The CSV tab always uses commas. For tab-separated output use the TSV tab or the Markdown Table to TSV page. For semicolons, replace the commas in the delimiter after copying, taking care with quoted cells.
Is the alignment, bold or link formatting kept?
No. CSV has no alignment, and **bold**, `code` and [links](https://example.com) are written as the literal characters typed in the cell. Remove them in Edit grid first if you want plain values.
Does it convert several tables or a whole README?
Only the first table in the pasted text is converted, and the rest of the text is ignored. Paste each table separately to export the others.
Is my table uploaded anywhere?
No. Parsing and conversion run in your browser. A draft is saved in your browser’s local storage so a reload does not lose it, and Copy link puts the table after #md= in the URL, which browsers do not send to a server.