Overview
Paste a Base64 string or data URI to decode it as UTF-8 text and parse that text as XML, with the result shown re-indented and well-formedness-checked. Errors are surfaced in three distinct stages: invalid Base64, valid Base64 whose bytes aren't valid UTF-8 text, or valid UTF-8 text that isn't well-formed XML. Parsing uses the browser's native DOMParser - the same engine as the XML Formatter - which never resolves external entities or DTDs against the network or filesystem. Runs entirely client-side; nothing you paste is ever uploaded.
Best for: Decoding a Base64-encoded XML payload into readable, well-formedness-checked XML
How to use this tool
- Paste Base64 or a data URI. A data URI prefix is stripped automatically if present.
- Decoded to UTF-8 text. The Base64 string is decoded to bytes, then those bytes are decoded as UTF-8.
- Parsed as XML. The decoded text is parsed with the native DOMParser and re-indented.
- Copy the result. Grab the formatted XML with one click.
Why use this tool
Three-stage error model
Invalid Base64, invalid UTF-8, and malformed XML are each reported with their own specific message.
No XXE risk
The native DOMParser never resolves external entities or DTDs - a standard browser platform guarantee.
Data URI support
Paste a full data URI and the base64 payload is extracted automatically.
Nothing leaves your browser
Decoding and parsing happen entirely client-side.
Frequently asked questions
The Base64 Decoder just returns decoded text. This tool additionally parses that text as XML and re-indents it, with a specific error if the decoded text isn't well-formed XML.
No - the output is shown as re-indented source text only, generated via the native XMLSerializer/DOMParser, never via dangerouslySetInnerHTML.