Markdown table formatter
Paste a Markdown table — or a whole README: every table is re-padded in place and other text is left alone. Alignment markers (:---, :---:, ---:), escaped pipes (\|) and `code` are kept; missing outer pipes and short rows are fixed. Text with pipes or tabs but no --- row becomes a table with the first line as header. Nothing is uploaded — formatting runs in this page.
Frequently asked questions
What does the formatter change?
Only whitespace and table syntax: cells are trimmed and padded to the widest cell in each column, outer pipes are added, short rows get empty cells and the delimiter row is redrawn to match. Cell text is not changed, except that a bare pipe inside inline code is escaped as \| so it can't split the cell.
Can I change column alignment?
Yes. Keep the table's own markers, or set every column to left, center, right or no alignment. Cells are padded to match, so the raw Markdown reads the same way it renders.
What is compact mode?
Compact output drops the padding (| a | b |) — smaller diffs and fewer characters, and it renders exactly the same.
Are Chinese, Japanese, Korean characters and emoji aligned?
Mostly. Wide characters and common emoji are counted as two columns, which matches most monospace editors; some emoji sequences or fonts may still be off by a column.
Is my text sent to a server?
No. The page has no analytics and makes no network requests with your input.