Free Data Format Converter
Data Format Converter converts between JSON, YAML, TOML, XML, CSV, INI and .env, detecting the input format automatically. It can also generate TypeScript, Zod, Go or Python types from your sample data, and shows the line and column of the first JSON, YAML, TOML, XML or .env error. Nested objects become dotted CSV columns such as address.city.
- Formats:
- JSON, YAML, TOML, XML, CSV, INI, .env
- Types:
- TypeScript, Zod, Go, Python
- CSV nesting:
- Dotted columns (address.city)
- Price:
- Free
- Runs:
- Locally, in your browser
- Uploads:
- None: files never leave your device
- Account:
- Not needed
Quick answers
Is my data uploaded to a server?
No. Every conversion, including type generation, runs in your browser.
How are nested objects written to CSV?
Nested fields become dotted column names (address.city) and lists inside a row are written as JSON text, so no data is lost.
Processed on your device: your files are never uploaded. How it works
Network activity in this tab
What this page has requested since you opened the site in this tab. An upload is any request that sends data: POST, PUT, PATCH or a request with a body.
No uploads: nothing has been sent from this page.
No network requests yet.
To see every request, open your browser's developer tools (Network tab).
How to use the Data Format Converter
- Paste your data or open a file: the input format is detected automatically (or pick it yourself).
- Choose the output format, or a type target such as TypeScript, Zod, Go or Python.
- Adjust the indent, CSV delimiter or XML attribute prefix if needed.
- Copy or download the result, or press Swap to keep converting from the output.
Credits & open source
Our own code plus open-source libraries. Thank you to the people who make these projects.
- CodeMirror 6Code editor with syntax highlighting. © Marijn Haverbeke and others · MIT
- @uiw/react-codemirrorReact wrapper for CodeMirror 6. © Kenny Wong (uiwjs) · MIT
- jsonc-parserFault-tolerant JSON scanner that reports error positions. © Microsoft Corporation · MIT
- yamlYAML parser and serializer. © Eemeli Aro · ISC
- smol-tomlTOML parser and serializer. © Squirrel Chat et al. · BSD-3-Clause
- fast-xml-parserXML parser and builder. © Amit Kumar Gupta · MIT
- Papa ParseRobust CSV parser. © Matthew Holt · MIT
- iniINI file parser and serializer. © Isaac Z. Schlueter and Contributors · ISC
- quicktypeGenerates TypeScript, Zod, Go and Python types from JSON. © Glide Apps, Inc. and contributors · Apache-2.0
Web platform APIs used: File API, Clipboard API.
Full license texts: third-party notices · all credits
Frequently asked questions
Where does the error position come from?
Each parser reports the line and column of the first problem. The input editor highlights that line and “Go to error” jumps to it.
Are the generated types exact?
They are inferred from your sample data, so fields missing from some objects become optional and numbers may be typed as integers. Review them before use.