RunLocalTools

Explain JSON — Plain-English JSON Structure Breakdown (Free)

Paste JSON and get a plain-English explanation of its structure — field types, array shapes, detected patterns like dates and UUIDs, and a draft JSON Schema. Free, runs in your browser.

What it does

Paste any JSON and this tool explains what it actually contains — in plain English, not just a syntax-highlighted dump. It tells you whether the root is an object or a list, how deep the nesting goes, which fields are present on every item in an array versus only some of them, and flags values that look like dates, emails, URLs, UUIDs, hex colors, or Unix timestamps. A collapsible tree sits alongside the explanation so you can drill into any part of the structure directly.

How it works

The tool walks the parsed JSON recursively, recording the type of every value it finds. For arrays, it doesn’t just report “array of objects” — it computes the union of keys across every item, flags which keys are missing from some items (marking them optional), and calls out when items in the same array genuinely have different shapes, rather than assuming uniformity. Pattern detection is a set of targeted regular expressions (ISO 8601 date/time, email address, http(s):// URL, UUID, hex color, and plausible-range Unix epoch seconds/milliseconds) — it’s a heuristic that flags what a value looks like, not a guarantee about what the field actually means. From the same analysis, the tool can generate a draft JSON Schema you can copy and refine.

How to use it

  1. Paste your JSON into the input box, or drop in a .json file.
  2. Read the plain-English summary at the top, then check the stats panel for size, depth, and key counts.
  3. Expand or collapse branches in the tree view to explore specific fields — each leaf shows its type and any detected pattern.
  4. Use Copy explanation to grab a Markdown summary for documentation, or Copy as JSON Schema to get a starting-point schema for validation.

FAQ

Does this tell me if my JSON is valid? Yes — if the JSON fails to parse, you’ll get a clear error pointing at the problem rather than a blank explanation. For formatting and fixing malformed JSON specifically, use JSON Formatter.

How does it decide a field is “optional”? For an array of objects, a key is marked optional if it’s missing from at least one item in the array — the explanation is built from what’s actually present, not from any external schema.

What counts as a “date-like” field? Any string matching the ISO 8601 pattern (2026-09-20 or 2026-09-20T14:30:00Z, with or without a timezone offset) is flagged as looking like a date. A plain integer in a plausible range for Unix epoch seconds or milliseconds is flagged too — but a number that happens to fall in that range for unrelated reasons will also get flagged, since the tool has no way to know your field’s actual meaning.

Can I generate TypeScript types instead of a JSON Schema? This tool focuses on plain-English explanation and a JSON Schema draft. For TypeScript interfaces specifically, use JSON to TypeScript.

Does it handle really large or deeply nested JSON? Yes, though extremely large pastes show a size warning rather than silently freezing the tab — very deep nesting is tracked accurately in the depth stat regardless of size.

Will it catch inconsistencies between two versions of the same JSON? Explain JSON describes one document at a time. To compare two JSON documents directly and see what changed between them, use JSON Diff.

If you’re working from a CSV export that you want to treat as JSON records, this tool also accepts a table handoff — send tabular data here from a compatible tool and it’ll be explained the same way.