Markdown to JSON Converter
Convert a Markdown table into a JSON array of objects. Paste a GitHub-flavored Markdown table and get structured JSON, with optional automatic type detection.
Conversion Options
Recommended Settings
Pro Tips
- •The header row becomes the key names for every object in the resulting JSON array
- •The separator row (the line of dashes under the header) is detected automatically and skipped
- •With type inference on, 'true'/'false' become booleans, numeric text becomes numbers, and empty cells become null
- •Disable type inference to keep every value as a plain string, exactly as written in the table
- •Escaped pipes (\|) inside cell values are converted back to literal pipe characters
Most Popular
Most users keep type inference and pretty printing enabled for readable, well-typed JSON
When to Use This Tool
Extract structured data from README files, wikis, or specs written in Markdown, and turn it into JSON for use in code, tests, or APIs.
Write sample data as an easy-to-edit Markdown table, then convert it to JSON fixtures for unit tests or API mocks.
Convert configuration or reference tables maintained in Markdown docs into JSON that your application can load directly.
Migrate tabular content from static site generators or knowledge bases into JSON for import into a CMS, database, or new data pipeline.
How It Works
Split the Markdown input into lines and detect the separator row (the line of dashes under the header)
Parse the header row and every data row by splitting on unescaped pipe (|) characters
Unescape any \| sequences back into literal pipe characters within cell values
Map each data row's cells to the header's key names to build one JSON object per row
Optionally infer numbers, booleans, and null from the cell text, then stringify the array as JSON
100% Private
Files never leave your device. All processing happens locally in your browser.
Lightning Fast
Powered by Pure JavaScript for optimal performance on modern browsers.
Secure
No data collection, no tracking, no sign-up required.
Frequently Asked Questions
What Markdown table format does this tool expect?
Standard GitHub-flavored Markdown tables: a header row, a separator row of dashes (optionally with colons for alignment), and one or more data rows, all using pipe (|) characters to separate columns.
How does type inference work?
With type inference enabled, 'true'/'false' become JSON booleans, whole or decimal numbers become JSON numbers, 'null' and empty cells become JSON null, and everything else stays a string. Disable it to keep every value as the literal text from the table.
What happens to escaped pipe characters?
A backslash-escaped pipe (\|) inside a cell is converted back into a literal pipe character in the JSON output, since JSON strings don't need pipes escaped.
What if a row has fewer cells than the header?
Missing cells are treated as empty strings, which become null when type inference is enabled, or empty strings otherwise - keeping every object in the output array with the same set of keys.
Can I control the JSON formatting?
Yes. Enable 'Pretty print' for readable, 2-space indented JSON, or disable it to get compact, single-line JSON that's smaller to copy or store.