# Import customers

> Bring in contacts from Klaviyo, Mailchimp, Shopify or a spreadsheet as a CSV file. Match the columns, then people are added or updated, never doubled.

Source: https://datacenter.so/docs/import-customers
Section: Measure

Import a list of people from any tool: an export from your email tool, Klaviyo, Mailchimp or Shopify, or a spreadsheet saved as CSV. Each person gets a [customer profile](https://datacenter.so/docs/customer-profiles), and someone who is already there is updated, not added twice. People who unsubscribed stay unsubscribed.

An import is a one-time catch-up. From then on, new people arrive on their own, without importing again: the ways are under **How people are added** on the Profiles tab: your tag (sign-ups, sign-ins and forms), Shopify, Stripe, Klaviyo or Mailchimp.

Import is on paid plans: Solo, Studio, Agency and Custom. Free does not include it.

## Import a list

1. Open the site, then **Profiles**, then **Import** (or **Import a list**).
2. **Choose a list.** Drop the CSV file on the box, pick it, or paste the rows. The first line must name the columns, like `Email, First name, Phone`. Commas, semicolons and tabs all work.
3. **Match columns.** Datacenter guesses what each column holds. Check each one and change it if needed. The first 3 rows show below, as they will be read.
4. If the list has no email status column, answer **Did these people agree to hear from you by email?** It starts on **No, or not sure**. **Yes** notes their consent on each profile, with the date and the file. **No** means they get no marketing email until they opt in (see below).
5. Tick the box to confirm these people gave you their details and you may use them.
6. Press **Import**. The list is sent once, then Datacenter imports it on its own. You can close the page: the import keeps going, and we email you when it is done. While the page is open it shows the progress.

**Recent imports**, under the box, lists each import with where it stands: **Running** (how far along), **Done** or **Failed** (and why), with how many people were added, merged, unsubscribed and skipped, and why rows were skipped.

## Columns

| Pick | Means |
|---|---|
| Email | The email address. Used to match people |
| Phone | The phone number, with the country code if you have it. Used to match people |
| First name, Last name | Joined into one name |
| Full name | The whole name in one column |
| Id in your other tool | Their id in the tool you exported from. Used to match the same list next time |
| Email status | Whether they may get email. Subscribed, confirmed, opted in or yes notes their consent. Unsubscribed, bounced, cleaned, complained, spam or no marks them unsubscribed. Anything else, such as never subscribed, pending or blank, means they did not agree. A column named **Unsubscribed** or **Opted out** reads yes and no the other way round |
| Date they joined | When they joined the other tool, like `created_at` or **Date added**. It becomes their first seen date when it is earlier |
| Tags | Words split by commas, like `vip, spring-sale`. Each becomes a tag on the profile, up to 10 |
| Custom property | Shown on the customer page under **Details**, named after the column |
| Do not import | Left out |

You need at least one of Email, Phone or Id. A column named like a password, card number or secret is never imported.

## Matching

Datacenter matches each row the same way it matches people from your site and your connected tools:

- The same email, in any case, is the same person. So is the same phone number.
- A row that matches someone already here updates them: a new name, phone or detail is added, and a property with the same name is replaced.
- Two rows for the same person in one file become one customer.
- When a row shows that two existing records are one person, they merge. The customer page says why.
- An email you were asked to forget (**Forget this email**) is never added back.
- Someone who unsubscribed here, by a link or a reply, stays unsubscribed even if the list says subscribed.

## Unsubscribed people

A row whose email status says unsubscribed, bounced or complained is still imported, so their history stays in one place. Their profile shows the email as unsubscribed, and the address goes on the site's do-not-email list. Automations and messages never email them.

## People who did not agree

When you answer **No, or not sure**, or a row's status is not subscribed, each new person's profile shows the email as **Not agreed**. Flows, one-off messages and campaigns skip them, until they opt in:

- They give their email on a form on your site.
- A later import marks them subscribed.

If they write to you, you can still reply from **Messages**. People who were already here before the import keep what they had.

Imported people show **Import** under **Came from** on the list. Filter by **Came from**, then **Imported lists**, to see only them.

## The summary

When it is done we send you one email with how many people were added, merged and skipped, and a link to them. The import's page shows how many people were **added**, **merged** with someone already here, came in **unsubscribed**, and were **skipped**, and how many never agreed to email, and why rows were skipped. **See who was imported** opens the list with only them:

| Reason | Means |
|---|---|
| No email, phone or id | The row had nothing to match on |
| Email is not valid | The email could not be read, and there was no phone or id |
| Id has spaces or symbols | Ids may use letters, digits and `. _ - : ~ @ +` |
| Asked to be forgotten | The email or phone was forgotten on this site |

The first skipped row numbers are listed. Row 1 is the header.

## If an import stops

If something keeps failing on our side, Datacenter tries again a few times, then stops the import and emails you once. Import the list again: people already imported are matched, never added twice. An import that has not finished after 7 days stops the same way. If the page closes while the list is still being sent, before it says you can close it, the import never starts: import the list again.

## Limits

- Up to 100,000 rows and 20 MB per file, and up to 50 columns. Split a bigger list into several files.
- A big list takes a while, from minutes to hours. People who are already here take longest, since each one is matched and merged on its own.
- Up to 10 imports per site per day.
- Up to 30 custom properties per person, each up to 200 characters.

## Privacy

- While the import runs, its rows wait encrypted, bound to your site, with only the columns you kept. Each part is deleted as soon as it is imported, and the rest when the import ends. Anything left after 7 days is deleted, finished or not.
- Emails, phones, names and properties are kept encrypted, and only while **Show contact details** is on. With it off, only hashed emails and phones are kept. See [Profiles](https://datacenter.so/docs/customer-profiles#privacy).
- Imported details never go into your stats or to Meta.
- Import only people who gave you their details. Name Datacenter in your privacy policy.
