Flatten nested object
Input: {"user":{"name":"Alice","address":{"city":"Paris","zip":"75001"}}}
Output: { "user.name": "Alice", "user.address.city": "Paris", "user.address.zip": "75001" }
500+ fast, free tools. Most run in your browser only; Image & PDF tools upload files to the backend when you run them.
Toggle between nested JSON objects and dot-notation flat objects. Custom delimiter, array index handling, browser-only.
JSON Flatten / Unflatten is a bidirectional converter between two representations of the same data: a nested JSON object, and a flat object whose keys encode the path to each leaf value using dot notation. Flattening turns {user: {address: {city: 'Paris'}}} into {"user.address.city": "Paris"} — useful for feature flag stores, environment variable templates, or i18n translation tables that only accept key-value maps. Unflattening reverses the process for reading dot-notation config back into application objects. The tool supports custom delimiters (for keys that contain dots), two strategies for array indexes ([n] bracket notation or n delimiter), and quoted segments for keys that contain the delimiter character. All processing runs in your browser, so secret config values stay local.
Input: {"user":{"name":"Alice","address":{"city":"Paris","zip":"75001"}}}
Output: { "user.name": "Alice", "user.address.city": "Paris", "user.address.zip": "75001" }
Input: {"items":[{"id":1,"qty":2},{"id":2,"qty":5}]}
Output: { "items[0].id": 1, "items[0].qty": 2, "items[1].id": 2, "items[1].qty": 5 }
Input: {"user.name":"Alice","user.age":30}
Output: { "user": { "name": "Alice", "age": 30 } }