Skip to the tool
GigaJSON

XML to JSON

All tools
Guides Open GigaJSON

Convert XML into JSON: RSS feeds, sitemaps, SOAP responses, config files. Attributes become @keys and repeated elements become lists, the same way everywhere in the document. Values keep their text. Whatever can't be carried over, like comments or mixed content, is listed for you.

How to use it

  1. Paste XML or open an .xml file.
  2. The JSON appears, with a note about anything XML-only that was dropped.
  3. Download or copy the JSON, or open it in GigaJSON.

Private, and made for big files

This tool runs in your browser, in a background worker: nothing you paste or open is uploaded, and nothing is kept after you leave. JSON and XML input can be up to 1 GB, depending on available memory. Processing runs in a background worker; large analyses can take a minute or more. If your connection drops while you're here, the tool keeps working. When one tool isn't enough, GigaJSON opens your data with a tree, a table, JSONPath/JMESPath/jq queries, transforms, diff and history.

Questions

How are attributes and text represented?

Attributes become keys starting with @. Text next to attributes or child elements becomes #text, so <a id="1">x</a> turns into {"a": {"@id": "1", "#text": "x"}}.

Is it safe with untrusted XML?

Yes. External entities are never fetched, and entity expansion (the "billion laughs" attack) is refused.

Is my data uploaded?

No. The tool runs in your browser, in a background worker. Nothing you paste or open goes to a server, and nothing is kept after you leave the page.

How large a file can it handle?

JSON and XML input can be up to 1 GB, depending on memory. CSV/YAML input and JSON repair are limited to 128 MB. Parsing runs in a background worker. jq, text editing and text-based exports have separate limits, shown when you use them.

All tools