How to Migrate to Customer.io: The Complete ESP Migration Guide
How to Migrate to Customer.io: The Complete ESP Migration Guide
On the weekend of 21–22 May 1892, the Great Western Railway pulled off one of the most audacious infrastructure switches in history.
For 54 years, the GWR had run Isambard Kingdom Brunel's famous broad gauge track — 7 feet and a quarter inch wide, designed for stability and speed. It worked brilliantly. But the rest of Britain had built its railways to standard gauge (4 feet 8½ inches), and the incompatibility had become a logistical nightmare. Parliament had already ruled: standard gauge would win.
So the GWR did what everyone said was impossible. They deployed 5,000 workers simultaneously across 170 miles of track and converted the entire line in 48 hours. Every broad-gauge locomotive was moved east of Exeter before work began. Every section was planned in advance. And it was completed without a single accident.
The lesson isn't just that big migrations are possible. It's that they only work when you plan obsessively, sequence everything carefully, and know exactly what "done" looks like before you start.
Migrating your email programme to Customer.io is the same way. Done well, it unlocks a level of behavioural automation, segmentation, and personalisation that most ESPs can't touch. Done badly, it tanks your deliverability, breaks your automated journeys, and strands customers mid-sequence.
This guide walks you through the whole thing — from the first audit to your first live send on Customer.io — without breaking what already works.
Why Are Businesses Switching to Customer.io?
Before you migrate, it's worth being clear about why you're switching. The most common reason companies move to Customer.io isn't that their old ESP was broken — it's that they outgrew it.
According to Litmus research (2025), the top driver for ESP migration is needing better segmentation and data depth: "The plan we were on didn't have the segmentation we were looking for… we collect a ton of data and wanted to give it back to people."
Customer.io is purpose-built for teams who live in behavioural data. Instead of traditional list-based marketing, Customer.io's data model centres on three things:
- People — individual user profiles, equivalent to contacts
- Events — behavioural triggers like
page_viewed,trial_started, orfeature_used, stored with properties in real time - Objects — group entities like accounts, courses, or companies that users belong to (a major advantage for B2B)
For SaaS companies, mobile apps, and product-led businesses, this is transformative. You can trigger a message the moment a user does something specific — not 24 hours later when a batch sync catches up.
The other common drivers for switching: outdated automation tools, poor integration with your data stack, consolidating a fragmented martech setup, or simply the realisation that your old ESP failed at scale. As one Merkle executive put it bluntly: "Your ESP failed on Black Friday… twice."
How Long Does an ESP Migration Take?
Honest answer: longer than you think.
- Small / lean teams: 6–8 weeks
- Standard businesses: 3 months is the industry consensus
- Complex / enterprise setups: 9–15 months
- Worst documented case: up to 2 years (Ryan Phelan, CEO RPE Origins, via CMSWire, November 2024)
Kisha Anderson, a CRM Manager quoted in Litmus's migration guide, put it simply: "Ballpark how long you think it will take… then double it."
The reason migrations take longer than expected isn't technical — it's undiscovered complexity. You find automations nobody documented. Segments built on fields that don't exist in your new data model. Templates copied from a 2019 brand refresh that nobody thought to audit.
Build your timeline around what you find, not what you hope.
What's the Biggest Risk During an ESP Migration?
Deliverability. Every time.
When you switch ESPs, your sending IP addresses change. New IPs have zero sender history with inbox providers like Gmail and Microsoft. They don't know you're a legitimate sender yet — so they watch your first sends closely and route suspicious traffic to spam.
Research based on 200+ email deliverability audits by DataInnovation (2026) found that senders who skip IP warming can see emails landing in spam within three days of switching. And here's the trap: your delivery rate might still show 98% — because spam folder placement counts as "delivered." The metric that actually matters is inbox placement rate.
Skip the warm-up, rush the migration, and you can damage your sender reputation in ways that take months to recover from. Go slowly, and you protect the asset that makes your entire email programme work.
Phase 1: Pre-Migration Audit (Weeks 1–2)
Before you touch Customer.io, audit what you already have. This is where most migrations fail — not in the new platform, but in the undiscovered mess of the old one.
What to Audit in Your Current ESP
All active automations and journeys List every live automation: name, trigger, audience, purpose, email count, and whether it's actually working. You'll find things nobody remembered building.
All email templates Identify which ones are actively used, which are duplicates, and which need a redesign. Migration is a good time to clean up template debt.
Segments and lists Document every segment: what conditions define it, how large it is, when it was last used. Pay attention to segments built on calculated fields or custom merge tags — these may not transfer directly.
Suppression lists This is critical. Export every unsubscribe, hard bounce, and spam complaint from your old ESP before you do anything else. Mailing these people from your new system is one of the fastest ways to destroy your sender reputation. Validity's 2024 State of Email report identifies spam complaint rates above 0.1% as the threshold where major mailbox providers begin filtering your mail.
Integration dependencies Map every integration: CRMs, e-commerce platforms, analytics tools, CDPs, support systems. Understand which ones push data into your ESP vs. pull data from it, and what will break during the changeover.
Historical performance data Export campaign and automation performance data before you lose access to your old account. Open rates, click rates, conversion events — you'll want these as your benchmarks.
Phase 2: Customer.io Setup (Weeks 2–4)
With your audit complete, you're ready to configure your Customer.io workspace.
Setting Up Authentication Before Anything Else
Set up SPF, DKIM, and DMARC on your sending domain before you send a single email from Customer.io. Not optional — not "we'll do it later." Mailbox providers use these records to verify that your messages are legitimate. Missing authentication is the single most preventable cause of deliverability failure during migration.
Our complete email deliverability guide walks through the full authentication setup with examples.
Understanding Customer.io's Data Model
If you're coming from Mailchimp, HubSpot, or Klaviyo, the biggest conceptual shift is moving from list-based to event-based thinking.
Your old ESP thought in lists: Add someone to a list, tag them, segment by tag.
Customer.io thinks in behaviours: A person exists in your workspace. They perform events. Those events (and their properties) define what messages they receive.
Here's how to translate common concepts:
| Old ESP Concept | Customer.io Equivalent |
|---|---|
| List | Segment (dynamic, event-driven) |
| Tag | Attribute on a Person profile |
| Custom field | Person attribute (e.g., plan_type, company_size) |
| Activity log | Events (e.g., login, purchase, page_viewed) |
| Group / Company | Object (e.g., account with its own attributes) |
| Drip campaign | Journey with event-triggered entry conditions |
| Static list import | identify API call or CSV import |
For B2B teams especially: Customer.io's Objects model is a major upgrade. Instead of cramming account-level data onto individual user profiles (which gets messy fast), you model the company as an object with its own attributes, and link users to it. This powers the kind of account-level segmentation that other platforms struggle with.
Our advanced segmentation guide for Customer.io covers the full data model and how to build segments across people, events, and objects.
Migrating Your People (Contact Data)
Customer.io gives you three ways to import your contact data:
1. CSV import via the UI — best for one-time migrations of clean, flat contact data. Map your old field names to Customer.io attributes during import.
2. REST API (identify calls) — best for large-scale migrations or when you need to import data with complex attributes. Each API call creates or updates a person record. See Customer.io's Track API docs for the payload structure.
3. Reverse ETL / CDP integration — if you're syncing from a data warehouse (BigQuery, Snowflake, Redshift) or through a CDP like Segment, this is the cleanest long-term approach. Our guide on integrating data sources with Customer.io covers the full setup.
Before you import: Standardise your field naming convention. Decide whether you'll use first_name or firstName, plan_type or planType. Pick one format and apply it consistently — inconsistent attribute naming breaks segments and Liquid personalisation templates. Our Customer.io Liquid tutorial shows exactly how attribute names flow into your message content.
Migrating Your Suppression List
Import your suppression data first — before any contacts, before any journeys, before any sends. In Customer.io, you handle suppression by:
- Marking unsubscribed people as
unsubscribedvia the API or CSV import - Creating a global suppression segment for hard bounces
- Tracking complaint data as an event and excluding those users
Do not skip this step. Sending to even a small number of previously unsubscribed contacts can trigger complaint rates that damage your new sending reputation before you've had a chance to build it.
Phase 3: Rebuilding Journeys and Templates (Weeks 3–6)
This is the most time-intensive phase — and the one with the most opportunity to build better than you had before.
Prioritising What to Rebuild First
Not everything needs to be rebuilt immediately. Categorise your automations:
Tier 1 — Business-critical (rebuild first):
- Onboarding sequences for new users/customers
- Transactional messages (receipts, password resets, confirmations)
- Active win-back or churn-prevention flows
- Any automation tied to revenue events (trial expiry, renewal reminders)
Tier 2 — Important but not urgent (rebuild in parallel):
- Nurture sequences for prospects
- Upsell and cross-sell journeys
- Re-engagement flows
Tier 3 — Archive or rebuild later:
- One-off campaign templates from past promotions
- Legacy sequences with zero recent activity
- Anything you weren't sure why it existed
Building Journeys in Customer.io
Customer.io's Journeys are the equivalent of automations or workflows in other ESPs — but they're more powerful because they can branch on real-time events, not just time delays or list membership.
Key concepts to understand before you rebuild:
- Entry triggers: Journeys start when a person matches a condition — performs an event, enters a segment, or is added via API. This is much more flexible than "subscribe to list = start workflow."
- Wait steps: Can wait for a specific time OR wait until a specific event occurs, whichever comes first.
- Conditional branches: Route people down different paths based on their attributes, events, or segment membership at that exact moment.
- Exit conditions: Remove people from a journey when a specific event fires (e.g., they convert before the sequence ends).
For a full walkthrough of journey architecture, read The Ultimate Guide to Customer.io Journeys. And if you're rebuilding time-based drip sequences, our guide on why time-based drips are dead will show you how to upgrade them to event-triggered journeys while you rebuild.
Rebuilding Email Templates
Customer.io uses its own drag-and-drop editor and supports HTML. A few things to know:
- Liquid templating handles all personalisation —
{{customer.first_name}}, conditional blocks, loops. If you're used to Mailchimp merge tags or Klaviyo's Django-style syntax, Liquid is similar but with slightly different syntax. Our Liquid personalisation guide has copy-paste examples for every common use case. - Test every template against your live data before launch. Send test emails to real accounts with edge-case profiles (missing first name, null values on conditional fields) to catch rendering issues.
- Mobile responsiveness: Always test across iOS, Android, Gmail, and Outlook before marking a template ready.
Phase 4: IP Warming (Weeks 4–8)
IP warming is the process of gradually increasing your sending volume from your new Customer.io IP addresses so that inbox providers learn to trust you before you send at full scale.
Skip it and you risk your email programme. Do it properly and you arrive at full-volume sending with a clean reputation.
Standard IP Warming Schedule
| Week | Daily Volume | Target Audience |
|---|---|---|
| 1 | 200–500 | Most engaged: opened or clicked in last 14 days |
| 2 | 1,000–2,000 | Opened or clicked in last 30 days |
| 3 | 5,000–10,000 | Active in last 60 days |
| 4 | 20,000–40,000 | Active in last 90 days |
| 5–6 | 75,000–100,000+ | Full engaged list |
Adjust volumes based on your total list size. If your full list is 50,000, compress the schedule accordingly.
Running Both ESPs in Parallel
Don't cut over all at once. Run your old ESP and Customer.io simultaneously for 4–8 weeks:
- Move Tier 1 (business-critical) journeys to Customer.io first, once they're rebuilt and tested
- Keep all other sends on your old ESP until warming is complete
- Gradually migrate segments across as warming progresses
- Only sunset your old ESP after Customer.io has processed at least one full send cycle at your normal volume
This protects active users who are mid-journey on your old platform. Someone in week 3 of a 5-week onboarding sequence shouldn't suddenly receive silence because you cut over.
Monitoring Your Warm-Up
Watch these metrics daily during the warm-up period:
- Google Postmaster Tools: Tracks domain reputation, spam rate, and authentication at Gmail (free, set it up before you start)
- Microsoft SNDS (Smart Network Data Services): Equivalent monitoring for Outlook/Hotmail users (free)
- Inbox placement rate: Not the same as delivery rate. Use tools like GlockApps or MXToolbox to check whether emails are reaching inboxes or spam folders
- Spam complaint rate: Must stay below 0.1%. Above 0.08% is worth investigating immediately
- Open and click rates: A sudden drop of >15% vs. your old ESP baseline is a warning sign requiring investigation
Senders who monitor complaint data within the first 48 hours of a sending change resolve placement issues 3x faster than those who wait for weekly reports.
Phase 5: Team Training (Weeks 4–6)
The platform is only as good as the people using it. Customer.io is more powerful than most ESPs — and that means it has a steeper learning curve.
What Your Team Needs to Learn
For marketers:
- Building and managing dynamic segments
- Creating and editing journeys
- Using Liquid for personalisation
- Reading A/B test results and the analytics dashboard
- Understanding the event-based data model
For developers:
- Customer.io's Track API (
identify,track,groupcalls) - Setting up event tracking in your product
- Connecting integrations via Customer.io's native connectors or Pipelines
- Testing API calls and validating event payloads
For analytics / ops:
- Configuring conversion goals
- Setting up suppression and compliance rules
- Exporting data and connecting to BI tools
Training Resources
- Customer.io Academy — free self-paced courses on the platform
- Customer.io documentation — comprehensive reference for every feature
- For hands-on setup and team enablement, working with a Customer.io Certified Partner like NerveCentral accelerates the learning curve significantly — we've done this migration before
The Handoff Document
Before you turn off your old ESP, create a "state of the stack" document covering:
- All active journeys in Customer.io, what triggers them, and what they do
- All key segments, their conditions, and their purpose
- Data dictionary: every person attribute and event tracked, with descriptions
- Integration map: what connects to Customer.io, how, and in which direction
- Escalation path: who to contact if something breaks
This document is worth its weight in gold six months later when a new team member needs to understand the setup.
Migration Timeline Template
Here's a flexible template you can adapt. Adjust the timeline based on your list size and automation complexity.
12-Week Migration Timeline
Weeks 1–2: Audit and Planning
- [ ] Audit all active automations, segments, and templates in old ESP
- [ ] Export all suppression lists (unsubscribes, bounces, complaints)
- [ ] Export historical performance data (open rates, CTR, conversion events)
- [ ] Map all integrations and data dependencies
- [ ] Define your Customer.io data model (attributes, events, objects)
- [ ] Agree naming conventions for attributes and events
- [ ] Define go-live date and parallel-running period
Weeks 2–3: Customer.io Configuration
- [ ] Set up your Customer.io workspace
- [ ] Configure sending domain (SPF, DKIM, DMARC)
- [ ] Set up dedicated sending IP (if required)
- [ ] Import suppression list before any other data
- [ ] Import people/contact data via CSV or API
- [ ] Configure integrations (CRM, data warehouse, CDP, e-commerce)
- [ ] Set up Google Postmaster Tools and Microsoft SNDS
Weeks 3–5: Rebuild Tier 1 Journeys and Templates
- [ ] Rebuild all Tier 1 (business-critical) journey logic
- [ ] Rebuild transactional email templates
- [ ] Test all journeys with real data in staging
- [ ] Send test emails across all major clients (iOS, Gmail, Outlook)
- [ ] Configure A/B tests for key subject lines and CTAs
- [ ] Set up conversion tracking
Weeks 4–8: IP Warming
- [ ] Begin warming schedule with most engaged segment
- [ ] Monitor Postmaster Tools daily
- [ ] Monitor SNDS weekly
- [ ] Scale volume according to warming schedule
- [ ] Investigate any open rate drops >15% immediately
- [ ] Keep old ESP active for non-migrated journeys
Weeks 5–7: Rebuild Tier 2 Journeys and Train Team
- [ ] Rebuild nurture, upsell, and re-engagement journeys
- [ ] Complete marketer training on Customer.io
- [ ] Complete developer training on API and event tracking
- [ ] Create the handoff/documentation document
Weeks 7–10: Parallel Running and Validation
- [ ] Compare performance metrics: Customer.io vs. old ESP
- [ ] Validate all Tier 1 journeys have triggered correctly
- [ ] Check suppression lists are applying correctly
- [ ] Confirm all integrations are passing data accurately
- [ ] Run first full-volume campaign in Customer.io
Weeks 10–12: Cutover and Old ESP Sunset
- [ ] Migrate remaining segments and journeys
- [ ] Confirm no active users are mid-sequence on old ESP
- [ ] Export final data snapshot from old ESP
- [ ] Cancel old ESP account
- [ ] Post-migration review: 30-day performance comparison
Complete Migration Checklist
Pre-Migration
- [ ] All active automations documented
- [ ] All templates inventoried
- [ ] All segments documented with conditions
- [ ] Suppression list exported (unsubscribes, hard bounces, complaints)
- [ ] Historical performance data exported
- [ ] Integration dependencies mapped
- [ ] Customer.io data model defined
- [ ] Attribute and event naming conventions agreed
Authentication and Setup
- [ ] SPF record added for Customer.io
- [ ] DKIM configured for sending domain
- [ ] DMARC policy set (start with
p=none, monitor, then enforce) - [ ] Dedicated tracking domain configured (avoid shared tracking links)
- [ ] Google Postmaster Tools domain registered
- [ ] Microsoft SNDS configured
Data Migration
- [ ] Suppression list imported first
- [ ] People/contact data imported with correct attribute mapping
- [ ] Data validated (sample check: 50+ records manually verified)
- [ ] Events being tracked correctly (verify with live test events)
- [ ] Objects created (if applicable for B2B account model)
- [ ] Integrations tested and data flowing correctly
Journey and Template Rebuild
- [ ] All Tier 1 journeys rebuilt and tested
- [ ] All Tier 2 journeys rebuilt and tested
- [ ] All transactional templates rebuilt
- [ ] All templates tested across iOS, Android, Gmail, Outlook
- [ ] Liquid personalisation tested with edge-case data
- [ ] A/B tests configured for key messages
- [ ] Conversion tracking configured
IP Warming
- [ ] Warm-up schedule defined
- [ ] Starting segment confirmed (most engaged, last 14 days)
- [ ] Daily volume targets set per week
- [ ] Daily monitoring routine established
- [ ] Escalation criteria defined (e.g., open rate drops 15%, complaint rate >0.08%)
Team Readiness
- [ ] Marketers trained on journey builder and segments
- [ ] Developers trained on API and event tracking
- [ ] Analytics/ops trained on reporting and suppression
- [ ] Handoff documentation complete
- [ ] Escalation path defined
Cutover
- [ ] All users confirmed as exited from old ESP journeys (or re-enrolled in CIO journeys)
- [ ] Final data snapshot exported from old ESP
- [ ] Old ESP account cancelled
- [ ] 30-day post-migration review scheduled
How Do You Maintain Email Performance During Migration?
This is the question that worries most teams most. Here's the specific approach:
Start warm-up with your most engaged subscribers. They're the most likely to open and click, which sends positive engagement signals to inbox providers. Their behaviour builds your reputation. Start with people who opened or clicked in the last 14 days.
Don't migrate re-engagement or dormant campaigns early. Your lowest-engagement segments should be among the last you migrate. High send volume to unengaged contacts during the warm-up period is one of the fastest ways to acquire spam complaints on a fresh IP.
Maintain consistent send frequency. Inbox providers notice erratic sending patterns. If you normally send three campaigns a week, don't suddenly send 20 on day one of Customer.io. The warm-up schedule handles this naturally — but make sure your team understands not to push extra sends during the warming period.
Benchmark obsessively. Before you switch, document your current open rates, CTOR, unsubscribe rates, and complaint rates by segment and campaign type. Run Customer.io sends against those benchmarks week-by-week. A 10% drop might be within normal variation; a 30% drop needs investigation immediately.
Deliverability is the foundation of everything else in your email programme. For the full picture, including how to diagnose problems if they appear mid-migration, read our complete email deliverability guide.
What Should You Build Better This Time?
Migration is disruption. You're rebuilding anyway. Use it.
The most common regret from teams post-migration isn't "we moved too slowly" — it's "we just copied what we had without questioning whether it was right."
Here's what to consider improving as you rebuild:
Replace time-based drips with event-triggered journeys. If you have a 5-email sequence that fires on day 1, day 3, day 7, day 14, and day 30 — rebuild it as a behaviour-triggered journey. Fire when the user acts, not when the calendar says so. Our guide on behaviour-triggered journeys makes the case in detail.
Build your segmentation architecture properly. Don't just re-create the tags and lists you had in your old ESP. Use Customer.io's segment builder to create dynamic, event-driven segments that power everything downstream. Our advanced segmentation guide gives you the templates and logic to start with.
Set up A/B testing from day one. Many teams migrate and then send exactly as they did before. Customer.io's A/B testing tools are excellent — build testing into your first journeys. Our A/B testing guide for Customer.io has the setup steps and a full testing calendar template.
Add subscription centre management. If your old ESP had a basic unsubscribe link, now's the time to build something better. A subscription centre that lets users manage their preferences reduces churn far more effectively than a simple one-click unsubscribe.
Frequently Asked Questions About Migrating to Customer.io
How long does it take to migrate from Mailchimp to Customer.io?
For a typical business with a moderate number of automations, budget 8–12 weeks for a complete migration. That includes 2 weeks of auditing, 2 weeks of setup, 4–6 weeks of journey rebuilding, and a 4–6 week IP warm-up running in parallel. Simple setups (few automations, small lists) can move faster. Complex setups with many custom integrations and dozens of active journeys should budget 3–6 months.
Can you migrate from Customer.io to another ESP, or is it a one-way street?
Migration works in both directions. Your data — people, attributes, events — is always accessible via Customer.io's API and export functions. Customer.io doesn't lock you in beyond the standard complexity of rebuilding any automation platform. If you ever need to move, you can export your contact data and document your journeys. That said, the data model (especially Objects for B2B) is distinctive enough that the rebuild on any other platform would require real work.
What happens to customers who are mid-journey during the migration?
This is one of the most important questions to answer before you start. You have two options: (1) let them complete the existing journey on your old ESP before migrating, keeping the old platform active until all active sequences are complete, or (2) identify mid-journey users and re-enrol them at the appropriate point in the rebuilt journey on Customer.io. Option 1 is simpler and safer. Option 2 is right for very long-running journeys where waiting isn't practical. Either way, map the decision explicitly in your migration plan before cutover.
Do you need a developer to migrate to Customer.io?
For a full migration that takes advantage of Customer.io's event-based architecture, yes — you need developer involvement. Setting up the Track API (identify/track/group calls), configuring event tracking in your product, and building reliable integrations requires engineering work. The marketing side (building journeys, templates, segments) is no-code. But the data foundation that makes Customer.io powerful is a technical setup. If your team doesn't have in-house developer resource, a Customer.io Certified Partner can handle the implementation.
What's the best way to handle a large list (500,000+ contacts) during migration?
Segment your import. Don't push 500,000 contacts into Customer.io on day one. Start with your most engaged tier (opened in last 30 days), import and validate that data, then progressively import the rest. This approach also aligns with your IP warm-up schedule — you'll only be sending to your most engaged contacts in weeks 1–2 anyway, so there's no urgency to have everyone imported on day one. Suppression lists are the exception — import those for all contacts before any sending begins.
Will your domain reputation carry over from your old ESP?
Partially. Domain reputation (separate from IP reputation) does follow your sending domain and has become increasingly important at Gmail and Microsoft. This is good news: if you've maintained a strong sending reputation on your current domain, it provides a foundation to build on. But IP reputation doesn't transfer — your new Customer.io sending IPs start fresh. That's why the warm-up process matters even if your domain reputation is excellent. The two work together.
What's the difference between Customer.io and Klaviyo for migration purposes?
Klaviyo is purpose-built for e-commerce and DTC brands, with deep native integrations for Shopify, product feeds, and purchase history. Customer.io is purpose-built for SaaS, apps, and product-led businesses where behavioural events drive the lifecycle. If you're migrating from Klaviyo to Customer.io, the biggest shift is moving from purchase-event logic to broader product-usage event logic. Your transactional email equivalents (receipts, shipping) may not exist in the same form. If you're moving the other direction — Customer.io to Klaviyo — the biggest challenge is replicating event-driven segmentation in a more e-commerce-centric data model.
Should you keep your old ESP active after going live on Customer.io?
Yes — for 4–8 weeks minimum. Run both platforms in parallel during IP warming. Keep non-migrated journeys active on your old ESP. Only begin sunsetting the old platform once: (1) IP warming is complete, (2) all Tier 1 journeys are running and validated in Customer.io, and (3) no users are actively mid-sequence on the old platform. Cancel only after you've exported a final data snapshot.
How do you move email templates from another ESP to Customer.io?
Most templates don't transfer directly — different platforms use different HTML structures, merge tag syntaxes, and rendering approaches. Your options are: (1) export your existing template HTML and recode it in Customer.io's HTML editor, replacing old merge tags with Customer.io's Liquid syntax; or (2) rebuild templates from scratch in Customer.io's drag-and-drop editor. Migration is a natural point to standardise your template library and remove accumulated technical debt. Rebuild in Customer.io's Liquid syntax from the start — our Liquid personalisation guide covers the full syntax with copy-paste examples.
What should you test before declaring the migration complete?
Run through this checklist before calling it done: (1) Every Tier 1 journey has sent at least one real email to a real user and tracked the result correctly; (2) suppression lists are applying — send a test to a known unsubscribed address and confirm it's suppressed; (3) all integrations are passing data correctly (check with a live test event in your product and verify it appears in Customer.io); (4) IP warming is complete and inbox placement rates are stable; (5) at least one A/B test has run and produced a result; and (6) the team handoff document exists and has been reviewed by everyone who'll maintain the account.
Is it worth hiring a Customer.io Certified Partner for the migration?
For most businesses, yes. The platform is powerful but technical. Mistakes in the data model, event naming, suppression handling, or IP warming can set your programme back months. A certified partner has done these migrations before, knows the common failure points, and can compress a 12-week timeline without cutting corners. The cost of a partner engagement is almost always lower than the cost of a botched migration and three months of below-normal deliverability.
What happens to your email performance metrics during migration?
Expect some variation during the warm-up period. Open rates on new IPs may run slightly lower than your old ESP baseline for weeks 2–4, particularly for Gmail-heavy audiences where domain reputation building takes time. Click rates and conversion rates should remain more stable, since engaged users who do open will still behave normally. By week 6–8 of proper warming, you should be back to or above your old ESP baseline. If you're not, investigate deliverability before assuming the platform is the problem.
Can you migrate to Customer.io if you have a complex CRM integration?
Yes — but map the integration carefully before you start. Customer.io connects with major CRMs (Salesforce, HubSpot, Pipedrive) via native integrations and via third-party connectors. The key questions to answer upfront: which system is the source of truth for contact data? How do CRM field names map to Customer.io person attributes? What events need to flow bidirectionally? For complex CRM architectures, the integration setup is often the longest phase of the migration. Our data integrations guide covers the full integration architecture.
The Bottom Line
The GWR didn't convert 170 miles of track in 48 hours by improvising. They sent every unnecessary train east, briefed every worker, assigned every section, and started at precisely the right moment.
Your Customer.io migration works the same way. The sequence matters. The suppression lists go in first. The warm-up starts before you need full volume. The old ESP stays live until everything's been validated.
Do it right and you don't just switch platforms — you upgrade your entire email programme. Better segmentation. Smarter triggers. Real behavioural data driving every message. The difference between a batch-and-blast email system and a lifecycle marketing engine that compounds over time.
The 5,000 GWR workers finished without a single accident because every one of them knew exactly what they were responsible for. That's what a migration plan is for.
Need help with your Customer.io migration? NerveCentral is a Customer.io Certified Partner. We've migrated businesses from Mailchimp, HubSpot, Klaviyo, ActiveCampaign, and Salesforce Marketing Cloud. We handle the technical setup, the journey rebuilds, the IP warming, and the training — so your team arrives on Customer.io ready to grow, not just survive the transition. Get in touch.
Citations
-
Wikipedia. Broad-gauge railway: Great Western Railway gauge conversion, 1892. en.wikipedia.org/wiki/Broad-gauge_railway
-
CMSWire / ANA. (2024, November 6). The Good (and Bad) Reasons to Consider Switching Email Service Providers. Featuring Ryan Phelan, CEO RPE Origins. cmswire.com
-
Litmus. (2025, August). How to Migrate ESPs Easily. litmus.com/blog/how-to-migrate-esps-easily
-
DataInnovation. (2026, March). Email Deliverability Drop After ESP Migration: Diagnosis Checklist from 200+ Audits. datainnovation.io
-
Validity. (2024). The State of Email 2024. validity.com/resource-center/the-state-of-email-in-2024
-
Tinuiti. (2026, February 10). Email Service Provider Migration Services. tinuiti.com/blog/email/email-service-provider-migration-services
-
TechnologyChecker.io. (2026, January–February). Marketing Automation Market Share & Trends: 50M Domain Report. technologychecker.io/blog/marketing-automation-report-market-share-trends
-
Centric Squared / Medium. (2025, June 10). ESP Migration: A Complete Guide to Switching Email Providers Safely in 3 Months. centricsquared.medium.com
-
Customer.io Documentation. Track API: HTTP API for sending people, events, and objects. docs.customer.io/integrations/data-in/connections/http-api
-
SMTP.com. (2026, February 7). How Long Does IP Warming Take for New Senders? smtp.com/blog/technical/how-long-does-ip-warming-take-for-new-senders


