CSV to JSON Converter
Convert CSV, TSV, semicolon-separated, or pipe-delimited data into readable JSON. Detect delimiters, preserve quoted values, create nested objects, copy results, or download a JSON file locally.
Convert delimited data in real time
Pasted data and selected files are processed in this browser and are not uploaded.
How CSV becomes JSON
CSV is a family of delimited text formats rather than one perfectly uniform file type. A typical file stores one record per row and separates fields with commas. The first row often contains column names. JSON represents the same information as arrays, objects, strings, numbers, booleans, and null values. Converting reliably therefore requires decisions about the delimiter, headers, quoting, empty cells, and types.
This converter parses one character at a time. A delimiter inside a correctly quoted field is treated as data rather than a column boundary. Two double quotes inside a quoted field become one literal quote, and a line break inside quotes remains part of that value. Both Windows and Unix line endings are supported.
name,noteMeera,"Uses commas, quotes, and
multiple lines"
Delimiter detection
Auto detect compares comma, tab, semicolon, and pipe candidates using the first logical records. It prefers a candidate that produces a consistent number of fields across rows. Detection is a convenience, not a guarantee. A file containing free-form text or only one column may be ambiguous, so select the delimiter manually when the preview is wrong.
Headers and generated column names
With headers enabled, the first row supplies object keys. Blank names become column_1, column_2, and so on. Duplicate names receive a numeric suffix rather than silently overwriting an earlier value. When headers are disabled, every row becomes data and generated column names are used for all fields.
Nested output with dotted headers
Enable nested keys to turn a header such as user.name into {"user":{"name":"..."}}. This is useful when preparing payloads for an API, but dots in real column names may be intentional. Keep nesting disabled if invoice.total must remain one literal property name. Conflicting paths, such as both user and user.name, are difficult to represent and should be renamed before conversion.
Type inference
CSV cells are text, so type inference is optional. When enabled, this page converts case-insensitive true and false, the word null, and plain finite numeric forms. Empty cells stay empty strings so missing text is not silently converted to null. Values with leading zeroes, such as postal codes and product identifiers, remain strings to reduce accidental data loss.
Prepare clean source data
- Use one delimiter consistently and quote fields containing that delimiter.
- Escape a literal quote inside a quoted field by doubling it.
- Give every column a clear, unique header.
- Keep dates as explicit ISO-style strings unless the receiving system requires another format.
- Inspect identifiers with leading zeroes before enabling broad type conversion.
- Remove formulas or spreadsheet-specific formatting; CSV stores exported values, not workbook logic.
Methodology and limits
The parser supports quoted fields, escaped double quotes, embedded newlines, empty values, and a final row without a trailing newline. It reports an unfinished quoted field and rows whose column count differs from the expected width. Extra cells are preserved under generated column names rather than discarded.
Selected files are read with the browser’s text-file API and limited to 20 MB to protect work laptops and mobile devices from excessive memory use. The JSON download is created with an in-memory Blob and a temporary browser URL. No conversion request is sent to MiniUtils.
Frequently asked questions
Can CSV contain commas inside a value?
Yes. Surround the complete field with double quotes. A value such as "Mumbai, Maharashtra" is one field when the delimiter is a comma.
Why are my numbers strings?
Type inference may be disabled, or the value may contain leading zeroes, currency symbols, grouping separators, or other text. This conservative behavior helps preserve identifiers.
Can the output be imported directly into an API?
Often, but verify the required root shape, field names, data types, date format, null policy, and maximum payload size. This page cannot validate an external API schema.
What happens to duplicate headers?
Later duplicates receive suffixes such as name_2. This prevents silent replacement, but renaming the source columns is clearer.
Does the tool support huge files?
No. It is designed for interactive conversion and reads the full file in memory. For very large datasets, use a streaming parser and validate records in batches.
Is my data stored?
No. The converter runs locally. As with any browser utility, avoid confidential data on an untrusted or monitored device.
Reference
RFC 4180 documents a commonly referenced CSV format, including quoted fields and escaped quotes. Real exports may differ, which is why the delimiter and header controls remain adjustable.