Convert Markdown to CSV
Extract any table
from any .md file.
Free Markdown table to CSV converter. Upload a .md file or paste Markdown directly — all GFM pipe tables detected automatically with row counts. Handles escaped pipes, alignment rows and multi-table documents. Runs in your browser.
What CSVShift recognises — and what the separator row alignment markers mean.
| Name | Score | Grade | Status | |:------|------:|:-----:|--------| | Alice | 95 | A | active | | Bob | 82 | B | active | | Carol | 78 | C | alumni |
:---— left aligned---:— right aligned:---:— centre aligned---— default (left)- Must have at least one
-per cell
- Leading and trailing
|are required - Use
\|to include a literal pipe in a cell - Cell content is trimmed of whitespace
- Inline Markdown (
**bold**) is kept as-is in CSV - Empty cells become empty CSV fields
Line-by-line detection of GFM pipe tables — no regex soup.
CSVShift scans each line of the Markdown document. A pipe table is detected when a line starting and ending with | is followed by a separator row — a line where every cell contains only -, : and spaces. All subsequent pipe lines are collected as data rows until a non-pipe line is encountered.
Each row is split on |, but \| inside cells is first replaced with a placeholder to prevent accidental splitting. After splitting, the placeholder is restored as a literal pipe character in the cell value. Leading and trailing whitespace is trimmed from each cell.
All detected tables are listed in a selector with their dimensions. Select the table you need and click Export — the cells are re-serialised as RFC 4180 CSV with correct quoting for any values that contain the delimiter, double quotes or newlines.
Code examples for scripting workflows.
Common situations where extracting data from a Markdown table is necessary.
Package comparison tables, benchmark results and feature matrices in GitHub READMEs are often the canonical source of structured data. Extracting these to CSV enables further analysis, import into a database or reuse in other documents.
API reference tables, configuration option lists and migration guides in Markdown docs often contain structured data that is easier to analyse or maintain in a spreadsheet. Converting to CSV produces a version that can be edited in Excel and converted back.
Notion and Obsidian export pages as Markdown. Tables in these exports can be extracted as CSV using CSVShift — useful for migrating data from a knowledge base to a structured database or analytics tool.
Changelogs in Markdown format often contain structured tables of breaking changes, new features and deprecated APIs. Extracting these to CSV enables systematic analysis of what changed across versions.
Markdown parsed
in your browser. No server.
CSVShift detects GFM pipe tables by scanning line-by-line — no server, no external parser. The escape handling (\| → literal pipe) uses a placeholder swap pattern that correctly handles pipes that appear inside cell content without accidentally splitting the row.
|, and the header must be followed by a separator row of --- cells. Alignment markers (:---, ---:, :---:) are recognised and the separator row is skipped in the CSV output.**bold**, `code` and [link](url) inside cells is kept as-is in the CSV output — the raw Markdown syntax is exported. If you want clean text, post-process the CSV to strip the Markdown formatting.