Free · Fast · Privacy-first

Excel CSV to JSON

Excel is the most common source of CSV files in the wild and it has its own quirks that simpler converters stumble on.

Native JSON tool

CSV to JSON

Runs in your browser
JSON output
Run the tool to see a task-specific result.

BOM stripping

🔒

Locale detection

Trailing column prune

Browser-only run

Cost
Free tier
Sign-up
Not required
Processing
Tool-specific
Privacy
Clearly disclosed
IframeResponsiveAttribution included

Add this CSV to JSON to your website

Drop the CSV to JSON into a blog post, product docs, intranet, or school portal with one iframe. Processing, privacy, and usage limits are the same as on the full tool page.

  • One copy-ready line of HTML
  • Responsive — adapts to any container width
  • No API credentials are placed in the snippet

Embed code

<iframe
  src="https://www.fixtools.io/json/csv-to-json?embed=1"
  width="100%"
  height="780"
  frameborder="0"
  style="border:0;border-radius:16px;max-width:900px;"
  title="CSV to JSON by FixTools"
  loading="lazy"
  allow="clipboard-write"
></iframe>

Attribution-friendly: a small "Powered by FixTools" link appears in the embed footer.

Excel-specific quirks the converter handles for you

Excel writes UTF-8 CSV files with a byte order mark (BOM) at the start by default on Windows. The BOM is three bytes (EF BB BF) that signal UTF-8 encoding but are not part of the actual data. Naive parsers that read the first character as part of the first header end up with a garbled first column key like Name instead of Name. FixTools detects and strips the BOM silently before parsing so the first header reads cleanly. This is a tiny issue that breaks downstream consumers in surprising ways, and handling it automatically eliminates a common source of frustration.

Excel in non-US locales exports with locale-specific delimiters. German, French, Spanish, and Italian installations use comma as the decimal separator inside numbers, which means CSV field separators must be semicolons to avoid ambiguity. A file exported from German Excel might look like Name;Alter;Gehalt with semicolons as delimiters and decimal numbers written as 1.234,56. The auto-detector picks up the semicolon delimiter, but the decimal format remains as text because JSON has no locale awareness. For numeric output, convert decimal commas to periods in the spreadsheet before exporting.

Excel quoting follows RFC 4180 closely. Fields containing commas, line breaks, or double quotes are wrapped in double quotes, and embedded double quotes are escaped by doubling. FixTools implements the same rules so Excel files round-trip cleanly. One Excel-specific quirk: very long cells with line breaks are sometimes wrapped in three layers of quotes due to copy-paste artifacts; the parser handles these cases by recognising the outer quote pair correctly.

Excel auto-formats some values during export in ways that surprise downstream consumers. Long numeric strings that look like phone numbers or IDs may be converted to scientific notation. Dates may be reformatted from text into Excel date serial numbers. Leading zeros on postcodes may be stripped. None of these is fixable at the conversion step because the original information is already gone in the exported file. The fix is to set affected cells as Text format in Excel before exporting, or to wrap them in quotes manually in the cell content.

How to use this tool

💡

Save your Excel sheet as CSV UTF-8, paste or upload, and the converter handles BOMs, semicolons, and Excel quoting automatically.

How It Works

Step-by-step guide to excel csv to json:

  1. 1

    Save as CSV from Excel

    In Excel, choose File then Save As and select CSV UTF-8 (Comma delimited) or CSV (Comma delimited) depending on your version. The UTF-8 variant preserves non-ASCII characters correctly.

  2. 2

    Load into the converter

    Open the FixTools converter and paste the file contents or upload the .csv file. The tool strips any BOM automatically and detects the delimiter.

  3. 3

    Confirm detected delimiter

    Check the delimiter badge. For US English Excel it will be comma; for European locales it will be semicolon. Override if needed using the delimiter selector.

  4. 4

    Convert and review

    Click Convert. Scan the preview for any cells that look wrong, particularly long numeric strings that Excel may have converted to scientific notation.

  5. 5

    Download the JSON

    Copy or download the result. The output uses UTF-8 encoding with no BOM, matching the convention for JSON files served over HTTP.

Real-world examples

Common situations where this approach makes a real difference:

US English Excel export to API

A sales analyst exports a contact list from Excel for Microsoft 365, saves as CSV UTF-8, and converts in FixTools. The JSON array goes directly to the marketing automation API in a single batch request.

German Excel with semicolons

A Berlin-based developer exports a CSV from Excel in German locale. The file uses semicolons and commas inside numbers. Auto-detection picks the semicolon delimiter and the conversion works on the first try.

Excel Online quick conversion

A consultant downloads a CSV from a shared Excel Online workbook and converts it without opening it in desktop Excel. The browser-based tool fits the cloud-native workflow.

Phone numbers and IDs preservation

A user exports a list with phone numbers that Excel formatted as text via the Text format option. After conversion, the phone numbers retain their leading zeros and full digits instead of being converted to scientific notation.

When to use this guide

When your CSV came from Microsoft Excel, Excel for Mac, or Excel Online.

Pro tips

Get better results with these expert suggestions:

1

Always pick CSV UTF-8 from Save As

In Excel, the plain CSV option uses the system encoding which can be Windows-1252 or another non-UTF-8 codepage. CSV UTF-8 preserves non-ASCII characters like accented letters and emoji. Always use UTF-8 unless the consumer specifically requires another encoding.

2

Format ID columns as Text before exporting

To preserve leading zeros on postcodes, account numbers, and IDs, set the column format to Text in Excel before typing the values. This prevents Excel from interpreting them as numbers and silently stripping zeros.

3

Avoid scientific notation on long numbers

Numeric strings longer than 15 digits get converted to scientific notation by Excel on display, which is preserved in CSV export. Format such columns as Text before entering data, or prefix the value with an apostrophe to force text mode.

4

Use Get Data for round-tripping

If you need to edit the JSON output in Excel later, use the Get Data feature to import JSON files. This preserves the structure better than copy-paste and lets you round-trip CSV-JSON-CSV without progressive data loss.

5

6

7

FAQ

Frequently asked questions

Yes. Excel saves UTF-8 CSV files with a three-byte BOM at the start. The converter detects and strips the BOM silently before parsing, so the first header reads cleanly without a stray invisible character glued to it.
Auto-detection identifies the semicolon delimiter automatically. This is common for Excel installations in German, French, Spanish, and other locales where comma is the decimal separator. You can also override manually using the delimiter selector.
Only if the column stays as strings rather than being inferred as numeric. To preserve leading zeros, format the source column as Text in Excel before entering values, or disable type inference for that column in the converter settings.
Dates exported as text strings like 2024-05-30 stay as strings in the JSON output. Dates that Excel exported as serial numbers will appear as numbers in JSON. Consumers needing date types should parse the string format on the receiving end.
Excel converts numeric strings over 15 digits to scientific notation on display and on CSV export. The conversion is destructive at the Excel side; the converter cannot recover the original value. Format the column as Text in Excel before entering values to preserve them.
Yes, as long as you used the CSV UTF-8 export option in Excel. The plain CSV option may use Windows-1252 or another codepage that loses some non-ASCII characters. Always pick UTF-8 for international content.
No. Excel sometimes includes trailing empty columns from cells that were never typed into. The converter prunes them automatically so the JSON has only the columns with actual data.
Not directly with this tool, which expects text CSV input. To convert .xlsx files, save them as CSV from Excel first, or use a dedicated XLSX-to-JSON converter that reads the binary format directly.

Related guides

More use-case guides for the same tool:

Ready to get started?

Open CSV to JSON to review its free limits and processing method.

Try the CSV to JSON converter

Free tier · No account needed · Transparent limits

Source-backed reference

JSON standards quick reference

Concise, standards-backed facts for developers working with JSON debugging and validation. Each rule links to a primary specification so it can be independently verified before you rely on it in code, documentation, or an incident report.

JSON standard
RFC 8259 defines JSON as a text format for serializing structured data. JSON values may be objects, arrays, strings, numbers, true, false, or null.
Verify in RFC 8259
Strings and object keys
JSON strings and object member names use double quotation marks. Single-quoted strings are not valid JSON syntax.
Verify in RFC 8259 §7
Trailing commas
The JSON grammar does not allow a comma after the final member of an object or the final element of an array.
Verify in RFC 8259 §4–5
Interoperability
ECMA-404 describes the JSON syntax independently of any programming language, which is why standard parsers can exchange the same JSON text across runtimes.
Verify in ECMA-404

Common invalid → valid JSON examples

Trailing comma

{"a":1,}{"a":1}

Single-quoted key

{'a':1}{"a":1}

Unsupported literal

{"score":NaN}{"score":null}

Built for verification, not just extraction

Direct answers are paired with primary sources and concrete examples. That makes this page useful to developers and also gives search and answer systems a clear, verifiable statement to reference instead of an unsupported summary.