# JSON to Markdown

> Paste JSON and get readable Markdown: arrays of objects become tables, nested objects become nested lists. Invalid JSON is flagged with its line and column.

Use it free at https://swipetolaunch.com/tools/json-to-markdown

## How to use it

1. **Paste JSON.** An API response, a config file or an export from any tool.
2. **Fix any errors.** If it is not valid JSON, you get the line, the column and what went wrong.
3. **Copy the Markdown.** Tables for lists of records, nested bullet lists for everything else.

## Make JSON readable for people

JSON is built for machines. When you need to show an API response in a README, paste data into a doc for a teammate, or give structured data to an AI assistant in a form it reads well, Markdown is easier on everyone.

## How the conversion works

- **Arrays of objects** become a table. Columns are the union of every object's keys, in the order they first appear, so records with missing fields still line up.
- **Nested objects** become nested bullet lists with the key in bold.
- **Short arrays of plain values** are joined inline: `tags: a, b, c`.
- **Top-level keys** that hold objects or arrays become headings, so a large document gets a navigable outline. Turn this off for one continuous list.
- **Cells that hold nested data** show it as compact inline JSON rather than losing it.

## Validating JSON

The converter checks the input with its own scanner before parsing, so the error position is the same in every browser. Common problems it names:

1. **Trailing commas** after the last item, allowed in JavaScript but not in JSON.
2. **Single quotes** around strings or keys. JSON needs double quotes.
3. **Unquoted keys** like `{name: "x"}`.
4. **Raw line breaks or tabs inside strings**. They must be written as `\n` and `\t`.
5. **Leading zeros** in numbers such as `007`.

## Related converters

For spreadsheet data use [CSV to Markdown](/tools/csv-to-markdown). For structured data in your pages, the [schema markup generator](/tools/schema-markup-generator) writes JSON-LD that search engines read.

## What you get

- Arrays of objects become Markdown tables
- Nested objects become nested lists
- JSON validation with line, column and a plain reason
- Top-level keys as headings, optional
- Runs in your browser; data is never uploaded

## Questions

### How do I convert a JSON array to a Markdown table?

Paste the array. If every item is an object, the keys become column headers and each object becomes a row. Missing keys leave the cell empty.

### Why is my JSON invalid?

The usual causes are a trailing comma after the last item, single quotes instead of double quotes, unquoted property names, or a raw line break inside a string. The error message points to the exact line and column.

### Is there a size limit?

No fixed limit. Conversion happens in your browser, so a few megabytes is fine on most devices; very large files may be slow on a phone.

### Is my JSON sent to a server?

No. Parsing and conversion run locally in JavaScript, so it is safe to paste API responses that contain private data.
