Paste or upload any JSON — auto-detected, syntax-highlighted, and charted in seconds.
// Viewer will show formatted JSON here…
No JSON to display yet.
JSON to Chart is a free browser-based tool that converts raw JSON data into interactive, publication-quality charts with zero setup. Paste your JSON directly or upload a .json file and the tool auto-detects the data structure, renders a syntax-highlighted viewer, and builds a chart — all in real time.
The tool supports 8 chart types: Bar, Horizontal Bar, Line, Area, Pie, Donut, Radar, and Scatter. It recognizes five common JSON formats out of the box, from plain key-value objects to arrays of multi-series records. The JSON viewer is fully resizable with a drag handle and can be expanded to full-screen for inspecting large payloads.
Everything runs entirely in your browser — no data is sent to any server. Charts can be exported as PNG, JPEG, SVG, or PDF.
{"x","y"} pairs) auto-switch to Scatter.When JSON is parsed, the tool runs a 5-step detection cascade to figure out how to map your data onto chart axes:
| # | Format | Example |
|---|---|---|
| 1 | Chart.js native | {"labels":[…],"datasets":[{"label":"…","data":[…]}]} |
| 2 | Key-value object | {"Jan":120,"Feb":195,"Mar":160} |
| 3 | Number array | [120,195,160,210] |
| 4 | Scatter pairs | [{"x":1.2,"y":3.4},{"x":2.1,"y":4.8}] |
| 5 | Array of objects | [{"month":"Jan","sales":120,"costs":80}] — label key auto-detected, numeric columns become series |
For format 5, the label key is chosen by matching against a priority list of common column names (name, month, label, category, etc.). All remaining numeric columns become separate chart series — so a single JSON array can produce a multi-series bar or line chart with no configuration.
Let us know what's wrong with JSON to Chart.
Thank you — report received!