Skip to content

JSON, XML & YAML Parser

Paste or open a JSON, XML or YAML file to validate it (with the exact line and column of any error), browse it as a collapsible tree, search values and keys, look values up by path, pretty-print or minify it, and convert between formats. Everything runs in your browser — your input and files are never sent to a server.

Pasted or opened JSON/XML/YAML is read only in this browser and is never sent or stored. Tokens and personal data are safe to paste, but close the page after use on a shared computer.

Good to know

  • JSON is read strictly — comments, trailing commas, single quotes and unquoted keys are reported as errors.
  • Numbers are kept exactly as written, so 12345678901234567890 or 1.0 survive formatting and conversion unchanged.
  • A repeated key is not an error but is reported as a warning (real programs keep only the last value).
  • Internal DOCTYPE declarations (ENTITY) in XML are rejected, not interpreted — they are the entry point for entity-bomb and external-file attacks. Declarations pointing to an external DTD are skipped, never fetched.
  • XML only decodes < > & " ' and numeric references (A). Any other &name; is an error.
  • Input is limited to 2 MB and 200 levels of nesting.
  • YAML supports the common syntax — maps, lists, quoted text, | > block scalars, [ ] { } flow style and comments. Anchors (&), aliases (*), tags (!), multiple documents (---), ? complex keys and multi-line quoted text are not supported and reported as errors. Aliases can also be used to blow a document up exponentially, so they are never expanded.
  • YAML values follow the 1.2 rules: only null, true/false and decimal numbers become values; yes/no, 0x1F and dates stay strings. Indentation must use spaces (tabs are an error).

FAQ

Is my JSON/XML sent to a server?

No. Parsing, validation and conversion all happen in this browser; nothing is sent or stored.

How is this different from Code Beautifier or the JSON tab in Developer Tools?

Those rewrite code prettily; this reads structure: tree browsing, lookup by path, error positions, a structure summary, and JSON↔XML conversion.

Numbers come out as strings when I convert XML to JSON.

XML values have no type, so everything is a string by default. Turn on "Turn numbers and true/false into values" to convert only number-looking text (leading-zero values like 007 stay strings).

Is JSON → XML → JSON lossless?

Within this tool's rules (attributes "@", text "#text", repeats as arrays), yes. An empty string and null both become an empty element and come back as null, and keys that are not valid element names are renamed.

Why are YAML anchors (&) and aliases (*) not supported?

Aliases let a document reference the same content many times and grow billions of times larger in a few levels (an "alias bomb"), so they are reported as errors instead of being expanded. Paste the expanded text instead.

How to use this tool

Use it to check whether JSON, XML or YAML is valid and to explore its structure. Syntax errors are reported with line and column, the data is shown as a collapsible tree, and you can search values and keys, look up a value by path, format or minify, and convert between formats. Everything is processed in this browser.

Frequently asked questions

Does it report errors in JSON?

Yes. Syntax errors are reported with the line and column.

Can I convert between JSON, XML and YAML?

Yes. You can convert between them and also format or minify.

Can I find a value in a large JSON?

Yes. Collapse and expand the tree, search values and keys, and look up a value by path.

See all tools

Password Generator

Create a hard-to-guess password from a length and character types, or as an easy-to-remember word combination (passphrase). The result never leaves this page.

What is my IP

Check your public IP address and approximate location.

File & Text Encryption

Encrypt and decrypt text or files with a password using AES-256. Everything happens in this browser; your text, files and password are never sent to a server.

Web Page & RSS Checker

Enter an address and our server visits it to check titles, descriptions, Open Graph preview data, response headers, redirects and the SSL certificate expiry — inspect an RSS/Atom feed for common problems, or check whether an API allows browser requests from another site (CORS), and look up a domain's DNS records (A, MX, TXT, NS and more) through public DNS.

Diagram Maker

Draw flowcharts, sequence, ER and Gantt diagrams from text and save them as SVG or PNG (Mermaid syntax). Your text is never sent to a server.

Developer Tools

Forty everyday developer helpers in one place (including TOTP, semver, bit operations, .env/INI/TOML conversion, JSON Schema validation, docker run → compose, .gitignore, OG tags and ASCII/ANSI tables) (now with subnet/CIDR, chmod, an HTTP/MIME/port reference, robots/sitemap and dummy data): URL, Base64, HTML and Unicode encoding, JSON formatting, CSV and type generation, Unix time, JWT decoder, hashes, UUIDs, regex, text diff, number bases, cron, certificate/CSR and mail header readers, business registration number checks, and a table converter.