More games at WuGames.ioSponsoredDiscover free browser games — play instantly, no download, no sign-up.Play

Markdown Table Generator

Convert CSV or Excel data to a GitHub Flavored Markdown table, or build one in a visual editor with column alignment, pipe escaping and live preview.

Import Import CSV / TSV
clearClearpastePaste
Size Table Size
Edit Table Editor
Click cells to edit. First row is the header.
Align Column Alignment
Set alignment for each column (affects rendering)
Options Format Options
Add extra spaces to align columns visually
No extra spaces, minimal file size

Markdown Table Generator - Visual Table Creator

A powerful Markdown table generator with visual spreadsheet-like editor. Create and format tables easily with column alignment, pretty formatting, and instant preview. Generate GitHub-compatible Markdown tables for README files, documentation, wikis, and blog posts.

What is the basic Markdown table syntax?

Markdown tables use pipe characters (|) to separate columns and at least three dashes (---) to define the header row. The CommonMark and GitHub Flavored Markdown (GFM) specifications agree on the structure: header row, separator row, data rows. Example: `| Name | Age |\n|---|---|\n| Alice | 30 |`. Leading and trailing pipes are optional but improve readability. Alignment is controlled by colons in the separator: `:---` left, `:---:` center, `---:` right. Note that vanilla CommonMark (RFC 7763) does not include tables; tables are an extension from GFM, available in most modern Markdown renderers like Pandoc, MkDocs, and Hugo.

How do I align columns left, right, or center?

Place colons in the separator row to set alignment per column. `:---` is left-aligned (default), `---:` is right-aligned (good for numbers), `:---:` is center-aligned (good for headings or symbols). Example: `| Item | Price |\n|:---|---:|\n| Apple | $1.50 |` produces a left-aligned Item column and right-aligned Price column. Note that some Markdown renderers ignore alignment hints when exporting to plain text or terminal output; they only take effect in HTML or PDF output. Test in your target renderer because GitHub, GitLab, and Bitbucket each render alignment slightly differently across mobile and desktop themes.

Can I include pipes (|) inside table cells?

Yes — escape pipes inside cell content with a backslash: `\|`. The CommonMark GFM spec section 4.10 requires this escape. Example: `| Regex | Description |\n|---|---|\n| \\| | Alternation |` displays a literal pipe in the first column. HTML entities (`&#124;`) also work in most renderers. For complex content with many special characters (regex patterns, code blocks containing pipes), consider switching to HTML `<table>` syntax instead — Markdown allows raw HTML inside its source, and HTML tables can contain any character without escaping. Many static-site generators auto-convert these for accessibility.

How do I add line breaks or paragraphs inside a table cell?

Markdown tables do not support multi-line cells natively because the row syntax is defined by newlines. Use the HTML `<br>` tag for line breaks within a cell: `| Item | Notes |\n|---|---|\n| Apple | Red<br>Sweet |`. For paragraphs, lists, or code blocks inside cells, fall back to raw HTML: `<td><p>First</p><p>Second</p></td>`. The Pandoc Markdown variant supports pipe tables with multi-line content via the `--from=markdown_strict+pipe_tables+multiline_tables` flag, but most tools (GitHub, Stack Overflow, Reddit) follow the stricter GFM and will collapse cell content to a single line.

Markdown Table Generator — Convert CSV or Excel data to a GitHub Flavored Markdown table, or build one in a visual editor with column alignment, pi
Markdown Table Generator

What's the difference between pipe tables and grid tables?

Pipe tables (the common syntax) use vertical bars and dashes. Grid tables (Pandoc, reStructuredText) use full ASCII art with `+` corners and `=`/`-` separator lines, allowing multi-line cells and varied widths. Example grid table:
```
+------+-------+
| Name | Value |
+======+=======+
| A | 1 |
+------+-------+
```
Grid tables are more powerful but only supported by Pandoc, asciidoctor, and some RST renderers — not GitHub or generic CommonMark. For maximum compatibility prefer pipe tables; for technical documentation with rich content, grid tables are excellent. The Pandoc manual's table chapter compares all four supported flavors in detail.

How do I convert CSV or Excel data to a Markdown table?

Use the Import CSV / TSV box at the top of this page: paste rows copied straight from Excel or Google Sheets, click Import Data, and the first row becomes the header. The delimiter (comma or tab) is auto-detected, quoted fields with embedded commas are handled, and pipes are escaped as `\|` automatically in the generated output. Pandoc can also convert with `pandoc input.csv -o output.md --to=markdown`. Programmatically: read the CSV with Python's `csv` module or pandas `df.to_markdown()` method (requires the `tabulate` package). For Excel, copy the range directly or save as CSV first. Either way, ensure each row has the same number of columns as the header or some renderers will silently truncate or warp the table.

Why does my table not render in some Markdown viewers?

Common causes: missing separator row (the line of dashes is required), inconsistent column counts between rows, no blank line before the table starts, or using a vanilla CommonMark renderer that doesn't enable the GFM tables extension. The CommonMark Spec section 4 lists tables as 'not part of the core spec' — implementations like markdown-it, Showdown, and Marked require an explicit extension or plugin. Also check that the file uses LF line endings (not CRLF Windows or CR Mac), because some parsers count carriage returns as part of the cell content. When in doubt, paste your source into the GitHub README preview as a reference renderer.

Are there accessibility considerations for Markdown tables?

Yes — well-formed HTML tables include `<caption>`, `<thead>`, and `<th scope="col">` for screen readers per WCAG 2.1 SC 1.3.1 and ARIA tables specification. Markdown tables generate basic `<table>`, `<thead>`, `<tbody>`, `<tr>`, `<td>`, and `<th>` but lack caption or scope attributes. For accessible documentation use raw HTML for complex tables: `<table><caption>Annual Sales</caption><thead><tr><th scope="col">Year</th></tr></thead>...</table>`. Avoid using tables for layout; use them only for tabular data with logical row-column relationships. Long tables benefit from row group headers (`<tbody>` with `<th scope="rowgroup">`) which Markdown cannot express.

Key Features

  • Visual spreadsheet-like editor
  • Click-to-edit cells
  • Dynamic table resizing (2-20 rows, 2-10 columns)
  • Column alignment (left, center, right)
  • Pretty formatting (aligned columns)
  • Compact formatting (minimal spaces)
  • HTML preview rendering
  • Header row highlighting
  • Preserve data when resizing
  • Clear all cells quickly
  • Copy to clipboard
  • Download as .md file
  • GitHub-compatible output
  • Real-time editing
  • No data sent to server
  • Works offline
  • Mobile-friendly
  • Dark mode support
  • 100% free
  • No registration required