Create JSON online
About JSON Creator / Editor
Create JSON online without typing a brace, quote or comma. This JSON creator gives you a form: add a key, pick the type of value it holds, and nest objects and arrays with buttons. The output pane shows valid, pretty-printed JSON as you build. Copy it, or download it as a .json file.
Use it as a JSON builder for a feature-flag file, a request body, a test fixture, a config or a mock API response. It also helps if you are learning how JSON is structured. Already have JSON? Paste it into the JSON text tab or upload a .json file, and it opens as an editable tree.
Runs in your browser. Nothing is uploaded. Your draft is saved in this browser's local storage, so it survives a page reload. No account, no file-size limit and no watermark.
How it works
Build a JSON object with keys and types
The document starts from a root value, usually an object. Click Add key, type the field name, then pick a type: string, number, boolean, null, object or array. These are the value types defined in RFC 8259, so what you build maps one-to-one to standard JSON. Objects hold named keys and arrays hold ordered items. You can nest both as deep as you need.
Edit values without worrying about syntax
Type strings as plain text. The editor adds the quotes and escapes quotation marks, backslashes and line breaks for you. Pick true or false for booleans. Null needs no value. Numbers are checked against the JSON number grammar as you type. 42, -3.5 and 1e6 are accepted. Leading zeros, NaN, Infinity and hex are flagged, because strict JSON does not allow them.
Rearrange, duplicate and remove
Each row has buttons to move it up or down, duplicate it and remove it. Duplicate is the fastest way to make a list of similar records. Build one object in an array, fill it in, duplicate it, then change only the values that differ. Collapse objects and arrays to keep a large document readable. Every control is a standard button, field or menu, so the editor works with a keyboard and screen readers.
Switch between the visual editor and JSON text
The JSON text tab shows the same document as raw text. Paste existing JSON there, or edit the text directly when that is faster. Switching back to the visual editor re-reads the text. If the text has a syntax error, the tree stays hidden until you fix it. The output pane shows the line and column of the problem.
Copy or download a valid JSON file
The output pane runs the document through the browser's strict JSON parser before showing it, so what you copy is valid JSON. Choose 2-space, 4-space or tab indentation, or minify to one line. Copy output puts it on your clipboard. Download saves a .json file. The tree view toggle shows the structure at a glance.
Warnings for duplicate keys
RFC 8259 says names within an object should be unique, and parsers handle duplicates differently. JavaScript's JSON.parse keeps only the last value. The editor marks duplicate keys in red so you can rename them before a system silently drops one of the values.
Frequently asked questions
How do I create a JSON file online?
Start with the root object. Click Add key for each field, name it and choose a type. Nest objects or arrays where you need structure. When the output looks right, click Download to save it as a .json file, or Copy output to paste it somewhere else.
Can I use this as a JSON maker for a list of records?
Yes. Set the root type to array, add one object and fill in its keys. Then use the duplicate button on that object and change the values in each copy. The output is a JSON array of objects you can copy or download.
Can I edit JSON I already have?
Yes. Paste it into the JSON text tab, or use Upload to open a .json file. If it parses as valid JSON, it opens in the visual editor. There you can rename keys, change types, add or remove values and reorder items.
Is my JSON uploaded anywhere?
No. Editing, validation and formatting all run in your browser. The current draft is stored in this browser's local storage so a reload does not lose it. Clear removes it.
Why is my number marked as invalid?
JSON numbers must follow the RFC 8259 format. That means an optional minus sign, digits with no leading zeros, an optional decimal part and an optional exponent. 007, +5, NaN, Infinity and 0x1F are not valid JSON numbers. To keep a value exactly as written, change its type to string.
Can the top-level value be an array or a single value?
Yes. Change the root type to array to build a list of records. RFC 8259 also allows a string, number, boolean or null at the top level, and the editor supports that. Most APIs and config files expect an object or array, though.
Are key order and number precision preserved?
Keys stay in the order you create or arrange them, with one exception from JavaScript. Keys that look like array indexes, such as "1" or "2", move to the front in ascending order when the output is parsed. Numbers are read as 64-bit floating point, so integers above 9,007,199,254,740,991 can lose precision. Store very large IDs as strings.
What is the difference between this and the JSON Formatter?
The JSON Formatter pretty-prints JSON you already have as text. The JSON Editor is for creating or restructuring a document through a form. It outputs the same formatted JSON when you are done.
Can I add comments to the JSON?
No. Standard JSON has no comment syntax, so a comment makes the file invalid for strict parsers. If your tool accepts JSONC or JSON5, add comments there. To go back to strict JSON, use the JSON5 / JSONC to JSON converter.
Sources & last verified
We checked this tool's behavior and the claims on this page against the specifications below on . The tool runs in your browser, so the output you see is exactly what the engine produced.
Found a wrong result or an outdated claim? Report an error and we will check it again.