XML to TOML Converter

Input XML

Output TOML

Your TOML appears here as you type.

Paste data to see token savings

Convert XML to TOML with our free online converter.

Example: XML input and real TOML output

The output below was generated by the same conversion code the converter uses, run on this sample when the page was built.

XML input (296 characters)
<catalog>
  <book id="bk101">
    <title>Designing Data-Intensive Applications</title>
    <author>Martin Kleppmann</author>
    <year>2017</year>
  </book>
  <book id="bk102">
    <title>The Pragmatic Programmer</title>
    <author>Andrew Hunt</author>
    <year>1999</year>
  </book>
</catalog>
TOML output (226 characters)
[[catalog.book]]
title = "Designing Data-Intensive Applications"
author = "Martin Kleppmann"
year = 2017
"@_id" = "bk101"

[[catalog.book]]
title = "The Pragmatic Programmer"
author = "Andrew Hunt"
year = 1999
"@_id" = "bk102"

TOML output is 24% smaller than the XML input. The same data is 214 characters as minified JSON and 341 as pretty-printed JSON. Sizes are character counts, not tokens: token counts depend on the model's tokenizer (see the tokenizer comparison).

XML to TOML: what changes

  • Reading XML: Attributes are kept with an @_ prefix (id="bk101" becomes "@_id"), repeated child elements become arrays, and numeric text becomes numbers. A single child element becomes an object, not a one-item array, so the shape depends on how many elements appear.
  • Writing TOML: TOML requires a top-level table: a root-level array is wrapped as [[data]]. Arrays of objects become [[name]] array-of-tables blocks, and null values are silently dropped because TOML has no null.

About XML

Extensible Markup Language is a verbose but powerful format. Still widely used in legacy systems, SOAP APIs, and document formats.

  • ✓Rich metadata
  • ✓Namespaces
  • ✓Validation schemas
  • ✓Legacy support
Full XML Documentation →

About TOML

TOML is a config file format with explicit types. It's the official format for Python's pyproject.toml and Cargo's Cargo.toml.

  • ✓Explicit types
  • ✓Standard in Python/Rust
  • ✓Unambiguous
  • ✓Easy to parse
Full TOML Documentation →

Why Convert XML to TOML?

Use TOML for application configuration, especially in Python (pyproject.toml) or Rust (Cargo.toml) projects. It has explicit types and no ambiguity.

XML to TOML: Frequently Asked Questions

How do I convert XML to TOML?

Paste your XML into the editor on json2toon.co. The tool detects the input and produces TOML instantly, then you copy the result. Conversion runs entirely in your browser, so nothing is uploaded to a server.

Is the XML to TOML converter free?

Yes. Converting XML to TOML on json2toon.co is free with no account, signup, or usage limit. A free public API is also available for automated, programmatic conversion.

Why convert XML to TOML?

Convert XML to TOML with our free online converter.

What should I watch out for when converting XML to TOML?

TOML requires a top-level table: a root-level array is wrapped as [[data]]. Arrays of objects become [[name]] array-of-tables blocks, and null values are silently dropped because TOML has no null.

Is my data safe when I convert XML to TOML?

Yes. The XML to TOML conversion happens client-side in your browser. Your source data stays on your device and is never sent to or stored on a server, which makes it safe for private or sensitive payloads.