Free to use · no account · your files never leave your device

Convert XML to JSON. Locally, nothing uploaded

XML still turns up everywhere older systems meet newer ones. RSS and sitemap feeds, SOAP responses, bank and government exports, app configuration. Working with it in modern code usually means turning it into JSON first. This tool parses XML in your browser and produces a JSON representation, with element attributes preserved (prefixed with @_) so no information is silently dropped. It runs entirely on your device, which matters because XML exports from banks, payroll systems, and internal tools carry exactly the data you would not want to paste into an online converter. Invalid XML produces a clear error rather than garbage.

How it works

  1. Drop an .xml file below.
  2. Elements become keys and attributes are kept (prefixed with @_).
  3. Download the pretty-printed JSON.

Frequently asked questions

What happens to XML attributes?

They are preserved, not discarded. Each attribute appears as a key prefixed with @_ (so <item id="3"> yields "@_id": "3"). That keeps the conversion lossless, since attributes often carry meaningful data.

How are repeated elements handled?

When a parent contains several children with the same tag, they become a JSON array. The natural mapping. A single child becomes a plain object; if you need it always treated as an array, that is a known ambiguity of XML-to-JSON that depends on your data’s shape.

Is my XML uploaded to convert it?

No. Parsing happens in your browser and the JSON is produced locally, so exports containing financial or personal data are never transmitted. The tool works offline once the page has loaded.

Why did conversion fail?

The input must be well-formed XML. Unclosed tags, mismatched nesting, or stray special characters are the usual causes, and the error points you at the trouble. Malformed HTML is not valid XML and may not convert cleanly.