Free Markdown Table Generator: Visual Editor + CSV Paste
Build GitHub-flavoured Markdown tables in a spreadsheet-style editor with per-column alignment and one-click paste from Excel, Google Sheets, or CSV. Pipes are escaped automatically. Free and 100% client-side.
:--- Center :---: Right ---:Spreadsheet-Style Editor
Click any cell to edit. Add rows and columns with one button. Drag to reorder. The grid stays in sync with the Markdown source — no parse/serialize round-trips lose your data.
Per-Column Alignment
Left, center, or right per column — encoded via the colon markers GitHub, GitLab, Bitbucket, and every Markdown processor accept. Switch alignment without retyping the table.
Paste from Anywhere
Copy a range from Excel, Google Sheets, Numbers, or a CSV file — we auto-detect tab / comma / pipe / semicolon delimiters and import the rows directly. No copy-paste-and-re-edit loop.
100% Client-Side
Internal product roadmaps, financial breakdowns, customer data tables — every cell stays on your device. We render the Markdown in your browser, no network round-trip.
Markdown Table Generator: Build GFM Tables Without Typing Pipes
A Markdown table generator turns a spreadsheet-style grid into GitHub-flavoured Markdown (GFM) source. Type cells or paste from Excel, set per-column alignment, and copy a properly escaped | pipe | table. It auto-escapes literal pipes, converts newlines to <br>, and outputs pretty-padded or compact source. It runs 100% in your browser, free, with no upload.
How to make a Markdown table
- Edit the grid directly, or click Paste from Spreadsheet and paste a copied range from Excel, Google Sheets, or a CSV file.
- Add or remove columns and rows with the toolbar buttons — the grid stays rectangular, so a new column adds an empty cell to every row.
- Click the alignment control above each column to cycle left → center → right; it rewrites the delimiter-row colon markers for you.
- Pick an output style: Pretty pads columns for readable source, Compact uses single-space padding for the smallest byte count.
- Press Copy to send the GFM source to your clipboard, then paste it into a README, pull request, issue, or docs page.
What is GFM table syntax and how does it work?
Markdown tables are not part of core Markdown. They are a GitHub-flavoured Markdown extension defined in section 4.10 of the GFM spec. A table has three parts: a header row, a delimiter row, and zero or more body rows. Cells are separated by pipes (|), and a leading and trailing pipe is recommended for clarity. The delimiter row sets alignment: per the spec, it "consists of cells whose only content are hyphens (-), and optionally, a leading or trailing colon (:), or both."
| Column 1 | Column 2 | Column 3 | |:---------|:--------:|---------:| | left | center | right | | a | b | c |
Two spec rules trip people up. First, the header row must match the delimiter row in the number of cells — if it does not, "a table will not be recognized" and the whole block renders as plain text. Second, only inline content is allowed: per the spec, "block-level elements cannot be inserted in a table." That means no lists, headings, or fenced code blocks inside a cell — just **bold**, `code`, links, and <br> line breaks.
Worked examples: input → output
Right-aligned number column · pretty style
| Item | Price | |:-------|------:| | Coffee | 3.50 | | Bagel | 2.25 |
Centered status column · compact style
| Task | Status | | --- | :---: | | Build | done | | Ship | wip |
Edge case · a literal pipe inside a cell
Typing a | b in a cell would split the column. This tool escapes it to a \| b on output, so the cell stays intact. Type the pipe normally — do not pre-escape it yourself, or you will get a double backslash a \\| b.
Alignment marker reference
Alignment lives entirely in the delimiter row. The number of dashes is cosmetic — the spec requires only one or more hyphens per cell — what matters is where the colons sit.
| Alignment | Delimiter marker | Colon placement | Best for |
|---|---|---|---|
| Left | :--- | Leading colon (or no colon) | Labels, names, descriptions |
| Center | :---: | Leading and trailing colon | Status, checkmarks, badges |
| Right | ---: | Trailing colon | Numbers, prices, totals |
Markdown table vs HTML table vs CSV
| Format | Best for | Limitations |
|---|---|---|
| Markdown table | READMEs, PR descriptions, issue templates, Notion docs | No row/col spans, no styling, rectangular only |
| HTML <table> | Complex layouts, spans, styling, accessibility-critical docs | Verbose, breaks plain-text readability |
| CSV / TSV | Bulk data, importable to spreadsheets, machine-to-machine | Not human-readable inline, requires a renderer |
Two paste quirks worth knowing
When you paste, the delimiter detector samples only the first 200 characters and picks the most frequent of tab, comma, pipe, or semicolon — tab wins ties first, then comma. So a CSV whose first two columns are short but whose later rows contain many commas can still misread if those commas fall outside the sample. Fix: copy a clean range, or export to a single consistent delimiter before pasting.
The escape order also matters. Cells are escaped backslash-first (\ → \\), then pipe (| → \|), then newlines to <br>. That ordering is why you should never pre-escape pipes yourself — the tool would double the backslash. In pretty mode every column is padded to at least three characters so the delimiter row always keeps room for its colon markers, even for one-letter headers.
Runs 100% in your browser
Your data never leaves your device. Building the grid, escaping pipes, computing column widths, and parsing pasted CSV all happen locally in JavaScript — no uploads, nothing leaves your device. Internal product roadmaps, financial breakdowns, and customer data tables stay on your machine. I tested paste import from Excel (tab-separated), Google Sheets, and raw CSV, plus cells containing literal pipes, embedded newlines, and quoted fields with commas, in both pretty and compact output.
Frequently asked questions
Is this Markdown table generator free?
Yes — 100% free with no signup and no usage cap. It runs entirely in your browser, so there is nothing to install and no account to create. Build, paste, and copy unlimited tables.
How do I encode column alignment?
Colons in the delimiter row control it: :--- is left, :---: is center, and ---: is right. Click the alignment control above a column to cycle through the three options — the tool rewrites the markers so you never edit dashes by hand.
How do I put a line break inside a cell?
Use an HTML <br> tag — GFM cells cannot span multiple physical lines of source. This editor accepts multi-line input and converts each newline to <br>automatically so the rendered table looks right.
Why does my pasted table look broken?
Usually the delimiter was misdetected, the source had merged cells (Markdown tables are strictly rectangular), or a cell held an unescaped pipe. Export your sheet to a single clean delimiter, unmerge cells first, and let the tool handle pipe escaping.
Does it support row spanning or nested lists in cells?
No — the GFM spec states "block-level elements cannot be inserted in a table," and there is no row or column spanning. For complex layouts, embed a raw HTML <table>instead. Inline Markdown like bold, links, and inline code does work inside cells.
Related Markdown & text tools
Author full Markdown docs with live preview
Markdown to HTMLRender your table to clean HTML
Markdown TOC GeneratorBuild a table of contents from headings
CSV ↔ JSON ConverterReshape tabular data between formats
Word CounterRight-size the prose around your table
Case ConverterNormalize header capitalization
Find & ReplaceBulk-edit cell values across the table
Text SorterAlphabetize rows before pasting them in
URL Slug GeneratorTurn a heading into a clean slug
Lorem Ipsum GeneratorFill empty cells with placeholder text
Guide: Markdown SyntaxRead the full Markdown syntax guide
Guide: Text Tools for CreatorsThe text-processing workflow guide
All ToolsBrowse the full Toolk tool hub
Last updated: June 2, 2026 · Runs 100% in your browser — no uploads, nothing leaves your device.
Need a different tool?
Browse all 89 free, in-browser tools — or tell us what we should build next.