πŸ”’ All processing is done locally in your browser. No data is sent to any server.

Markdown Table Generator

Spreadsheet-style editor β€” generate Markdown & HTML tables instantly

CSV Import

MARKDOWN TABLE

HTML TABLE

Advertisement

What is Markdown Table Generator?

Markdown Table Generator creates properly formatted Markdown tables with editable cells. Click and type to fill in rows and columns, use Tab to move between cells, and the generator outputs valid GFM (GitHub Flavored Markdown) table syntax β€” with column alignment options (left, center, right). It also imports from CSV and exports to CSV for data interchange.

Markdown table syntax uses pipes (|) to separate columns and hyphens for the header separator row. Column alignment: default is left (---|), center-aligned (:---:), right-aligned (---:). Tables must have a header row. While standard Markdown doesn't define table syntax, GitHub Flavored Markdown (GFM) tables are supported on GitHub, GitLab, Bitbucket, Obsidian, Notion, Jira, Confluence, many static site generators, and most modern Markdown renderers.

Markdown tables have limitations: no cell merging, no nested tables, no multi-line cell content (workaround: use
HTML tags in GFM), and complex data is better represented in a code block as JSON or CSV. For documentation with complex tables, consider HTML

directly in Markdown (most parsers allow inline HTML). For data-heavy content, consider an embedded code block with structured data and linking to a separate data file.

How to Use

  1. Click cells to edit β€” press Tab to move to the next cell.
  2. Click the '+' button at the bottom to add a new row, or at the right to add a column.
  3. Right-click a column header to set alignment: left, center, or right.
  4. Paste CSV data using Ctrl+V to import data from a spreadsheet.
  5. Click 'Copy Markdown' to copy the formatted table syntax.

Examples

Create comparison table

Result: Feature | Tool A | Tool B with checkmarks β†’ | Feature | Tool A | Tool B |\n|---|---|---|\n| Speed | βœ“ | βœ— |

Import from CSV

Result: Paste CSV with commas and quotes β†’ auto-detected and imported as table

Right-aligned numbers

Result: Set 'Price' column to right-aligned β†’ | Price |\n| ---: |\n| $12.99 |

Frequently Asked Questions

What Markdown parsers support tables?

GFM (GitHub Flavored Markdown) tables are supported by: GitHub, GitLab, Bitbucket, Obsidian, Notion (partially), Jira, Confluence, VS Code preview, Typora, iA Writer, Bear, and most static site generators (Jekyll, Hugo with Goldmark, Docusaurus, Gatsby with gatsby-transformer-remark). Not supported in: standard Markdown (daringfireball.net/projects/markdown), some strict parsers, and email clients. Use HTML

as fallback for unsupported environments.

How do I create a table in Obsidian?

Type a pipe character (|) to start a table β€” Obsidian's editor will auto-complete the table structure as you press Tab. Or use the Advanced Tables plugin for a spreadsheet-like editing experience. In source mode: type the table manually following GFM syntax. In Obsidian, tables support |$\LaTeX$| for math in cells (requires Math plugin) and internal links ([[Page Name]]).

Can Markdown tables have multi-line cell content?

In strict GFM, each row must be on one line β€” you can't break a cell onto multiple lines with a newline. Workaround: use the HTML
tag: | Cell with
line break | β€” most GFM renderers process HTML tags inside tables. For paragraphs in cells, you need to use an HTML

directly in Markdown. Multi-line cell content is available in extended formats like Pandoc Markdown, which has a different, more powerful table syntax.

What is the maximum table size for Markdown?

There's no technical limit β€” but very wide or tall tables become unreadable. Practical limits: (1) Width: GitHub and most renderers wrap tables that exceed viewport width with horizontal scroll. Keep important columns left (visible before scrolling). (2) Height: very long tables (100+ rows) are better served as a linked file or a code block containing CSV/JSON data. For tables over 20 columns, consider restructuring the data or splitting into multiple smaller tables.

How do I sort a Markdown table?

There's no native Markdown syntax for sorting tables. In VS Code, the Table Editor extension has sort functionality. In Obsidian, the Advanced Tables plugin supports column sorting. Or: export to CSV, sort in a spreadsheet, re-import. Command line: convert to CSV with a script, sort with the Unix sort command or Python pandas, convert back to Markdown. For GitHub-rendered tables, the table is static β€” readers must sort manually by copying to a spreadsheet.

Related Tools