Skip to content
yutils
Example

Input (CSV)

name,email,active
yutils,hello@yutils.dev,true
jade,jade@example.com,false

Output (JSON)

[
  { "name": "yutils", "email": "hello@yutils.dev", "active": "true" },
  { "name": "jade", "email": "jade@example.com", "active": "false" }
]

Note

Header row auto-detected. Values containing commas get quoted automatically. Round-trip — JSON arrays also convert back to CSV.

Usage / FAQ

When to use

  • Turn Excel / Google Sheets CSV exports into JSON for API payloads
  • Convert DB query CSV exports into readable JSON
  • Dump JSON responses as CSV for non-developer colleagues
  • Quick conversions for email lists or user data
  • Prepare scraped CSV data for downstream `jq` processing

FAQ

Q.How are embedded commas and quotes handled?
A.Per RFC 4180 — values with commas get wrapped in quotes, and embedded quotes are escaped as `""`.
Q.What about header-less CSV?
A.Set `header: false` and each row becomes a `["a", "b", ...]` array.
Q.Is type inference automatic?
A.Default keeps every value as a string (safest). Enable type inference and `"true"` becomes `true`, `"42"` becomes `42`.
Fun facts
  • CSV traces back to IBM Fortran's list-directed I/O in 1972, and became a de facto standard for 30+ years without any official spec. RFC 4180 (2005) was the first informal spec — before that, every tool had slightly different dialects.

    RFC 4180 (2005)
  • The Excel UTF-8 BOM gotcha — for Excel to read a UTF-8 CSV without mojibake, the file needs a BOM (`EF BB BF`) in the first 3 bytes. Without it Excel assumes ANSI encoding, mangling non-ASCII text. That's why so many devs in Korea/Japan default to writing BOMs on CSV export.

    Wikipedia — BOM
  • Several European countries (Germany, France, Italy, …) use comma as the decimal separator (`1,5`), so their CSV separator becomes semicolon (`;`). Excel parses the same .csv file differently depending on locale — a perennial source of 'Excel just broke my CSV' incidents.

    Wikipedia — CSV