ToolFeather
Developer / SEORuns in your browser

JSON to Markdown table Converter

Turn a JSON array into a GitHub-flavored Markdown table for docs, issues and READMEs — keys become columns, nested objects become dotted columns, and cells are escaped safely.

Quick presets

JSON to Markdown table Converter

JSON
Markdown table

Table preview –

Runs in your browser — nothing you enter is uploaded or stored.

ToolFeather · JSON → Markdown
Scratchpad auto-saved
Stored in this browser (localStorage)
Step-by-step~40s read

How it works — in four simple steps

No signup and nothing to install — it all runs in your browser.

1

Add your JSON

Paste it into the left box, press Open file, or drag a .json file onto it. Sample loads a realistic example.

2

Set the options

Adjust the options above the boxes — the output updates instantly as you change them.

3

Check the result

Read the status line: it reports rows, keys and any value that couldn't be represented in Markdown table.

4

Copy or download

Copy the Markdown table or download it as a .md file. Nothing was uploaded at any point.

Pro tip

Untick Flatten nested keys if you'd rather keep each nested object in a single column.

Features

Nested data flattened

Nested objects become dotted columns (address.city), and arrays of plain values are joined so every row fits the grid.

Column alignment

Numbers right-aligned automatically, or force left, centre or none in the delimiter row.

Readable or compact

Padded columns that line up in a code editor, or compact output for the smallest diff.

Private by design

Parsing and conversion run in your browser with JavaScript — your data is never uploaded, logged or stored.

About the JSON to Markdown table Converter

Documenting an API, writing up test results or pasting query output into a pull request is easier with a table. This converter takes a JSON array (or the first array of objects inside your JSON), uses the union of keys as columns in first-seen order, and writes one Markdown row per object.

Nested objects become dotted columns such as limits.rpm, and arrays of plain values are joined with semicolons so each record fits on one row. Values are escaped for Markdown tables — | becomes \| and line breaks become <br>. Columns are padded so the raw Markdown lines up, and numeric columns are right-aligned automatically.

Because the output is plain GFM, it renders on GitHub, GitLab, Bitbucket, Gitea, MkDocs, Docusaurus, Hugo and Obsidian without plugins.

Examples

An API pricing table kept as JSON, with nested limits and a feature list — exactly what a docs page needs as a table.

JSON input
[
  { "plan": "Free", "price_usd": 0, "limits": { "rpm": 60, "storage_gb": 1 }, "features": ["API", "Email support"] },
  { "plan": "Pro", "price_usd": 19, "limits": { "rpm": 600, "storage_gb": 50 }, "features": ["API", "Webhooks", "Priority support"] },
  { "plan": "Team", "price_usd": 49, "limits": { "rpm": 3000, "storage_gb": 500 }, "features": ["API", "Webhooks", "SSO"] }
]
Markdown table output
| plan | price_usd | limits.rpm | limits.storage_gb | features                        |
| :--- | --------: | ---------: | ----------------: | :------------------------------ |
| Free |         0 |         60 |                 1 | API; Email support              |
| Pro  |        19 |        600 |                50 | API; Webhooks; Priority support |
| Team |        49 |       3000 |               500 | API; Webhooks; SSO              |

This output was produced by the converter on this page with the default options — load it with the “API plans” preset above and change any option to see the effect.

How JSON maps to Markdown table

In JSONBecomes in Markdown table
Array of objectsone table row per object
Keys (union)header cells
{"limits": {"rpm": 60}}column limits.rpm
["a", "b"]a; b
null / missingempty cell
truetrue

Things that trip people up

JSON vs Markdown table at a glance

PropertyJSONMarkdown table
SpecificationRFC 8259 (2017) · ECMA-404GitHub Flavored Markdown 0.29-gfm
File extension.json.md
Media typeapplication/jsontext/markdown (RFC 7763)
Data typesstring, number, boolean, null, object, arraytext (inline Markdown allowed)
CommentsNoHTML comments
NestingUnlimitedNone

Frequently asked questions

5 answers
How do I convert JSON to a Markdown table?
Paste a JSON array of objects; each object becomes a row and each key a column. Copy the result into your Markdown file.
What if my JSON is an object, not an array?
The first array of objects inside it is used (the status line says which). An object with no arrays becomes a one-row table.
Are nested values supported?
Yes — nested objects are flattened into dotted columns, and arrays of plain values are joined with semicolons.
Will the table render on GitHub?
Yes. It's GitHub Flavored Markdown with a delimiter row and escaped pipes, which GitHub, GitLab and most docs tools render.
Is my data uploaded anywhere?
No. The JSON is parsed and converted by JavaScript in your browser tab; nothing is sent to a server, so it is safe for internal exports, customer lists and configuration files with secrets.