Data and text
Convert between text and structured data formats such as CSV, JSON, and YAML.
Convert text file line endings
Switch a plain-text file between Windows (CRLF), Unix (LF), and classic Mac (CR) line endings.
JSON to CSV converter
Turn an array of JSON objects into a CSV spreadsheet file.
CSV to JSON converter
Turn a CSV spreadsheet into an array of JSON objects.
JSON to YAML converter
Rewrite a JSON file as YAML, which is easier to read and comment.
YAML to JSON converter
Rewrite a YAML file as JSON for tools that cannot read YAML.
JSON to XML converter
Wrap a JSON document in XML elements under a root element you choose.
XML to JSON converter
Turn an XML document into JSON, keeping or dropping attributes.
CSV to TSV converter
Swap comma separators for tabs, which paste cleanly into spreadsheets.
TSV to CSV converter
Swap tab separators for commas, quoting any value that needs it.
Markdown to HTML converter
Render a Markdown file as HTML, as a fragment or a complete page.
HTML to Markdown converter
Turn an HTML page into readable Markdown, dropping scripts and styles.
SRT to VTT converter
Convert SubRip subtitles to WebVTT so they play in HTML5 video.
VTT to SRT converter
Convert WebVTT subtitles to SubRip for players that require SRT.
About these tools
These tools convert between the text and data formats that scripts, APIs, and configuration files use: CSV, TSV, JSON, YAML, XML, Markdown, HTML, and subtitle files. Each one parses on your device and writes the result there, so a file full of customer records or credentials never leaves your machine.
Every tool here also accepts pasted text, which is often faster than saving a snippet to a file first. The output downloads as a file either way.
Frequently asked questions
- How do I convert CSV to JSON without uploading the file?
- Open the CSV to JSON converter, choose your file or paste the rows, and convert. The parsing runs in your browser. This matters more for data files than for most formats, because a CSV export is often the most sensitive thing someone converts all week.
- Why are the numbers in my JSON output wrapped in quotes?
- Because CSV carries no type information, so every field is kept as text. Guessing types silently corrupts postcodes, phone numbers, account numbers, and version strings that only look numeric: 007 becomes 7, and a long account number becomes scientific notation. Neither is recoverable, so values are left exactly as written.
- What is the difference between CSV and TSV?
- Only the separator: commas versus tab characters. TSV avoids the quoting problems that commas inside values cause, which makes it easier for scripts to read, and is why many database exports use it. The converters here move between the two without changing any value.
- Can I convert YAML to JSON offline?
- Yes. Once the page has loaded, the conversion needs no connection at all. The parser is JavaScript running in your browser, so an aeroplane or an air-gapped machine works exactly the same as a normal one.
- Is it safe to convert confidential data here?
- The file is not transmitted, so there is no copy of it anywhere but your device. That is a stronger guarantee than a promise to delete uploads, because there is nothing to delete. If your organisation requires it, run the check yourself in the Network panel.
- Why did my semicolon-separated file come out as one column?
- Because these tools expect commas. Spreadsheets in several European locales export with semicolons instead. Re-export with commas, or use the TSV tools if your export is tab-separated.
- Can I convert subtitles between SRT and VTT?
- Yes, in both directions. The difference is mostly the header and the timestamp punctuation, so the conversion is faithful. Cue text, positioning that both formats share, and timing all survive.