Format Your CSV for Mailchimp, Klaviyo, or HubSpot Import
Table of Contents
Every marketing platform has a different naming convention for CSV import columns. What Mailchimp calls "First Name", Klaviyo calls "first_name". What HubSpot calls "Lifecycle Stage", QuickBooks does not have at all.
Before you can import a contact list or customer export into any of these tools, you usually need to rename your CSV column headers to match what each platform expects. This guide covers the exact column names for the four most common marketing and business platforms, and how to do the renaming quickly with the CSV Column Mapper.
Mailchimp: Required and Common Column Names
Mailchimp's required column for any import is "Email Address". Everything else is optional but needs to match your list's merge tags.
Default Mailchimp merge tags and their column names:
| Your CSV header | Mailchimp merge tag / column name |
|---|---|
| email / email_address | Email Address |
| first_name / fname | First Name |
| last_name / lname | Last Name |
| phone / phone_number | Phone Number |
| address1 / street | Address |
| city | City |
| state / region | State |
| zip / postal_code | Zip |
| country | Country |
If you have custom merge tags in your Mailchimp audience (like "Company" or "Purchase Date"), the column header in your CSV needs to match the merge tag label exactly. Check your audience settings under Manage Contacts to see all merge tags and their labels.
Klaviyo: List Import Column Names
Klaviyo uses lowercase snake_case for standard properties:
| Your CSV header | Klaviyo property name |
|---|---|
| email / Email Address | |
| First Name / fname | first_name |
| Last Name / lname | last_name |
| phone / Phone Number | phone_number |
| city | city |
| region / state | region |
| country | country |
| zip / postal_code | zip |
| organization / company | organization |
Klaviyo is more forgiving than Mailchimp — unrecognized column names during import become custom profile properties automatically. So if your CSV has "company_size" and Klaviyo does not have that as a standard property, it just creates a custom property with that name. You do not need to rename everything.
The one column you must get right: "email" (all lowercase). Without a valid email column, Klaviyo cannot create or match profiles.
HubSpot: Contact Import Column Names
HubSpot's import system is the most flexible of the four — it shows you a column mapping step where you can drag and drop your CSV columns to the correct HubSpot properties. But matching column names to property names speeds up the process significantly.
Common HubSpot contact property names:
| Your CSV header | HubSpot property name |
|---|---|
| email / Email Address | |
| fname / First Name | First Name |
| lname / Last Name | Last Name |
| phone / phone_number | Phone Number |
| company / organization | Company Name |
| job_title / title | Job Title |
| city | City |
| state / region | State/Region |
| zip / postal_code | Postal Code |
| country | Country/Region |
| website / url | Website URL |
HubSpot also accepts Lifecycle Stage values directly from CSV: "Subscriber", "Lead", "Marketing Qualified Lead", "Sales Qualified Lead", "Opportunity", "Customer", "Evangelist". If your list is segmented by stage, you can include a "Lifecycle Stage" column with these exact values and HubSpot will set the stage on import.
Sell Custom Apparel — We Handle Printing & Free ShippingQuickBooks: Customer List Import
QuickBooks Online has a specific CSV format for importing customers. The required column is "Customer Display Name" — without it, the import fails.
QuickBooks customer import columns:
| Your CSV header | QuickBooks expects |
|---|---|
| company / business_name | Customer Display Name |
| First Name | First Name |
| Last Name | Last Name |
| email / Email Address | |
| phone / Business Phone | Phone |
| website | Website |
| street / address1 | Billing Address Line 1 |
| city | Billing City |
| state | Billing State |
| zip / postal_code | Billing Zip |
| country | Billing Country |
One issue with QuickBooks imports: "Customer Display Name" must be unique. If you are importing 500 customers and two of them have the same display name, QuickBooks will reject or skip the duplicate. Deduplicate on this column first using the CSV Deduplicator.
How to Rename Your Columns in 2 Minutes
The process is the same regardless of the target platform:
- Open the CSV Column Mapper.
- Drop your CSV or paste the data.
- Find your email column and rename it to what the target platform expects ("Email Address" for Mailchimp, "email" for Klaviyo, "Email" for HubSpot).
- Rename first name, last name, phone, company, and any other columns you are importing.
- Delete columns the platform does not accept — internal IDs, source system fields, anything not in the target schema.
- Click Preview. Check that the first few rows look correct.
- Download and import.
The whole process takes 2-3 minutes once you know the target column names. For recurring imports — monthly customer syncs, weekly lead imports — the mapping is the same every time. After a few imports, you will know your platform's required headers by memory.
The Import Errors That Kill a Clean CSV Upload
Even with correct column names, a few data issues cause imports to fail or produce bad results:
Invalid email formats. All four platforms validate email addresses. Rows with malformed emails ("john@" or "notanemail") either fail or get skipped silently. Run a quick validation through the Email Validator before importing — it flags invalid formats, disposable domains, and role-based addresses in bulk.
Phone number formatting. Each platform handles phone formats differently. If yours expects E.164 format ("+15551234567") but your CSV has "(555) 123-4567", the import might succeed but the number displays inconsistently. The CSV Sanitizer normalizes phone numbers.
Duplicate email addresses. Importing the same email twice either creates duplicates or the second record overwrites the first — depending on the platform's deduplication behavior. Clean duplicates before importing with the CSV Deduplicator.
Extra spaces in email or name columns. " [email protected]" (with leading spaces) is technically a different string from "[email protected]". Most platforms trim these automatically, but not all. The CSV Sanitizer trims whitespace in one click.
Try It Free — No Signup Required
Runs 100% in your browser. No data is collected, stored, or sent anywhere.
Open CSV Column MapperFrequently Asked Questions
What if my platform is not covered here?
Most platforms have import documentation that lists required and supported column names. Search for "[Platform Name] CSV import template" or "[Platform Name] required column headers" — usually their help docs include a downloadable sample CSV with the exact column names you need.
Does Mailchimp update existing subscribers on re-import?
Yes. If a contact with the same email address already exists in your audience, Mailchimp updates that contact with the values from your CSV rather than creating a duplicate. This is useful for updating segments, adding tags, or syncing new data.
Can I import custom fields into HubSpot via CSV?
Yes. If you have a custom contact property in HubSpot, the CSV column name just needs to match that property name exactly (including capitalization). Create the custom property in HubSpot first, then include the matching column in your CSV.
Klaviyo rejected my import because of phone number format — how do I fix it?
Klaviyo requires phone numbers in E.164 format: +15551234567. Use the CSV Sanitizer to normalize phone numbers to digits-only first, then add the country code prefix. For a US-only list, prepend +1 to 10-digit numbers.

