JSON to CSV for Excel
Excel is the world's most-used data tool, but it is also famously picky about CSV.
Native JSON tool
JSON to CSV
UTF-8 BOM for Windows Excel
CRLF line endings by default
Semicolon delimiter for European Excel
Opens cleanly on first try
- Cost
- Free tier
- Sign-up
- Not required
- Processing
- Tool-specific
- Privacy
- Clearly disclosed
Add this JSON to CSV to your website
Drop the JSON to CSV 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/json-to-csv?embed=1"
width="100%"
height="780"
frameborder="0"
style="border:0;border-radius:16px;max-width:900px;"
title="JSON to CSV by FixTools"
loading="lazy"
allow="clipboard-write"
></iframe>Attribution-friendly: a small "Powered by FixTools" link appears in the embed footer.
Why Excel needs special-case CSV settings
Excel's CSV import behaviour is a product of decades of decisions that pre-date Unicode and pre-date the modern web. On Windows, Excel uses the byte-order mark (BOM) to detect UTF-8. Without the BOM, Excel falls back to the system code page, which on most installations is Windows-1252 or a regional variant. UTF-8 files without a BOM appear with mangled accented characters when opened on Windows Excel: é shows as é, ñ shows as ñ, and emoji turn into question-mark glyphs. FixTools writes a UTF-8 BOM at the start of the file by default, which is three bytes (EF BB BF) that Excel recognises and uses to switch to UTF-8 mode for the rest of the read.
The delimiter is the other obvious Excel gotcha. Excel for English-locale Windows users expects commas, which is the obvious default. Excel for German, French, Spanish, Italian, and most other continental European locales expects semicolons because comma is the decimal separator in those locales and would conflict with numeric values. A comma-delimited CSV opened on German Excel shows every row collapsed into the first column, and the user has to invoke the Text Import Wizard to split it manually. FixTools offers a delimiter dropdown so you pick the right separator before downloading, and the URL captures your choice for next time.
Line endings are the subtle catch. The RFC 4180 specification mandates CRLF for CSV, and modern Excel handles both CRLF and LF correctly on import. Older Excel versions and some integration endpoints still insist on CRLF, so FixTools defaults to CRLF for maximum compatibility. If you are feeding the CSV to a Unix-native pipeline that expects LF, switch the setting and the file is regenerated with LF only.
Quoting style matters less than encoding and delimiter but still catches edge cases. RFC 4180 mandates double-quote enclosure for any field containing a comma, newline, or double quote, and doubling of literal double quotes inside such fields. FixTools quotes only when needed by default, which keeps the file readable, and offers a quote-all-fields option for downstream tools that prefer it. Either style opens correctly in Excel.
How to use this tool
Convert JSON to CSV with Excel-friendly defaults: UTF-8 BOM, CRLF endings, comma or semicolon delimiter for English or European Excel.
How It Works
Step-by-step guide to json to csv for excel:
- 1
Paste JSON
Drop your JSON file or paste the JSON text into the editor. The parser reports the array length and key count so you have a sense of the CSV size before downloading.
- 2
Pick your Excel locale
Choose comma delimiter for English-locale Excel or semicolon delimiter for German, French, Spanish, and most other European locales. The default is comma; switch to semicolon if you know your recipient is in continental Europe.
- 3
Confirm BOM and line endings
Leave UTF-8 BOM enabled for Windows Excel users. Leave CRLF line endings enabled for maximum Excel compatibility. These are the defaults.
- 4
Download and open in Excel
Download the CSV and double-click it on Windows or macOS. Excel opens the file directly with correct columns, correct character encoding, and no Text Import Wizard prompt.
Real-world examples
Common situations where this approach makes a real difference:
Finance team weekly reconciliation
A finance team gets a weekly JSON export from their billing system. They use Windows Excel in English locale. FixTools with UTF-8 BOM and comma delimiter produces a CSV that opens with correct columns and correct customer names with accented characters on first try, saving the team a Text Import Wizard step every Monday morning.
German marketing analyst
A German marketing analyst gets JSON from a campaign tool. Excel installed in German locale would mangle a comma-delimited CSV. FixTools with semicolon delimiter produces a file that opens cleanly into columns on first try, no manual reimport.
Operations dashboard refresh
An ops manager refreshes a dashboard fed by a CSV that originates from a nightly JSON dump. The refresh requires the CSV to load via Power Query in Excel without prompts. FixTools settings produce a file that Power Query ingests cleanly every night without user intervention.
Sales rep weekly pipeline export
A sales rep exports their pipeline as JSON from a CRM and opens it in Excel to share with their manager. FixTools defaults produce a clean CSV with international customer names rendered correctly and columns separated as expected.
Pro tips
Get better results with these expert suggestions:
Always include the BOM for Windows recipients
If your recipient might be on Windows Excel, the BOM is essentially free insurance. It adds three bytes and ensures international characters render correctly. macOS Excel handles both BOM and no-BOM files cleanly, so including the BOM is the safe default for mixed audiences.
Detect the recipient locale before sending
When sending CSVs across geographies, a one-line question to the recipient about their Excel locale saves a frustrating round-trip. German, French, Spanish, Italian, Dutch, and Portuguese locales generally want semicolons. English (UK, US, AU, IE) and most Asian locales want commas. When in doubt, send both versions.
Avoid leading zero loss with explicit text marking
Excel strips leading zeros from values it interprets as numbers, which mangles ZIP codes and product SKUs. To preserve them, prefix the value with an apostrophe in the source JSON, or wrap it in ="value" in the CSV. Both signal text to Excel and prevent numeric coercion on open.
Test the file with double-click on a real Windows machine
CSV behaviour differs subtly between Excel for Windows and Excel for Mac. If your audience is primarily on Windows, do the final compatibility test on a Windows machine. Mac-only testing can give a false sense of compatibility for issues that only manifest under Windows code page assumptions.
Frequently asked questions
Related guides
More use-case guides for the same tool:
Related tools
Other tools you might find useful:
Ready to get started?
Open JSON to CSV to review its free limits and processing method.
Open JSON to CSV →Free tier · No account needed · Transparent limits