Mailchimp contact imports fail when French spreadsheets use semicolons
French-locale spreadsheets save CSV files with semicolons, which breaks Mailchimp contact imports; here is how to fix the delimiter safely.
A regional spreadsheet setting is quietly breaking contact imports into Mailchimp, and the pattern is easy to misread as a corrupted file. Spreadsheets configured for French save CSV files with semicolons between fields. Mailchimp’s import tool expects commas. The outcome is a file the tool cannot parse, and a contact list that never arrives.
The symptoms
The failure tends to look the same from one case to the next. The file uploads, but the preview shows one jumbled column where separate fields for email address and names should be. In other cases the tool rejects the file outright and no contacts appear. Imports can also finish with an audience count that falls short of the rows in the file. None of this means the data is bad. The file is well formed; it just uses a separator the importer does not expect.
The separator behind the failure
Spreadsheet apps take their list separator from the operating system’s regional settings. On French systems that separator is the semicolon, because the comma already has a job there: it marks decimals in numbers. Export a sheet to CSV on a French machine and every field arrives separated by semicolons. Mailchimp parses comma-separated files, and the same requirement applies to TXT uploads. The vendor’s import guidance is blunt about the remedy: if the file contains semicolons, replace them with commas and run the import again.
The decimal comma trap
A blunt find-and-replace can corrupt the very data you are trying to import. French numbers use the comma as a decimal mark, so a cell reading 1250,50 holds a comma that belongs to the value. Swap every semicolon for a comma and the file now contains two kinds of comma doing two different jobs. The importer cannot tell them apart. A revenue figure can split in half, and a stray fragment can slide into the next column.
Clean the numbers before touching the separators. Format numeric columns as text, or turn decimal commas into periods, so the only commas left are structural ones.
The fix, step by step
- Open the CSV in a plain text editor first, before any spreadsheet touches it. The raw view shows the actual separators in seconds.
- In the spreadsheet, format numeric columns as text or replace decimal commas with periods. Keep the columns Mailchimp can map: email address is required, and names and phone numbers are optional.
- Export the cleaned sheet to CSV.
- Open that file in the text editor and replace every semicolon with a comma. Save it there, in the editor, and treat this copy as the import file.
- In Mailchimp, open the audience dashboard, select the audience, and choose the contact import option under the audience management menu. Upload the corrected file, check the column mapping in the preview, and confirm.
The re-export trap
The correction does not survive a return trip through the same spreadsheet. A sheet set to French writes semicolons again the next time anyone exports it to CSV. An import that worked last quarter can fail again with the data untouched. Break the cycle one of three ways.
Keep the corrected comma-separated copy as a separate file that never passes through the French spreadsheet again. You can also change the spreadsheet’s locale setting to a comma-using region, such as the United States, before exporting. The third option abandons files: the importer accepts rows copied and pasted straight from Excel or Google Sheets, plus direct entry in the import table. Pasting sidesteps separators entirely, because you hand over rows rather than a file format.
A route with no file at all
Mailchimp can also pull contacts from a connected app, and QuickBooks sits on that short list alongside services such as Shopify, WooCommerce, and Salesforce. You connect the app from the import screen, and the contacts move across without a CSV ever being written. For a business whose customer list already lives in QuickBooks, this is the cleanest path and the one least exposed to delimiter trouble.
Limits that apply during the import
The guidance attaches conditions worth checking before any upload. The free plan, as last stated, caps contacts at 500 and monthly sends at 1,000, with 500 sends permitted per day. An import that pushes your contact count past your plan’s allowance triggers additional charges rather than a blocked upload. Each import also carries a single email marketing status, so a list mixing subscribed and unsubscribed contacts must be split and run twice. The guidance covers email contacts only; SMS marketing contacts follow a separate process. None of these limits cause the semicolon failure, but each can make a successful import cost more, or deliver less, than you expected.
The delimiter itself is a five-minute repair once you can see it in a text editor. The lasting habit is keeping the corrected file out of the French spreadsheet’s reach, or skipping CSV altogether in favor of a paste or a direct connection.