Free tool · No signup

Free Markdown table generator

Type into the grid, or paste a range straight from a spreadsheet. The Markdown writes itself as you go.

  • Free forever
  • No signup
  • Paste from Excel
  • Nothing uploaded

How to make a Markdown table.

Under a minute, and nothing to sign up for.

  1. Fill in the grid, or paste one in

    The top row is the header. Copy a range from Excel or Google Sheets and paste it into any cell, and the grid grows to fit. Import takes a CSV file, a table copied off a web page, or a Markdown table you already have.

  2. Move around like a spreadsheet

    Tab and Shift+Tab move across, Enter moves down, and Enter on the last row adds a new one. The arrow keys work too. Undo and redo cover every change, including a paste.

  3. Shape the columns

    Each column has its own alignment above it, and a menu to sort it, delete it or add a column beside it. Transpose turns the rows into columns when the table came out the wrong way round.

  4. Copy it in any format

    Pick Markdown, HTML, CSV, Excel, JSON, SQL, LaTeX or another format under Preview output, then copy it or download the file. For Markdown, Aligned pads the cells so the source reads well in a text editor, and Compact keeps each row short for cleaner diffs.

Jump back to the generator

Markdown table syntax.

Everything the generator writes for you, in case you need to edit one by hand.

The basic shape

A header row, a separator row of dashes, then one line per row. Pipes go between the cells. The pipes at either end are optional, but most people keep them.

| Product | Price |
| ------- | ----- |
| Shirt   | $48   |

Aligning a column

A colon in the separator row sets the alignment. On the left is left, on both sides is centre, on the right is right. No colon means left.

| Left | Centre | Right |
| :--- | :----: | ----: |
| a    |   b    |     c |

A pipe inside a cell

Write it as \| so it is not read as the end of the cell. An unescaped pipe shifts every cell after it one column to the right. The generator escapes them for you.

| Command     |
| ----------- |
| a \| b      |

A line break inside a cell

A row has to stay on one line, so a break is written as <br>. GitHub and GitLab draw it as a new line. Some renderers show it as text.

| Address             |
| ------------------- |
| 12 High St<br>Leeds |

Bold, links and code

Inline formatting works inside a cell exactly as it does anywhere else: bold, italics, links and code spans.

| Item         | Docs              |
| ------------ | ----------------- |
| **Featured** | [Guide](/guide)   |
| `SKU-104`    | *Coming soon*     |

What a table cannot hold

Merged cells, lists, headings and more than one paragraph per cell. If you need any of those, the table has to be written in HTML instead.

<table>
  <tr><td colspan="2">Merged</td></tr>
</table>

Markdown table generator questions.

Is this Markdown table generator free?

Yes. There is no signup, no limit and no watermark, and the Markdown is yours to use anywhere, commercially or not.

How do I turn an Excel or Google Sheets range into a Markdown table?

Select the cells in the spreadsheet, copy them, click the top left cell of the grid here and paste. Spreadsheets copy as tab separated text, and the grid reads that and grows to fit. The first row you copied becomes the header.

Can I edit a Markdown table I already have?

Yes. Press Import and paste it in. The cells come back into the grid and the alignment of each column is kept, so you can change a value, add a row and copy it out again.

Can I export the table to Excel, CSV or HTML?

Yes. Under Preview output, pick from Markdown, HTML, CSV, TSV, Excel, JSON, SQL, LaTeX, XML, ASCII and MediaWiki. Every format can be copied or downloaded. Excel downloads a real .xlsx file with a bold header row, and Copy puts the cells on the clipboard so they paste straight into a spreadsheet.

How do I align a column to the right or centre?

Use the three alignment buttons above the column. In the Markdown, alignment is a colon in the separator row: :--- for left, :---: for centre and ---: for right. Numbers and prices usually read best on the right.

How do I put a pipe character in a cell?

Type it normally. The generator writes it as \| in the Markdown, which is how a pipe has to be escaped so it is not read as the edge of a cell.

Can a cell have more than one line?

Only with
. A Markdown table row has to stay on a single line, so a line break inside a cell is written as
. GitHub and GitLab draw it as a break. If you import a CSV with line breaks inside its cells, the generator converts them for you.

Can I merge cells?

No. Markdown tables have no merged cells, no lists inside cells and no more than one header row. A table that needs any of those has to be written in HTML. When you import an HTML table with merged cells, the text goes in the first column it covered and the rest are left empty, so nothing shifts.

Where do Markdown tables work?

Anywhere that supports GitHub Flavored Markdown: GitHub and GitLab, Obsidian, Reddit, Stack Overflow, and most documentation and static site generators. Slack and Discord do not draw tables and show the pipes as text.

Why is my table showing up as plain text?

Usually one of three things. The table needs a blank line above it, or the line before is read as part of the same paragraph. The separator row of dashes is missing or has fewer cells than the header. Or the place you pasted it into does not support tables at all.

What is the difference between Aligned and Compact?

They render exactly the same. Aligned pads the cells with spaces so the pipes line up and the table is readable as plain text. Compact leaves the padding out, which keeps the file smaller and means changing one cell changes one line in a diff rather than the whole column.

Is what I type uploaded anywhere?

No. The table is built in your browser by code running in this page and nothing is sent to a server. It is kept in this browser, so reloading the page brings your table back.

Turn a table of products into a store.

Store.link turns a Google Sheet into an online store with a free web address. No coding, and no commission on your orders.

0% Commissions  •  No Coding