Everything runs on your machine — your file is processed right here in your browser and never uploaded to any server.
Input
XML
Loading...
Output
JSON
Loading...

About this tool

A huge amount of the world's data still lives in XML: SOAP responses from legacy enterprise systems, RSS and Atom feeds, sitemaps, Maven and Android configuration files. Modern pipelines, on the other hand, are built around JSON. This converter takes an XML document on the left and produces a JSON representation on the right the moment you paste it, so you can pull old data into new code without writing a custom parser.

XML carries information in two places, elements and attributes, and this tool keeps both. Attributes are preserved in the output under prefixed keys, so they remain distinguishable from child elements instead of silently colliding with them. That fidelity matters when you are mapping a SOAP payload into a REST service, inspecting the item entries of a feed, or migrating an old configuration format where meaningful settings hide in attributes.

How to use

  1. Paste your XML into the left editor, or use Load File to open an .xml document from disk.
  2. The JSON version renders immediately in the right editor and re-renders on every keystroke.
  3. Check how your attributes and repeated elements were mapped so you know what keys to reference downstream.
  4. Use Copy to send the JSON to your clipboard or Download to save it as a file.
  5. Click Clear to reset both editors before converting the next document.

Whether you are converting an internal SOAP response or a feed from a private system, the XML is parsed entirely by code running in your browser. No request carries your document off the device, nothing is cached remotely, and closing the page discards everything.

Frequently asked questions

How are XML attributes represented in the JSON output?

Attributes are kept rather than thrown away. Each one appears as a key with a distinguishing prefix on its name, so an attribute and a child element that happen to share a name do not overwrite each other in the resulting object.

What happens when the same element appears multiple times?

Repeated sibling elements, like the item entries in an RSS feed, are grouped into a JSON array under a single key. A one-off element maps to a single object or value instead, so check whether a key holds an array before looping over it in code.

Can it handle SOAP envelopes and namespaced tags?

Yes, as long as the document is well-formed XML. Namespaced tag names are carried through into the JSON keys as written, so a SOAP response converts fine; you will just reference keys that include the namespace prefix from the original document.