json

FormatValidateConvert

Start over?

This clears both panes. Unsaved changes in either document are lost.

Replace that document?

This writes the matches into the other pane. What is there now is lost.

Load JSON from a URL

Your browser fetches it directly — the request goes to that site, never to us.

    ↑ ↓ to move · Enter to run · Esc to close

    Keyboard shortcuts

    Send feedback

    Questions, bug reports and feature requests are all welcome. A bug report is easiest to act on with the shape of the document that caused it — never send anything confidential.

    Email us

    Contact page, in a new tab, so this page stays as it is.

    Settings

    Indent

    Format and Sort keys write it, and Tab in Code view types it.

    Code text size
    14 px

    Code view and generated code.

    Wrap long lines
    Left pane opens in
    Right pane opens in

    In a new tab and after New. A view you choose in a pane is still remembered.

    JSON Editor

    On the left pane · one documentOn one document
    0
    0

    About this tool

    Online JSON Editor.

    Your document never leaves the browser.

    My JSON Editor is a developer tool for editing JSON as text, as a tree, a table or a graph, beside a second document or a schema. It runs entirely in your browser — your data is never uploaded, never logged, and never leaves your machine. Here for one job? The JSON formatter, the JSON validator and the JSON viewer each open the editor set up for it.

    0

    bytes leave your machine

    4

    views — code, tree, table and graph

    2

    documents, mirrored or compared

    Private

    Everything runs in your browser

    Most online JSON tools send your document to a server to be processed. That is a problem when the JSON contains API keys, customer records, internal identifiers, or anything else covered by an agreement you have signed. My JSON Editor has no backend at all: the parser, the formatter, and the validator are JavaScript running on your own machine. Nothing is transmitted, nothing is logged, and there is no account to create.

    Format

    The text and its structure, side by side

    Paste or open a document and the editor tells you immediately whether it parses, how large it is, and how many lines it spans. Format it to read the structure, minify it to ship it, or sort its keys to make two versions of the same payload comparable. The dual-panel layout keeps the raw text and its structure side by side, so you can navigate a deeply nested document without losing your place in the source.

    1

    Minified

    40 B
    {"id":4127,"tags":["a","b"],"live":true}
    2

    Press Format

    ✓ Valid JSON · 8 lines
    {
      "id": 4127,
      "tags": [
        "a",
        "b"
      ],
      "live": true
    }

    Convert

    Converting to and from JSON

    YAML, XML and CSV have pages of their own. Paste, open or drop a file on a Convert page and it is detected and converted as you type, with the options for that pair beside the result — a multi-document YAML stream, an XML root element, a CSV delimiter — and a line and column when a file cannot be read. The source keeps its own format: nothing is rewritten until you copy or download the result, and Open JSON in Editor brings the JSON back here. Open a .yaml, .csv or .xml file in this editor and it stays the text it is, with Open in Convert → one click away. Numbers keep every digit in both directions, and nothing leaves your browser. Every pair has a page:

    1

    config.yaml

    service: billing
    replicas: 3
    order_id: 90071992547409931
    2

    config.json

    every digit kept
    {
      "service": "billing",
      "replicas": 3,
      "order_id": 90071992547409931
    }

    Scale

    Built for real documents

    Configuration files, API responses, and exported datasets are rarely small or tidy. The editor is built to stay responsive on large inputs, to report precisely where a parse fails rather than simply refusing the document, and to leave invalid text exactly as you typed it so you can repair it rather than starting over.

    response.json

    {
      "user": "ada",
      "roles": ["admin"],
    }

    ✕ Line 3, column 21: Trailing comma before "}"

    Your text stays as typed. Repair fixes it in one click.

    Features

    Everything the editor does, where to find it, and the quickest way to reach it. All of it runs on your own machine.

    Editor band

    Mirror / Compare

    One document in both panes, or two side by side with every addition, removal and change marked in both.

    The editor band · the strip between the panes

    JSON diffGuide →: Mirror / Compare

    Editor band

    JSON Schema

    Put your document on the left and a draft-07 schema on the right: every failure is marked on the document itself, in all four views, and anything the validator could not check is marked on the schema and counted rather than passed over.

    • Invalid · 1
    • Valid
    • Not fully checked
    • Schema error
    "age": "forty"   ← Expected a number, found a string.

    Mode → Schema in the editor band · Generate → JSON Schema → Validate with this

    JSON Schema validatorGuide →: Validate against a JSON Schema

    Editor band

    Generate code

    Types for eleven targets — TypeScript, Zod, JSON Schema, Go, Python, C#, Kotlin, Rust, Swift, Dart and Java — from the whole document or any node in it, and structured-output schemas for OpenAI, Claude and Gemini.

    The editor band, or the pane toolbar

    Generate pageGuide →: Generate code

    Convert

    Convert page

    Every conversion on a page of its own: JSON to and from YAML, XML, CSV and TSV, to a Markdown table, to SQL, and to code — with the options beside the result, as you type.

    • JSON
    • YAML
    • XML
    • CSV
    • TSV
    • MD
    • SQL

    Convert in the header · Open in Convert → on a YAML, CSV or XML pane

    /convertGuide →: Convert page

    View

    One document on one full-width pane, for reading it as a tree, a table or a graph rather than editing text beside it.

    The editor band · the strip between the panes

    JSON viewerGuide →: View

    Find

    Search text or run a JSONPath query, filter the document down to what matches, or pull the matches into the other pane.

    The editor band · the strip between the panes · Ctrl/Cmd-F

    Guide →: Find

    Repair

    Fixes the JSON that almost is: trailing commas, single quotes, comments, code fences and an answer that stopped mid-word.

    The editor band, or the pane toolbar

    JSON validatorGuide →: Repair

    Export a table

    CSV, TSV or a Markdown table, with the delimiter, the header row and the quoting under your control.

    The Table view’s Export card

    Guide →: Export a table

    Decode a JWT

    Paste a token to read its header, payload and claims with real times, and check its signature against a secret or public key, without the token leaving the browser.

    Its own page

    JWT decoderGuide →: Decode a JWT

    XML

    Attributes as @ keys, repeated elements as arrays, any element you name always an array — and back, with the root element named when one has to be added.

    XML to JSONJSON to XMLGuide →: XML

    SQL

    CREATE TABLE and INSERT for PostgreSQL, MySQL or SQLite — typed columns, NOT NULL where every row has a value, nested values as JSON.

    JSON to SQLGuide →: SQL

    FAQ

    Frequently asked questions

    Short answers about privacy, offline use and how the editor treats your data.

    Didn’t find your answer?Write to us on the contact page →
    What is a JSON editor?

    A JSON editor lets you read and change JSON data. Here you can work with the document as Code, Tree, Table or Graph, depending on what you need to see. It can also format, validate, repair and compare a document, and the Convert pages turn it into YAML, XML, CSV and other formats.

    How do I edit a JSON file online?

    Paste your JSON, open or drop a file, or use Load from URL to fetch it. In Code, type your changes directly; in Tree, click a value to edit it or a key to rename it. Each change is one undo, and your document stays in the browser across a reload.

    Can I use this as an online JSON parser?

    Yes. The site’s own strict RFC 8259 parser checks text as soon as you paste, open or drop it. The status bar reports Valid JSON or Invalid JSON, and Code marks errors at their source positions. Tree, Table and Graph display the structure the parser reads.

    Is this JSON editor free?

    Yes. This JSON editor is free to use and requires no sign-up. Open the page to read or change a document without creating an account. Its Code, Tree, Table and Graph views let you choose how to work with that JSON.

    Do I have to download or install anything?

    No. The editor runs in a browser tab on any operating system, so there is no download or extension to add before you start. Visit the page once while connected; after that first visit, you can open the editor again without an internet connection.

    Does it work offline?

    Yes. After one visit, the editor and the tool pages open and work with no connection, and any other page you have opened once, a Convert page included, opens offline too. Nothing the editor does needs a network round-trip. The one exception is loading a document from a URL, which needs a connection to reach that address.

    Is my JSON uploaded to a server?

    No. Every operation — parsing, formatting, validating, sorting — runs in your browser using your own machine’s resources. There is no backend to send data to. You can confirm this by opening your browser’s network tab, or by disconnecting from the internet and continuing to work. The one feature that uses the network is Load from URL, and only when you use it: your browser requests the address you type directly from that site, and nothing is sent to us.

    How large a file can it open?

    There is no fixed cap: the limit is your browser’s memory. In our tests in Chrome on an Apple M4 laptop with 24 GB of memory, a 50 MB file was on screen in about half a second and formatted in about a second. We recommend files up to 50 MB. Above 10 MB the Tree, Table and Graph views ask before they build (Show anyway).

    How can I visualise JSON data?

    Choose Graph to see your JSON as a diagram, with the root at the left and successive levels in separate columns. Pan or zoom to inspect a branch, or fit the diagram to the pane. Graph shares its open branches with Tree, so your folding choices carry between those views.

    How can I view JSON as a table?

    Switch the pane to Table. An array of objects appears as records, with columns covering all the keys those records use; a wrapper such as {"users": [...]} opens onto its records too. Open a nested-value badge to inspect it. The Export card can write CSV, TSV or a Markdown table.

    How do I sort JSON keys, and why are arrays left alone?

    In JSON, the order of keys in an object carries no meaning, but the order of items in an array does. Reordering an array would change what the document says, so only object keys are sorted. Sort keys alphabetises each object’s members, starting with the deepest objects. To order array rows instead, sort by a column in Table view; that rewrites the array as one undo.

    Can it escape or unescape a JSON string?

    No. There is no escape or unescape command here. If your text is already JSON, paste it and the parser reads it directly. A whole document enclosed in quotes with backslash escapes is valid JSON too, but it represents one string, which the editor displays as a single string value.

    How do I create a JSON file?

    Type or paste the document in Code view. When the text parses successfully, the status bar shows Valid JSON, so you can check it before saving. Then press Save, or Ctrl/Cmd-S, to write it to a file on your computer.

    What is the difference between formatting and minifying?

    Formatting adds newlines and indentation so the structure is readable by a person. Minifying removes every byte of insignificant whitespace to make the payload as small as possible for transmission. Both describe exactly the same data — parsing either gives an identical result.

    Do you use cookies or analytics?

    No cookies and no analytics. The only thing stored is your current document and editor preferences, kept in your browser’s local storage so your work survives a refresh. Clearing site data removes it.