iTool

JSON ↔ XML Converter

Live 2-way converter between JSON and XML. Configurable attribute prefix and text node key. 100% browser-based, no upload.

Everything stays on your device. Nothing is sent to a server, so you can use it with confidence.
Options
Paste JSON or XML — the other side converts live
JSON
XML

Related Tools

More iTool Features!

Frequently Asked Questions

How are JSON arrays converted to XML?

Each item in a JSON array is converted into an XML element that repeats the same tag name. For example, items in an items array are listed as consecutive <item> tags.

How are XML attributes and elements converted to JSON?

XML attributes are converted to keys prefixed with @ by default, and text nodes are converted to a configurable special key (e.g., #text). You can adjust the conversion rules via options to produce the shape you need.

Can this be used when integrating a REST API and a SOAP API?

Yes, REST APIs typically use JSON while SOAP APIs use XML. When you need to convert data between the two systems, you can use this tool to quickly check and transform the format.

Is bidirectional conversion supported?

Yes, both JSON to XML and XML to JSON are supported. Enter your source data in the left panel and the conversion result appears immediately in the right panel.

JSON ↔ XML Converter

JSON and XML have different structures, so conversion has a few choices. This tool converts both ways in real time, with two tweakable rules.

Two options

  • Attribute prefix (default @_) — prefix used in JSON keys for XML attributes. Example: <book id="1">{"@_id": "1"}
  • Text key (default #text) — JSON key holding the text content of an element when it also has attributes. Example: <title lang="en">Gatsby</title>{"title": {"@_lang": "en", "#text": "Gatsby"}}

How to use

  • Type in either side — the other converts automatically
  • Sample button loads example data
  • Swap button exchanges left and right
  • Copy or download each format separately

Conversion rules

  • Arrays — multiple child elements with the same name become a JSON array
  • Attributes vs child elements — distinguished by the prefix
  • Empty elements<br />{"br": ""}
  • Comments — stripped during conversion (not lossless)

Client-side only

Your data never leaves the browser. Safe for SOAP responses, API keys, internal configs.

Help us improve this tool

Share what you like, what needs work, or features you'd like to see

Esc

Downloads are blocked in in-app browsers

In-app screens (Naver, KakaoTalk, etc.) block file saving. Open in Safari to download normally.

1 Tap the ⋯ / Share button at the bottom or top of the screen
2 Choose 'Open in Safari' or 'Open in browser'

Or copy the link and paste it into Safari