AboutWorkBlogResourcesContact
← Back to Blog
Operations·Jan 2026·10 min read

The ESP Migration Playbook: How to Switch Without Losing Revenue

I've migrated across Klaviyo, Omnisend, ActiveCampaign, HubSpot, Customer.io, and SFMC. Here's what actually matters.

Let's face it, ESP migrations are a damn nightmare. Get it wrong and you're looking at months of deliverability issues, broken automations, and a serious hit to your revenue. But get it right, and nobody even notices. Which, honestly, is the whole point.

I've worked with six ESPs: Klaviyo, ActiveCampaign, HubSpot, Customer.io, Omnisend, and Salesforce Marketing Cloud. The hardest migration I've ever led was from ActiveCampaign to HubSpot for Zendrop. Over 4 million registered users, dozens of active automations, and a revenue engine pulling in six-figure annual subscription revenue through email. We didn't lose a single penny during the migration. Here's exactly how we did it.

When to Migrate (And When Not To)

Not every frustration with your ESP means it's time to migrate. Migrations cost time, money, and attention. But there are clear signals that it's time to move.

Migrate when:

  • Your ESP can't handle your segmentation complexity and you're hacking together workarounds for basic targeting
  • You've outgrown the platform's sending infrastructure and you're hitting deliverability issues that aren't your fault
  • API limitations are blocking your product integrations
  • Pricing has become disproportionate to value, especially at scale
  • Your ESP lacks features critical to your roadmap (advanced automation logic, data warehousing, SMS integration)

Don't migrate when:

  • You're frustrated with one feature. Feature gaps can often be solved with integrations.
  • A competitor's sales team has convinced you their grass is greener
  • You haven't fully utilized your current platform's capabilities
  • You're in a peak revenue season. Never migrate during Q4 or your highest-volume period.

Phase 1: Pre-Migration (4–6 Weeks Before)

The migration starts weeks before you touch the new platform. This phase is all about documentation and planning, and it's where most teams cut corners. Don't be that team.

Pre-migration checklist:

  • Document every active automation: trigger logic, branching conditions, time delays, suppression rules. Screenshot everything.
  • Export and map your data model. Every custom field, every segment, every tag. Your new ESP won't have the same field names.
  • Audit your list. Suppress bounces, remove unsubscribes, identify never-engaged contacts. Don't migrate dead weight.
  • Map your integration stack. What connects to your ESP? CRM, ecommerce, forms, webhooks? Each integration needs a migration plan.
  • Set up domain authentication on the new platform (SPF, DKIM, DMARC). Do this early so DNS propagates before you need to send.
  • Create your IP warming plan: how many emails per day, which segments first, escalation schedule.

At Zendrop, the data mapping alone took us a week. ActiveCampaign and HubSpot handle custom fields, tags, and lists completely differently. We built a mapping document that accounted for every field transformation. Without it, we would have lost segmentation data that took months to build.

Phase 2: Data Migration

Data migration is where things get technically complex. You're moving contacts, behavioral history, engagement data, custom properties, and list memberships. Lose any of this and your segmentation breaks.

Data migration priorities:

  • Contacts with all custom fields mapped to new schema
  • Engagement history: at minimum, last email open, last click, last purchase
  • Suppression lists: unsubscribes, complaints, hard bounces. This is legally required.
  • Tag/segment membership. Recreate your segmentation logic, don't just import static lists.
  • Transactional data: purchase history, subscription status, plan tier

Run validation checks after import. Total contact counts should match. Segment counts should match. Spot-check individual records to verify field mapping. I run at least three validation passes before I'm comfortable.

Phase 3: Journey Rebuilds

This is the most important advice in this entire post: do not blindly recreate your old automations in the new platform. A migration is a forced reset. Use it to improve.

Every ESP has different strengths. HubSpot handles branching logic differently than ActiveCampaign. Customer.io's event-driven model is fundamentally different from Klaviyo's flow structure. Rebuild your automations to leverage what the new platform does best.

Journey rebuild approach:

  • Start with your highest-revenue automations: welcome series, abandoned cart, post-purchase
  • Review each flow's performance data before rebuilding. Which emails actually drive conversion?
  • Cut the underperformers. If an email in a flow has below-average engagement, don't migrate it.
  • Add improvements you couldn't do on the old platform: better branching, dynamic content, new triggers
  • QA every flow end-to-end with test contacts before going live

Phase 4: IP Warming

If you're moving to a new IP (which most migrations involve), IP warming is where your deliverability lives or dies. Send too much too fast and inbox providers flag you as spam. Send too little and you never build reputation.

IP warming schedule (adjust for your volume):

  • Day 1–3: Send to your most engaged segment only (opened or clicked in last 30 days). Start with 5,000–10,000/day.
  • Day 4–7: Expand to 60-day engaged. Double daily volume.
  • Week 2: Expand to 90-day engaged. Continue doubling.
  • Week 3: Expand to full engaged list. Monitor bounce rates and complaint rates daily.
  • Week 4: Resume normal send volume if all metrics are healthy.

Monitor inbox placement during warming, not just delivery rates. A 99% delivery rate means nothing if 40% is going to spam. Use seed testing tools like GlockApps or Litmus to verify inbox placement at Gmail, Outlook, and Yahoo specifically.

Phase 5: Go-Live & Parallel Send Period

Don't flip the switch overnight. Run both platforms in parallel for at least one week, preferably two. This means your old platform handles existing active automations while you gradually shift sends to the new one.

Go-live checklist:

  • Shift campaigns to new platform first (lowest risk)
  • Migrate automations one at a time, starting with lowest-volume flows
  • Monitor deliverability metrics daily: bounce rate, complaint rate, inbox placement
  • Keep old platform active as a fallback for at least 2 weeks
  • Communicate the migration to stakeholders. Set expectations that metrics may dip temporarily during warming.
  • Deactivate old platform automations only after new ones are confirmed working

The Goal: Nobody Notices

A successful ESP migration is invisible to the subscriber. They keep getting relevant emails, automations fire on time, and revenue doesn't dip. The work is unglamorous. Spreadsheets, field mapping, QA passes, and monitoring dashboards. But it's some of the most valuable work a lifecycle marketer can do.

At Zendrop, we migrated 4M+ users from ActiveCampaign to HubSpot with zero revenue disruption. The program went on to generate six-figure subscription revenue that year. That's what a well-executed migration looks like. Not a reset, but a launch pad.

Want to see the results?

Check out the case studies behind these strategies.