CSV to Markdown

Turn CSV or spreadsheet data into a properly aligned Markdown table.

Paste From A Spreadsheet, Get A Table

Markdown tables are simple to read and tedious to type, especially when the columns need to line up. Copying a range out of a spreadsheet gives you tab-separated text, which is nearly a Markdown table but not quite.

This converts either form, and it parses CSV properly — quoted fields containing commas, doubled quotes and embedded line breaks all come through intact. That is the only genuinely hard part of CSV, and it is where a naive split-on-comma converter falls apart.

Key features

  • Real CSV parsing — quoted fields, escaped quotes and embedded newlines, not a split on commas.
  • Detects the delimiter — comma, semicolon, tab or pipe, read from the first line.
  • Pads the columns — so the source Markdown is readable as plain text, not just when rendered.
  • Alignment control — including a mode that right-aligns any column holding only numbers.
  • Escapes pipes in the data — a pipe inside a cell would otherwise end the column.
100% client-side — no data leaves your machine

This tool runs entirely inside your browser using native Web APIs. Your files and text are never uploaded to a server, never logged and never shared with third parties.

How to use: CSV to Markdown

  1. Paste your data
    From a file or straight out of a spreadsheet, which pastes as tab-separated.
  2. Confirm the header
    Untick if the first row is data, and generic column names are generated instead.
  3. Choose alignment
    "Numbers right" reads best on tables of figures.
  4. Copy or download
    The Markdown is ready to paste into a README, an issue or a wiki.

Technical specifications

Processing locationEntirely in your browser — no server round trip
Data uploadedNone. Files and text never leave your device
PriceFree — no account, no trial, no usage cap
CategoryConverters
Works offlineYes, once the page has loaded
Browser supportChrome 90+, Edge 90+, Firefox 90+, Safari 15+
Interface languagesEnglish, 中文, हिन्दी, Español, العربية

Frequently asked questions

Why is my table not rendering?

Nearly always an unescaped pipe in the data, which ends the cell early and breaks the row. This converter escapes them automatically. The other common cause is a missing blank line before the table in the surrounding document — most Markdown renderers need one.

Does column padding matter?

Not to the renderer, which ignores the extra spaces entirely. It matters to anyone reading or editing the raw Markdown, where an unpadded table is nearly illegible. Turn it off if the table is very wide and the extra characters are a problem.

What happens to line breaks inside a cell?

They become <br> tags, because a Markdown table row cannot contain a real newline. Most renderers, including GitHub's, honour that. A cell with a lot of text in it is usually a sign the data wants to be a list rather than a table.

Can I convert a Markdown table back to CSV?

Not with this tool, which goes one way. The reverse is much easier to do by hand, since the columns are already delimited — or paste it into a spreadsheet and split on the pipe.

Related tools

Back to all tools