Skip to content
MergeGuard
Install free

Playbook

Clean your Shopify customer list before a migration or campaign

Shopify’s customer import matches existing customers by email or phone number and can overwrite them, so export your list, review duplicates, fix mistyped emails and set consent per channel before you import. With the overwrite option on, all of a matched customer’s data is replaced, including the import tags.

By MergeGuard team

Last updated

3 min read

On this page

A migration or a campaign sends your customer list somewhere new. Whatever is wrong with the list comes along: duplicate people, mistyped emails and consent values nobody checked. A short clean-up first costs less than repairing profiles afterwards.

Key insight

With “Overwrite existing customers” on, all customer data is replaced, including the import tags.

What import matches on

Shopify’s import page describes matching existing customers by email address or phone number. The matching it describes sits under the overwrite option, and the page does not say what happens to matches when that option is off. Check a small test file before a large import.

That means two details decide whether a row meets an existing profile. A row with a mistyped email, or a phone number in a different format, may not match the profile you meant it to.

The overwrite option

The import page offers a checkbox labeled “Overwrite existing customers that have the same email or phone number”. The page says that when it is checked, “all of your customer data is replaced, including the import tags”.

Treat it as a tool for one job: replacing customer data on purpose. Back up with an export before you tick it.

Shopify’s import file has columns for Accepts Email Marketing and Accepts SMS Marketing, and also for WhatsApp. The page says you can enter only yes or no. Each value is therefore your statement about that customer’s consent, and it should come from the records in your old platform.

For example: A made-up import row: Email is ann@example.com, Accepts Email Marketing is yes and Accepts SMS Marketing is no. Worked example (made up) The yes or no is set per channel, so a customer can accept email and decline SMS.

Consent connects to merging. Shopify says that if a customer is subscribed to email and SMS marketing in one profile but not the other, the merged profile is subscribed. If an import leaves one person on two profiles and you merge them later, one subscribed profile subscribes the merged customer. Laws about consent differ by country, so check your own.

The file itself

Shopify says the import file must be UTF-8 and 15 MB or smaller, and that the Email column must be present even if the value is blank. If the column is missing, the import fails with an error.

The page also covers duplicate rows in the file, and its two statements about them do not agree: one says duplicates are skipped and not tagged, and another says only the last duplicate profile is imported. Do not rely on either. Remove duplicates from the file first, and check what your import does with duplicate rows on a small test.

Export your current customers, Keep the file as a backup.. Clean the file, Remove duplicate rows, fix mistyped emails, set consent per channel.. Import a small test file, Check how matching and duplicate rows behave.. Import the full file, then check again, An import can add profiles for people who already exist..Export your current customersKeep the file as a backup.Clean the fileRemove duplicate rows, fix mistyped emails, setconsent per channel.Import a small test fileCheck how matching and duplicate rows behave.Import the full file, then check againAn import can add profiles for people who alreadyexist.
Clean first, import a small test, then check for new duplicates.

A pre-flight checklist

Export your current customers

Keep the CSV as a backup you can read.

Remove duplicate rows

Group rows that share an email or phone number, and decide which are one person.

Fix mistyped emails

A typo you import is a contact nobody can reach.

Set consent per channel

Use yes or no from your own records, one column per channel.

Decide on overwrite

Leave it off unless you want matched customers replaced.

Test with a small file

Check how matching and duplicate rows behave before the full import.

Import only what you need

The UK data protection guidance says you must not collect personal data on the off-chance that it might be useful. It also says to delete anything you no longer need.

After the import

An import can add profiles for people who already exist, for example when an email in the file differs from the one in the store. Run the count in how to find duplicate customers in Shopify again after the import, and compare it with the count you took before.

What not to assume

Do not assume the import fixes duplicates, because the matching described above is by email or phone number only. Do not assume your email platform’s list and Shopify’s list agree after a migration. A merge in Shopify is permanent, so plan merges after you have checked the imported profiles. For the rules, read how to merge customers in Shopify.

Step by step

  1. Export what you have

    Export your current customers to a CSV as a backup before anything changes.

  2. Remove duplicates from the file

    Find rows that share an email or phone number, and decide which belong to one person.

  3. Fix mistyped emails

    Correct typos in the file, so you do not import an address nobody can read.

  4. Set consent per channel

    Fill the Accepts Email Marketing and Accepts SMS Marketing columns with yes or no from your own records.

  5. Check the file format

    Use UTF-8, keep the file at 15 MB or less and keep the Email column, even if some values are blank.

  6. Import, then check again

    After the import, look for new duplicates, because an import can add profiles that match existing ones.

Sources