Skip to content

Markdown Table Generator

Paste tab-separated data copied straight from Excel or Google Sheets, or comma-separated text, and get a real Markdown table back — column-padded and pipe-aligned like a hand-formatted one, with optional per-column alignment.

  • Paste directly from Excel or Google Sheets
  • Auto-detects tab or comma delimiter
  • Column-padded, pipe-aligned output
  • Per-column left/center/right alignment
  • Runs fully client-side

Generator

Converted locally, nothing uploaded

Markdown

How to generate a Markdown table

  1. 01

    Copy from a spreadsheet, or prepare CSV

    Select and copy cells from Excel or Google Sheets, or use plain comma-separated text.

  2. 02

    Paste it in

    The delimiter is auto-detected — tab if the copied cells include one, comma otherwise.

  3. 03

    Set alignment if needed

    Choose left, center or right for any column; the separator row encodes it with colons.

  4. 04

    Copy the Markdown

    Copy the finished table into a README, wiki page or any Markdown-rendering editor.

Why the columns are padded, not just piped#

A Markdown table renders identically whether the source is padded neatly or crammed with no extra spaces — |a|b| and | a | b | produce the same table in any renderer. The padding exists entirely for the person reading the raw Markdown source before it renders: a column-aligned table in a .md file is legible on its own, in a diff, or in a terminal, while an unpadded one is a wall of pipes. This tool pads every column to the width of its longest cell, the same convention most hand-formatted Markdown tables follow.

How the delimiter is detected#

Selecting cells in Excel or Google Sheets and copying them puts tab-separated data on the clipboard — pasting that directly here is detected automatically, since the first line will contain a tab character. Plain comma-separated text, with no tabs, is parsed as CSV instead. There is no manual delimiter switch to set; the tool reads the first line and picks accordingly.

What the colons in the separator row actually do#

The line of dashes under the header row is what makes a Markdown table a table rather than plain text — GitHub-flavored Markdown additionally reads a colon on either end of that dash run as an alignment hint: :--- for left, :---: for center, ---: for right. Plain --- with no colon defaults to left-aligned in every renderer that supports table alignment at all. This tool writes the correct colon placement automatically based on the alignment chosen per column.

Frequently asked questions

Can I paste data copied directly from Excel or Google Sheets?

Yes — copying cells from either puts tab-separated data on the clipboard, which this tool detects automatically and parses correctly, no manual delimiter selection needed.

Why is the output padded with extra spaces instead of compact?

Padding does not change how the table renders — it exists so the raw Markdown source is readable on its own, in a diff, or in a plain-text editor, matching the convention most hand-formatted Markdown tables follow.

How does column alignment work in Markdown tables?

A colon on either side of the dashes in the separator row signals alignment: :--- for left, :---: for center, ---: for right. Plain dashes with no colon default to left-aligned.

What happens if my rows have a different number of columns than the header?

It is flagged as an error rather than silently producing a malformed table — every row needs the same number of columns as the header row.

Is my data uploaded anywhere?

No. Parsing and table generation happen entirely in your browser — nothing is sent to a server.

Developers

UUID Generator

Generate cryptographically random UUID v4 or time-ordered UUID v7, in bulk.

Developers

Base64 Encoder & Decoder

Encode and decode Base64 with correct UTF-8 handling, including the URL-safe alphabet.

Developers

ULID Generator

Generate ULIDs — sortable by creation time like UUID v7, but Crockford Base32 instead of hex.