How to Migrate Your Email List to a New ESP Without Destroying Deliverability

workerslab ·

A Shopify store owner I know switched from Mailchimp to Klaviyo last spring. Exported the list on a Friday, imported it Saturday, sent a campaign Monday. Bounce rate hit 6.2%. Gmail throttled her within hours. Her inbox placement dropped from 94% to 61% and stayed there for five weeks.

She didn’t have a bad list. She had a bad migration.

Switching ESPs is one of the highest-risk moves you can make for your email program. The actual platform change takes a day. Protecting your deliverability through the transition takes 2-4 weeks of deliberate work. Skip that work and you’re gambling with every dollar your email channel generates.

Why ESP Migrations Tank Deliverability

Your sender reputation doesn’t transfer between platforms. It’s tied to the sending infrastructure: the IPs, the domain authentication records, the engagement history that inbox providers have built up over months of watching your sends.

When you move to a new ESP, you’re starting on new sending infrastructure. New IPs with zero reputation. New DKIM keys that inbox providers haven’t seen before. If your new ESP uses shared IPs, you inherit whatever reputation the other senders on that pool have built (or destroyed). If you’re on a dedicated IP, you’re starting from scratch.

At least 23% of email lists degrade annually, according to ZeroBounce’s 2025 analysis of 11 billion verified addresses. That means your list has been quietly accumulating dead addresses since the day you last cleaned it. Migrate that decay to a new ESP and your very first sends start bouncing. On infrastructure with no positive reputation to absorb the hit.

That’s the double punch. New infrastructure with no trust, combined with a list full of addresses you haven’t verified in months.

Step 1: Clean Your List Before You Touch the New ESP

This isn’t optional. Don’t export a single contact until you’ve validated your entire list.

Run every address through a validation service that checks syntax, MX records, SMTP deliverability, and disposable domain detection. You’re looking for hard bounces, dead domains, spam traps, and addresses that have gone inactive since your last cleanup.

For a 30,000-contact Shopify store list that hasn’t been cleaned in six months, expect 8-12% of addresses to come back invalid or high-risk. That’s 2,400-3,600 contacts you’d be importing into a brand-new platform with zero reputation cushion. Remove them now.

The email validation ecommerce guide covers the full validation workflow. For migration specifically, pay attention to catch-all domains and “risky” results. On your existing ESP, these addresses had the benefit of your established reputation. On a new platform with no sending history, they’re more likely to bounce or trigger spam filters.

Step 2: Segment by Engagement Before You Export

Not all contacts are equal during a migration. You need three segments.

90-day engaged: Opened or clicked in the last 90 days. These are your gold contacts. They’ll generate the positive engagement signals (opens, clicks, replies) that build your reputation on the new ESP. You’ll send to this group first.

The second segment is your 180-day engaged group. Opened or clicked in the last 180 days but not the last 90. These contacts are lukewarm. They go into your second wave of sends, after your reputation has some momentum.

Everyone else is your inactive segment. Haven’t engaged in over 180 days. Don’t migrate them at all until your new ESP reputation is established. Some of these contacts should probably be suppressed permanently. The ones worth keeping get a re-engagement campaign from the new platform after week four.

Why does this matter? Your first sends on a new ESP set the tone for your entire reputation. If those first emails generate high opens and low bounces, inbox providers start trusting your new infrastructure fast. If they bounce and get ignored, you’re digging out of a hole from day one.

Step 3: Update Your DNS Records

DNS migration is where store owners make the most preventable mistakes. Your SPF, DKIM, and DMARC records need to reflect your new ESP’s sending infrastructure before you send a single email.

Here’s the sequence:

Add your new ESP’s SPF include statement to your existing SPF record. Don’t remove the old one yet. During the transition, both ESPs will be sending on your behalf. SPF records allow a maximum of 10 DNS lookups, so check that adding the new include doesn’t push you over that limit. If it does, you’ll need to consolidate.

Set up DKIM signing with your new ESP. Every platform generates its own DKIM keys. Klaviyo, ActiveCampaign, Omnisend all require you to add CNAME or TXT records to your domain’s DNS. Do this and wait 48 hours for propagation before your first send.

Keep your DMARC policy at p=none during the transition if you haven’t already moved to quarantine or reject. Monitor your DMARC reports for alignment failures from the new ESP. Once you’ve confirmed both SPF and DKIM are passing consistently on the new platform, remove the old ESP’s records.

The email domain warming playbook walks through the technical details of DNS authentication setup. Don’t skip this step. Sending from a new ESP without proper DKIM alignment is one of the fastest ways to land in spam.

Step 4: Warm Up on the New ESP

If your new ESP puts you on shared IPs (the default for most Klaviyo, Omnisend, and ActiveCampaign plans), you’re inheriting the pool’s existing reputation. Warming is faster but not instant. Plan for two weeks of careful monitoring.

Start by sending only to your 90-day engaged segment. Keep volume low for the first week. If you normally send three campaigns per week, send one. Watch your bounce rate, open rate, and spam complaint rate after every send. Bounce rate should stay under 0.5%. Spam complaints under 0.1%.

Dedicated IPs are a different story. You’re building reputation from zero. Klaviyo’s warming process runs 30-40 days, gradually shifting volume from shared IPs to your dedicated ones. During the first two weeks, Klaviyo recommends sending only campaigns (not flows) through the dedicated IP. High-engagement flows like welcome series can start after week two. Re-engagement and sunset flows wait until after day 30.

Does your store send over 100,000 emails per month? That’s roughly the threshold where a dedicated IP makes sense. Below that volume, you won’t generate enough engagement data to maintain healthy IP reputation on your own. Stick with shared.

The difference between email warmup and validation matters here. Warming builds reputation with inbox providers. Validation ensures the addresses you’re warming with are real. You need both. Warming with a dirty list is worse than not warming at all.

Step 5: Run Both ESPs in Parallel

Don’t flip the switch overnight. Keep your old ESP active during the transition.

Week one, send 20-30% of your volume through the new ESP (your most engaged segment). The rest goes through your old platform as usual. Your subscribers don’t notice a thing. But you’re building reputation on the new infrastructure with your safest contacts.

Week two, shift to 50/50. Monitor deliverability on both platforms. Compare open rates, bounce rates, and spam complaints side by side. If the new ESP’s metrics look healthy, you’re on track.

Week three, move to 70-80% on the new ESP. Your old platform handles the remaining sends as a safety net.

Week four, cut over completely. Deactivate sending on the old ESP but keep the account active for 30 more days. You’ll need access to historical data, and if something goes wrong, you want the option to fall back.

This gradual shift protects you from the scenario that kills most migrations: sending your full list volume on day one through infrastructure that isn’t ready for it.

Step 6: Rebuild Flows and Automations

Your automations don’t migrate automatically. Flows, segments, triggers, custom properties, and conditional logic all need manual recreation on the new platform. This is tedious but not optional.

Map every active flow from your old ESP before you start building. Cart abandonment, welcome series, post-purchase, winback, browse abandonment. Document the trigger conditions, timing, and any conditional splits.

Segment logic is the trickiest part. Segments that relied on ecommerce events (placed order, viewed product, added to cart) need your Shopify integration fully configured and syncing data before they’ll work correctly on the new platform. Build the segments, then verify they’re populating with the right contacts before you activate any flows.

Custom properties need mapping too. If you stored custom data in Mailchimp (tags, merge fields, custom fields), those field names won’t match the new ESP’s schema. ActiveCampaign and Klaviyo structure contact data differently. Plan the mapping before you import.

Turn flows on gradually. Welcome series first (after week two of warming). Cart abandonment second. Post-purchase third. Save re-engagement flows for last. Each flow activation adds sending volume, so pace it to match your warming schedule.

The Migration Timeline

Here’s the full picture, condensed.

Weeks 1-2 (pre-migration): Validate your entire list. Remove invalids. Build engagement segments. Set up DNS records on new ESP. Confirm DKIM, SPF alignment. Start rebuilding flows.

Week 3: Begin sending to your 90-day engaged segment on the new ESP. Keep old ESP handling the rest. Monitor every metric. Fix any DNS alignment issues that show up in DMARC reports.

Week 4: Expand to your 180-day engaged segment. Shift 50-70% of volume to the new ESP. Activate welcome series and cart abandonment flows. Continue monitoring.

Week 5: Full cutover. All volume on the new ESP. Deactivate old ESP sending. Run one final list validation to catch any addresses that bounced during transition.

Rushing this timeline is how you end up like the store owner in the opening paragraph. Four weeks feels slow when you’re paying for two ESPs simultaneously. But a deliverability crater that takes six weeks to recover from costs far more.

Common Mistakes That Wreck Migrations

Migrating your full list (including invalids and unengaged contacts) to the new ESP on day one. This is the number one cause of post-migration deliverability crashes.

Forgetting to import your suppression list. Every hard bounce, unsubscribe, and spam complaint from your old ESP needs to be suppressed in the new one. Miss this and you’re emailing people who already told you to stop. Spam complaints spike. Reputation tanks.

Not updating DNS records before the first send. Your new ESP’s emails fail DKIM checks, and inbox providers flag them immediately.

Sending to your full list on the new ESP before warming is complete. Volume spikes on new infrastructure look exactly like spam to inbox providers.

Not reducing email marketing costs by cleaning before migration. You end up paying two ESPs for the same dead contacts during the overlap period.

After the Migration

Run another full list validation 30 days post-migration. The transition itself shakes loose addresses that were borderline. Catch them before they accumulate.

Set up real-time validation on every entry point. Popups, checkout, account creation. New addresses should be verified before they enter your ESP. You just spent a month building reputation on clean infrastructure. Protect it.

Check your deliverability dashboard weekly for the first two months. Watch for any drift in inbox placement, bounce rates, or spam complaints. The first 60 days on a new ESP set the baseline for everything that follows.

Your ESP is a tool. Your list quality is the asset. Migrate the tool carefully, and the asset keeps generating revenue. Rush it, and you’ll spend the next quarter rebuilding what took years to build.