The serialization format converter transforms structured text between XML, JSON, TOML, CSV, and YAML. Paste your data on the left, choose the source and target formats, and the converted output appears instantly on the right. The auto-detect option reads format signatures from the input and labels the detected type — useful when you receive a config file without knowing its format.
How JSON, YAML, and TOML represent the same data
The same configuration in three formats — useful to see exactly what changes during conversion:
{
"server": {
"host": "localhost",
"port": 8080,
"tags": ["web", "api"]
}
}
server:
host: localhost
port: 8080
tags:
- web
- api
[server]
host = "localhost"
port = 8080
tags = ["web", "api"]
CSV can only hold flat tables
CSV is a two-dimensional format. Converting nested JSON or YAML to CSV flattens inner objects into column names like server_host and server_port. Deep nesting produces long or ambiguous column names, and values that are themselves arrays or objects will be dropped or stringified. Going the other direction — CSV to JSON — reads each row as an object where every value is a string; numbers are not automatically cast to numeric types.
When auto-detect fails
Auto-detection uses format signatures as heuristics: input starting with < is treated as XML, { or [ as JSON, lines with = as TOML, --- or indented objects as YAML. If the input is ambiguous — an empty object {}, a single bare string, or whitespace-only content — the detector may report it cannot identify the format. Switch to a specific format manually in that case.
Fixing conversion errors
"Conversion failed" appears when the source data is invalid in the selected format. Common causes ranked by frequency:
- YAML indentation mismatch — YAML requires consistent spaces per level; mixing tabs and spaces always fails
- Duplicate keys in TOML — the same key appearing twice in one table is invalid
- Unclosed XML tags — a missing closing tag or an unquoted attribute value breaks the parser
- Trailing comma in JSON — a comma after the last item in an array or object is not allowed
- Unquoted newlines in CSV — fields containing line breaks must be wrapped in double quotes
All conversions run locally in the browser; no input is sent to any server.