# JSON formatter

> Format JSON with readable indentation.

[Open tool](https://www.toolcabana.com/pi/json-formatter) · [Developer and data](https://www.toolcabana.com/pi/category/developer-and-data)

Tool ID: json-formatter. Requested language: pi. Description language: en. Complete guide translation: no; untranslated sections use English.

## Overview (en)

JSON formatter takes strict JSON and returns the same data with readable line breaks and indentation. You can set 1 to 8 indent spaces or switch to tabs, sort object keys alphabetically, and end the output with a newline. Integers beyond the exact safe range are rejected instead of being silently rounded.

## Supported tasks (en)

Accepts strict JSON. Trailing commas, comments, single quotes and nonfinite numbers are invalid. Formatting preserves parsed values; duplicate keys follow JSON.parse semantics, so only their final value remains.

## Steps (en)

1. Type or paste your source, or load an example.
2. Change the basic settings or open Advanced mode to fine-tune the result.
3. Review and copy or download your result. Pause Live results to run manually. Sources or individual settings above 20,000 characters require an explicit run.

## Settings

- Indent spaces (en; key: indent; type: number); minimum: 1; maximum: 8
- Sort object keys alphabetically (en; key: sortKeys; type: checkbox)
- End with a newline (en; key: finalNewline; type: checkbox)
- Indentation style (en; key: indentStyle; type: select): Spaces [en], Tabs [en]

## Limitations (en)

Text operations generally accept up to 2,000,000 characters. Individual parsers, generators and formulas apply additional limits shown by their controls.

## Example input

```text
{"name":"ToolCabana","count":2}
```

## Privacy and connections (en)

This operation processes its source in your browser. Copy and download are explicit actions; source input is not saved in an account or history.

## Questions (en)

### Can I format JSON with tabs instead of spaces?

Yes. Open Advanced mode and set Indentation style to Tabs. With Spaces selected, the Indent spaces setting accepts any whole number from 1 to 8, and the default is 2.

### Does the JSON formatter accept trailing commas or comments?

No. It accepts strict JSON only, so trailing commas, comments, single quotes and nonfinite numbers produce an error that names the line and column where parsing failed.

### What happens to duplicate keys when I format JSON?

Duplicate keys follow standard JSON.parse behavior, so only the last value for a repeated key remains in the formatted output. Check the source if earlier values matter to you.

### Where is my input processed?

This operation processes its source in your browser. Copy and download are explicit actions; source input is not saved in an account or history.

### What are the input limits?

Text operations generally accept up to 2,000,000 characters. Individual parsers, generators and formulas apply additional limits shown by their controls.

## Related tools

- [JSON validator](https://www.toolcabana.com/pi/json-validator)
- [JSON minifier](https://www.toolcabana.com/pi/json-minifier)
- [JSON diff](https://www.toolcabana.com/pi/json-diff)
- [JSON to CSV](https://www.toolcabana.com/pi/json-to-csv)
