Data converters
Data
Choose a converter, upload a file or paste text, and download the result. Files delete after 1 hour.
What the data converters do
JSON to CSV turns an array of objects into rows. Every key that shows up in any of the objects becomes a column, nested objects and arrays are written into their cell as JSON text, and a single object becomes a single row. You can upload a .json file or paste the JSON straight into the box.
CSV to JSON reads the first line as column names and returns an array with one object per row. Empty lines are skipped, and every value stays a string because CSV itself has no numbers or booleans.
XML to JSON keeps attributes as keys that start with @, and JSON to XML writes those @ keys back as attributes. Markdown to HTML uses the marked parser, and HTML to Markdown uses Turndown with its default settings.
Base64 Encode turns any file into a text file with its Base64 string. Base64 Decode accepts plain Base64 or a complete data URL, ignores spaces and line breaks, and saves the result under the file name you type in, or as decoded.bin.
Frequently asked questions
Why are my numbers strings after CSV to JSON?
CSV files don't store data types, and the converter doesn't guess them. Every cell comes back as text, so turn numbers and true or false values into real types in your own code if you need them.
What happens to nested JSON in CSV?
CSV is flat, so a nested object or array is written into one cell as JSON text. Flatten the data before converting if each nested field needs its own column.
How does XML to JSON handle attributes?
Each attribute becomes a key with @ in front of its name, next to the child elements. Converting that JSON back to XML turns the @ keys into attributes again.
Why do headings look different after HTML to Markdown?
Turndown writes the first two heading levels as text underlined with === or --- instead of # marks, list items with * and code blocks as indented text. That is valid Markdown and renders the same way.