Markdown Table Editor
Visually edit a table — rows, columns, alignment per column — and copy the GitHub-flavoured Markdown.
Enter input above to see the result.
What is this for?
Markdown tables are painful to write and edit by hand. Pipe characters, alignment colons, dash counts — they're fiddly to align and easy to break. This editor replaces the syntax with a familiar grid interface: click any cell to edit, add or remove rows and columns with buttons, set alignment per column from a dropdown, and copy the GitHub-flavoured Markdown when you're done. You can also paste an existing Markdown table to load it back into the grid for further editing.
When to use it
- Authoring a comparison table for a README, GitHub issue, or pull request description.
- Re-editing a table from an existing document — paste the Markdown, tweak in the grid, copy back out.
- Producing a properly-aligned ASCII-padded table that's readable as plain text and as rendered Markdown.
- Drafting a release notes or changelog table without fighting the pipe-and-dash syntax.
- Creating a data table for a status page or internal documentation that needs both source readability and rendered clarity.
- Converting or restructuring tabular content when the source format is already Markdown.
How it works
- Click to edit: Click any cell in the grid to type or paste content. Press Tab to move to the next cell, Shift+Tab to go back.
- Manage structure: Use the buttons above the table to add rows at the end or insert/delete specific rows and columns. The first row is always the header and cannot be deleted.
- Set alignment: Use the dropdown above each column to choose left, center, or right alignment. This controls the colons in the separator row of the output.
- Copy the output: The rendered Markdown table appears below the grid. Select and copy it, or use the copy button to send it to your clipboard.
- Import existing tables: Paste a Markdown table (with the
|---|separator row) into the import textarea at the bottom. It'll parse and load into the grid for editing.
Common gotchas
- Literal pipe characters break cells. A bare
|inside a cell ends that cell in GFM. Escape it as\|if you need a literal pipe in the output. - Cell content is single-line only. Markdown tables don't support line breaks inside cells without resorting to HTML
<br>tags or switching to HTML tables entirely. - Alignment in source vs. rendered output. The editor pads the output for readability in plain text, but the actual alignment rendered depends on the colons in the separator row, not the spacing.
- The first row is always a header. GitHub-flavoured Markdown requires a header row; there's no way to omit it. If your data has no natural header, use blank cells in row 1.
- Markdown flavour variants. This tool targets GFM (GitHub, GitLab, most modern renderers). Some other flavours (CommonMark, MultiMarkdown) have stricter or different table syntax rules.
- CSV import doesn't work directly. The import textarea expects a Markdown table with a separator row. For CSV data, convert it to Markdown first using a CSV-to-Markdown tool or hand-format it.
Output format
The Markdown output is GitHub-flavoured and right-padded for readability in plain text editors. Each column width matches the widest cell content in that column plus padding. Alignment is set via colons in the separator row: left-align uses |---|, centre uses |:-:|, and right uses |-:|. The output is safe to paste directly into GitHub issues, pull requests, GitLab wikis, and most modern Markdown renderers.