Markdown table generator

Markdown tables are painful to write by hand and worse to edit. Fill in a grid instead, or paste rows straight from a spreadsheet.

Table

Type in the cells. Paste straight from Excel, Google Sheets or a CSV — Tab and Enter move between cells, and the header row is marked H.

Output


  

All the tools

In short

Fill in the grid and the Markdown table is written for you as you type. You can paste a range straight from Excel, Google Sheets or a CSV file and the grid expands to fit it, set per-column alignment with one click, and copy the result as Markdown, HTML or CSV. Existing Markdown tables can be pasted back in for editing, with their alignment preserved.

At a glance
InputType in the grid, paste from a spreadsheet (tab-separated), paste CSV, or paste an existing Markdown table
OutputMarkdown (aligned or compact), HTML with align attributes, or CSV
AlignmentLeft, centre or right per column, written as :--- / :---: / ---:
KeyboardTab moves across, Enter moves down and adds a row at the end
EscapingPipe characters in cells are escaped automatically
CompatibilityGitHub, GitLab, Obsidian, Notion, Reddit, Discord and other GFM renderers
PrivacyRuns entirely in the browser; nothing is uploaded

Why tables are the worst part of Markdown

Every other piece of Markdown syntax is quick to type. Tables are not. The pipes have to line up conceptually even when they don't visually, the separator row needs the right number of columns, and adding one column to a ten-row table means editing ten lines. Change your mind about alignment and you edit the separator row character by character.

This tool removes the syntax from the job. You edit a grid; the Markdown is generated as you type.

Paste straight from a spreadsheet

Copy a range in Excel, Google Sheets, Numbers or LibreOffice and paste it into any cell. Spreadsheets put tab-separated text on the clipboard, which is read directly — the grid grows to fit what you pasted. CSV text works the same way, including quoted fields containing commas.

This is the fastest route from data you already have to a table in a README, a GitHub issue, a Notion page or an Obsidian note.

Editing an existing table

Use Paste a table and drop in Markdown you already have. The separator row is parsed for column alignment, so a table copied out of a README comes back with its alignment intact, ready to edit in the grid and copy back.

Alignment

Click the arrow above any column to cycle left, centre and right. In Markdown that writes the colons in the separator row — :---, :---: and ---: — which GitHub, GitLab, Obsidian, Notion and most renderers respect.

Aligned or compact output

With Align columns on, the output is padded with spaces so the table is readable as plain text and easy to keep editing by hand. Turn it off for compact output where every row is as short as possible. Both render identically — the padding is cosmetic, and it is purely a question of whether a human will read the source later.

Three output formats

Markdown for documentation and READMEs, HTML for a website or email, and CSV to take the data back into a spreadsheet. The HTML output carries per-column align attributes so the alignment survives.

What makes this converter different

Nothing is uploaded

Conversion runs entirely in your browser. Confidential notes, contracts and internal docs never touch a server, so there is nothing to delete later.

Real formats, not wrappers

The Word export is a genuine .docx with Heading 1–4 styles, numbered and bulleted lists, real tables and hyperlinks — so it behaves like a document someone typed in Word, and Google Docs opens it cleanly.

No limits, no account

Convert as many files as you want, at any size your browser can hold, without signing up or hitting a watermark.

Questions people ask

Can I paste a table from Excel or Google Sheets?

Yes. Copy the range and paste into any cell. Spreadsheets place tab-separated text on the clipboard, which the grid reads directly and expands to fit.

Can I edit a Markdown table I already have?

Yes — use 'Paste a table' and drop it in. Column alignment is read from the separator row and preserved.

How do I set column alignment?

Click the arrow button above a column to cycle through left, centre and right. That writes the colons in the Markdown separator row.

Does it work with GitHub, GitLab and Obsidian?

Yes. The output is GitHub Flavored Markdown table syntax, which those tools and most other renderers support.

What if a cell contains a pipe character?

It is escaped automatically as \| so the table does not break.

Is my data uploaded anywhere?

No. The grid and the conversion run entirely in your browser.