CSV & Excel to Markdown Table Converter

Paste rows from Excel, Google Sheets or a CSV file and get a neatly padded GitHub-Flavored Markdown table for READMEs, issues, wikis and docs.

Runs in your browserUpdated
Open file (.xlsx, .csv, .json)
Input
Column alignment

Rendered table

Input preview

Your data never leaves your computer. All processing happens 100% locally in your browser.

How to use the CSV & Excel to Markdown Table

  1. Copy cells from Excel or Google Sheets and paste them, open a CSV / XLSX / JSON file, or load the sample.
  2. Choose the column alignment — Auto right-aligns numeric columns.
  3. Keep Pad columns on for a table that is readable in plain text, or off for the shortest output.
  4. Copy the Markdown into your README, issue, pull request or docs.

What is a Markdown table?

Markdown tables are part of GitHub-Flavored Markdown (GFM) and supported by GitHub, GitLab, Bitbucket, Notion, Obsidian, Docusaurus, MkDocs and most static site generators. A table is a header row, a delimiter row of dashes and one line per row, with cells separated by pipes:

| plan | users | price |
| :--- | ----: | ----: |
| free |   120 |     0 |
| pro  |    48 |    49 |

Alignment syntax

Delimiter cellAlignment
:---Left
:---:Center
---:Right
---Renderer default (usually left)

Auto mode right-aligns columns that contain only numbers, so values line up by their last digit, and left-aligns everything else.

Characters that break tables

  • Pipes (|) inside a cell would start a new column, so they are escaped as \|.
  • Line breaks end a table row in Markdown. They are converted to <br> (which GitHub renders) or to spaces.
  • Backslashes are escaped so they appear literally.

Why pad the columns?

Padding adds spaces so every column has the same width in the source. Renderers ignore it, but it makes the raw file readable in code review and diff tools. Turn it off for the most compact output — for example when cells contain long text that would make each line very wide.

Starting from JSON? JSON to Markdown Table has options for nested data. Need HTML instead? Try the HTML table generator.

Tools that pair well with the CSV & Excel to Markdown Table

  • Excel to JSON — Open an .xlsx workbook or paste cells straight from Excel or Google Sheets and get clean JSON.
  • JSON to Excel — Turn a JSON array into a real Excel workbook.
  • CSV & Excel to SQL — Paste CSV or Excel cells, or open an .xlsx file, and get ready-to-run CREATE TABLE and INSERT statements with correctly escaped values for your database.
  • JSON to SQL — Paste a JSON array and get SQL that creates the table and inserts every object as a row — nested objects become columns or JSON values, and every string is escaped for your dialect.

Frequently asked questions

How do I paste an Excel table into GitHub?
Copy the cells in Excel, paste them here, then copy the Markdown output into your README, issue or pull request description.
Can a Markdown table have no header?
No — GFM requires a header row. If your data has none, untick First row is a header and generic names (column1, column2…) are used.
Can cells contain line breaks?
Not directly. With the line-break option on, breaks become <br>, which GitHub and most renderers display as a new line inside the cell.
Does it work with Google Sheets?
Yes. Copying a range in Google Sheets produces tab-separated text, which is detected automatically.

Related tools