XML Formatter

Format and validate XML with custom indentation, or minify it for production. Convert XML to JSON instantly. All processing happens locally using your browser's native XML parser — nothing is uploaded.

XML input
Formatted XML

How to use XML Formatter

  1. 1
    Paste your XML

    Type or paste your XML into the input field. Any well-formed XML is accepted — documents, fragments, single elements, or XML with namespaces.

  2. 2
    Choose Format or Convert

    Select the Format XML tab to pretty-print and validate your XML. Switch to XML → JSON to convert the XML structure to a JSON object.

  3. 3
    Set indent size

    Choose 2 spaces, 4 spaces, or tabs for indentation. The formatted output updates immediately.

  4. 4
    Toggle minify

    Enable minify to strip all whitespace and produce the most compact XML representation — useful for reducing payload size in APIs.

  5. 5
    Copy or download

    Use Copy to copy the formatted output, or Download to save it as an .xml or .json file.

Frequently Asked Questions

What is XML formatting (pretty-printing)?

XML pretty-printing adds consistent indentation and line breaks to make XML human-readable. Computers don't care about whitespace in XML, but developers do — a formatted document is much easier to read, diff, and debug than a single-line blob.

How does XML to JSON conversion work?

The tool parses the XML DOM tree and converts each element to a JSON object. Element attributes become properties prefixed with @, text content becomes a #text property, and child elements become nested objects or arrays (if the element name repeats). The result is a JSON representation that mirrors the XML structure.

Does the tool validate my XML?

Yes. The tool uses the browser's built-in DOMParser to parse XML. If your XML is malformed — for example, unclosed tags or invalid characters — an error message with the problem description is shown instead of formatted output.

Can I format XML with namespaces?

Yes. XML namespaces (xmlns: prefixes) are fully supported. The formatter preserves all namespace declarations and prefixed element names without modification.

Is there a size limit for XML files?

No hard limit. The tool runs entirely in your browser using the native DOMParser. Very large XML files (several MB) may take a moment to process. Nothing is uploaded to any server.

Related Tools