Format and indent JSON, YAML, or CSV.
Format options
⌘/Ctrl ↵
Saved format settings
Checking cloud presets…
Formatted output
Formatted data appears here.
How to format and validate JSON, YAML, and CSV
Data Formatter re-indents and validates a JSON, YAML, or CSV payload and tells you exactly where it breaks when it is malformed. Parsing happens in your browser tab, so a config file, an API response, or an export full of customer rows never leaves the device. When the data is valid you can copy it, download it, or hand it straight to Text Diff or Snippet Studio.
Format a payload in four steps
- Pick the format and paste the dataChoose JSON, YAML, or CSV, then paste into the input. Load example fills the input with a small valid sample for the format you selected, so you can see the output shape before pasting anything sensitive.
- Set the formatting optionsChoose the indent width, and for JSON optionally sort object keys alphabetically or preserve integer lexemes that would lose precision as JavaScript numbers. CSV adds a strict or lenient parsing mode.
- Format and read the verdictPress Format data. Valid input produces a formatted result with a valid badge; broken input reports why it failed instead of silently returning the text unchanged. Lenient CSV can recover and then lists each row and column it had to repair.
- Take the result somewhereCopy the output or download it as a .json, .yml, or .csv file. Compare changes opens the result in Text Diff and Create code card opens it in Snippet Studio.
What people use Data Formatter for
- Find the syntax error in a config filePaste a YAML or JSON file that a tool rejected and let the parser point at the failure instead of reading the file line by line.
- Make a minified API response readableRe-indent a single-line JSON body and sort its keys so you can scan the fields, and diff it against a previous response.
- Check a CSV export before importing itRun a spreadsheet export through lenient mode to see exactly which rows have ragged columns or stray quotes before another system rejects the file.
Data Formatter questions
- Is my data uploaded when I format it?
- No. Parsing and formatting run in your browser tab. Input, output, filenames, and clipboard content are not uploaded. The formatter does not save run history; download the result before reloading or closing the page. Sending a result to another tool temporarily stores that handoff in this browser.
- Can it convert JSON to CSV or YAML?
- No. Each format is parsed and re-emitted in the same format. Data Formatter reshapes the layout and validates the syntax; it does not translate between JSON, YAML, and CSV.
- Why do my large ID numbers change?
- Because JavaScript numbers lose precision beyond 2^53. Turn on the option that preserves unsafe integer lexemes and the original digits are written back out exactly as you pasted them.
- What is the difference between strict and lenient CSV?
- Strict fails on the first structural problem. Lenient repairs what it can, marks the result as recovered, and lists the row and column of every repair so you can decide whether the fix is acceptable.
- Why does it say the output is stale?
- Because the input or an option changed after the last run. Format again before copying, downloading, or handing off, so you never move a result that no longer matches its input.
- Will my input and results be here after a reload?
- The formatter has no saved-run history. Download or copy any result you need before reloading. Account presets store formatting options only, not your source or results.