Favorite places of your favorite city
Home
Add to preferred sources on Google

Markdown Table Generator

Build a GitHub Flavored Markdown table from a small grid or pasted tab-separated text. Cells are literal single-line text, so Markdown and HTML syntax stays text instead of becoming rich formatting.

Table editor

Body row 1
Body row 2

Rows 1–2 of 2 · page 1 / 1

Import TSV

Markdown and preview

Enter text to generate a table.

Markdown to HTML

Local table editing without saved history

The tool adds no upload, automatic clipboard read, saved table, input-bearing link or telemetry containing your cells. Existing site services and extensions are outside a universal privacy promise. Copy is explicit, and reload or a new document starts an empty grid.

Build and copy a table

  1. Enter headings and body cells. Add, remove or move rows and columns, and choose each column's alignment. The editor shows ten body rows per page; the generated table includes them all.
  2. For tab-separated data, open Import TSV, paste into its draft field and choose whether the first record is the header. Replace table applies a complete valid import; editing the draft alone leaves the current table unchanged.
  3. Check Generated Markdown and the literal-text preview, then use Copy Markdown. Invalid or composing grid data withholds output. Clear table returns to the empty starting grid.

Literal cells and GFM structure

The output has one header row, a delimiter row and zero or more body rows. Default, left, center and right alignment use the delimiter entries ---, :---, :---: and ---:. The header is not counted as a body row.

Every original ASCII space and punctuation character becomes a decimal character reference. The stated admitted Unicode whitespace and BOM are encoded too, preventing boundary trimming. For example, a|b becomes a|b. This keeps pipes, emphasis, code, links, HTML and reference-looking input as literal cell text under the specified GFM rules.

The importer uses a stated quoted TSV grammar. Tabs separate fields and CR, LF or CRLF separates records outside quotes. A doubled quote inside a quoted field becomes one quote. Quoted tabs or line breaks are still rejected because cells must be single-line.

Generated source has outer pipes, no display-width padding and one final line feed. Character references make it longer. Use a blank line before the table when embedding it in a document; the copied text does not add a leading blank line.

Structure and import examples

With Key, Label and Qty headings, the cells a|b, <tag> and 2 remain three separate literal cells. A second row can contain an empty cell, literal backticks around u and the string 0; zero is not treated as missing data.

Moving Qty before Key moves every value and its right alignment together. Moving a body row changes only body order. Pagination changes which rows are editable on screen, while Copy always includes the complete table.

Importing ID and Value followed by 001 and =2+3 preserves those strings. A short or long record is a ragged-table error, so replacement never pads missing cells or discards an extra value.

Fidelity and size limits

This is a literal-text generator, not inline Markdown or HTML authoring. GFM pipe-table support is required; other renderers may differ. Ordinary HTML and CSS can collapse the visual width of spaces even when cell text content is retained.

The grid allows one to eight columns, zero to fifty body rows, up to 200 UTF-16 units per cell and 50,000 across cells. These are not byte or visible-character counts. Unsupported controls, line breaks and lone surrogates are invalid.

The TSV importer removes one leading BOM and ignores exactly one final record separator. Other empty records and trailing empty fields remain data. It requires a rectangular table and does not promise compatibility with every spreadsheet clipboard format.

The local preview uses plain text cells and selected alignment. It is a reading aid, not a certificate from the destination renderer. There is no rich formatting, merged cells, formula evaluation, CSV or Excel file import, saved history or share link.

Local table editing without saved history

The tool adds no upload, automatic clipboard read, saved table, input-bearing link or telemetry containing your cells. Existing site services and extensions are outside a universal privacy promise. Copy is explicit, and reload or a new document starts an empty grid.

Markdown table questions

No. Cells are literal text. Syntax such as **bold**, links, backticks and HTML is encoded so it remains text in the specified GFM table. The generated source is longer because it uses character references.

Text is not trimmed, normalized or converted to numbers. ASCII spaces are encoded to retain them as cell text, but destination rendering may collapse their visual width. Unicode is preserved when it is well-formed and passes the stated control and size limits.

Yes. A header row always exists, but its cells may be empty; zero body rows and explicit empty body rows are allowed. A completely empty grid shows instructions instead of copyable source until at least one cell contains data.

No. Import TSV has a separate draft and an explicit Replace table action. A valid import replaces the complete grid; errors preserve it. Pasting into an individual cell edits only that cell.

A quote must begin a quoted field, and two quotes inside it represent one quote. Only a separator or the end of input may follow its closing quote. Quoted tabs or line breaks are rejected by the single-line cell rule; this is a defined subset rather than universal spreadsheet import.

Yes. The editor shows ten body rows at a time, but generated source and the preview use the entire current valid table. The dimension summary counts body rows separately from the header.

Decimal references keep cell punctuation literal instead of making it table structure or inline formatting. Structural pipes are generated separately. One final line feed is the canonical output, with no surrounding fence or extra explanation.

The tool adds no upload, saved history or input-bearing URL, and does not read the clipboard automatically. A mounted language change retains the current table, while reload or a new document starts empty. Existing site services and extensions remain outside this limited behavior claim.

Sources

Reviewed 13 November 2026 for GFM table structure and literal text encoding. The TSV grammar is specific to this tool.

JSON to YAML

Convert JSON to YAML locally while preserving number text and quoted strings; copy or download the complete result.

Open tool — JSON to YAML

YAML to JSON

Convert one YAML document locally to JSON with exact number text and bounded aliases, then copy or download the complete result.

Open tool — YAML to JSON

HTML to Markdown

Convert pasted or local HTML into Markdown, review conversion notes, and copy or download the result.

Open tool — HTML to Markdown

JavaScript Regex Tester

Test a JavaScript pattern locally and inspect matches, captures, and UTF-16 positions.

Open tool — JavaScript Regex Tester

Markdown to HTML

Convert a Markdown draft to an HTML fragment, inspect the source and inert preview, then copy or download it.

Open tool — Markdown to HTML

Text Sorter

Sort lines alphabetically by a chosen language or by Unicode code point, keeping duplicates, blank rows and complete line contents.

Open tool — Text Sorter

Remove Duplicate Lines

Keep the first copy of each exact text line, preserving order, significant spaces and blank rows, then copy or download the result.

Open tool — Remove Duplicate Lines

Text Diff Checker

Compare two drafts locally, with exact whole-line changes, visible whitespace rules and clear final-newline handling.

Open tool — Text Diff Checker

Case Converter

Convert text to uppercase, lowercase, capitalized words or sentence case with explicit letter rules.

Open tool — Case Converter

HTML Entity Encoder/Decoder

Encode or decode literal HTML references with explicit context, Unicode options and LF output, without parsing or rendering markup.

Open tool — HTML Entity Encoder/Decoder

Query String Parser & Builder

Edit ordered URL parameters, retain repeated names and copy a normalized query or HTTP(S) URL.

Open tool — Query String Parser & Builder

URL Encoder & Decoder

Convert a UTF-8 URL component or form value with explicit space and plus rules, then copy or download the result.

Open tool — URL Encoder & Decoder

Base64 Encoder & Decoder

Encode UTF-8 text as standard or URL-safe Base64, or decode either format with clear errors and complete text output.

Open tool — Base64 Encoder & Decoder

XML Formatter

Check namespace-aware XML 1.0, format or compact locally, and copy or download UTF-8 output.

Open tool — XML Formatter

JSON Formatter & Validator

Check JSON syntax, format or minify locally, and copy or download output while preserving original data tokens.

Open tool — JSON Formatter & Validator

SMS Character Counter & Segment Calculator

See how your message is encoded, where its segments end and what it may cost. Your text stays in your browser.

Open tool — SMS Character Counter & Segment Calculator

Social Media Character Counter

Check platform-specific limits and split posts without losing text.

Open tool — Social Media Character Counter

Character Counter

Count characters, words, sentences and paragraphs. Check word density, reading time and UTF-8 size, all in your browser.

Open tool — Character Counter

Text Size Calculator

Compare text encodings and payload sizes in your browser.

Open tool — Text Size Calculator

PDF Text Cleaner

Fix line breaks and spacing in text copied from a PDF. Preserve your original and review ambiguous hyphens before copying the cleaned text.

Open tool — PDF Text Cleaner

Fancy Text Converter

Convert supported fancy Unicode letters to normal text locally. Keep case, accents, emoji and your original text.

Open tool — Fancy Text Converter

Garbled Text Fixer

Fix garbled text and repair broken accents with a browser-based mojibake fixer. Review each possible UTF-8 reversal before applying it.

Open tool — Garbled Text Fixer

Gmail Clipping Checker

Measure email HTML bytes in UTF-8, compare them with an advisory 102,000-byte Gmail reference, and inspect size contributors locally.

Open tool — Gmail Clipping Checker
View all tools in this category