CSV to Markdown Table

Convert CSV data into a clean Markdown table.

Free CSV to Markdown table converter that parses RFC 4180 CSV — quoted fields, embedded commas and doubled quotes — and outputs aligned GitHub-flavored Markdown. Runs entirely in your browser, so nothing is uploaded. It runs free in your browser on Gera Tools, with nothing uploaded.

Last updated Source: Gera Tools

How are quoted fields handled?

The parser follows RFC 4180, so quoted fields, commas inside quotes and doubled quotes are read correctly before being rendered as Markdown cells.

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 .md and .mdx files.
  • 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.