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.
| Input | Type in the grid, paste from a spreadsheet (tab-separated), paste CSV, or paste an existing Markdown table |
|---|---|
| Output | Markdown (aligned or compact), HTML with align attributes, or CSV |
| Alignment | Left, centre or right per column, written as :--- / :---: / ---: |
| Keyboard | Tab moves across, Enter moves down and adds a row at the end |
| Escaping | Pipe characters in cells are escaped automatically |
| Compatibility | GitHub, GitLab, Obsidian, Notion, Reddit, Discord and other GFM renderers |
| Privacy | Runs 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.