Data & CSV

JSON observed-shape summary

Inspect path types and occurrence counts across a nested JSON document.

JSON observed-shape summary
Esc to restore

Your inputs

UTF-8 JSON up to 2 MB, 50,000 values and 64 levels. Duplicate object member names are rejected; numeric tokens are preserved.

UTF-8 JSON, NDJSON or GeoJSON up to 2 MB. Files stay on this device.

Results update as you type. Larger files run when you press Update result.

Your result

LOCAL & PRIVATE

Your result will appear here.

Your inputs stay in this browser. Nothing is uploaded or saved.

A clear answer. Here’s how.

Aggregates observed value types and counts by path, replacing concrete array indices with *. Object keys retain JSON Pointer escaping. A literal object key * shares that displayed wildcard spelling and is not a unique schema address. This is a descriptive inventory of the supplied values, not JSON Schema validation, required-field inference or proof that future records share the same shape.

See a worked example

Worked example

A fixed demonstration, separate from the values you enter above.

JSON document
{"name":"Ada","items":[{"id":9007199254740993,"active":true},{"id":2,"active":false}],"settings":{"theme":"blue"}}

Example result

First 5 rows of the example result
Shape path (* = any array index)Observed typesValue occurrences
object1
/namestring1
/itemsarray1
/items/*object2
/items/*/idnumber2

This is an observed shape summary, not an inferred or complete JSON Schema. A literal object key * shares the displayed wildcard spelling.