Migrating from Mailchimp: a 48-hour playbook for Indian teams
Why Indian teams leave Mailchimp in 2025 and the exact 48-hour migration sequence: export, map, import, rebuild automations, re-engage, warm up, cutover.

On this page
If you are running an Indian email program on Mailchimp, you have probably been tolerating it for two reasons: inertia and a vague sense that switching is painful. The first reason is gone — Mailchimp's June 2025 removal of the Classic Automation Builder from the free tier[1][2] and the subsequent January 2026 free-plan cut to 250 contacts / 500 monthly sends[2] made the economics untenable for Indian SMBs. The second reason is mostly perception. A 2,500-contact list can be moved cleanly in a weekend. This playbook is the sequence we have used with 200+ Indian teams over the last 18 months.
Why Indian teams are leaving Mailchimp
Five reasons, in order of how often they come up:
- June 2025 free-plan changes & the January 2026 cut. The Classic Automation Builder was removed from the free tier in June 2025[1][2] — free accounts lost multi-step automation entirely. In January 2026 Mailchimp reduced the free plan to 250 contacts, 500 monthly sends, 250 sends/day, with no scheduling and Mailchimp branding on every email.[2] This is an 87.5% reduction in contacts and 95.8% reduction in monthly sends from the 2019 free tier.
- USD billing and reverse-charge GST. Mailchimp is a US company. Their invoices do not have GSTIN. Under Indian tax law, you owe reverse-charge GST on the import of services — effectively, you have to self-invoice, pay 18% IGST, and claim it back as ITC. Most Indian SMBs are not set up for this and end up with unrecovered tax.
- No DPDP defaults. Mailchimp's data processing addendum is GDPR-shaped. It does not cover the November 2025 DPDP Rules,[3] does not promise data residency in India, and does not give you a tamper-evident consent receipt per contact. DPDP compliance on Mailchimp is possible, but it is on you, not on the platform.
- No Indian language templates. Mailchimp supports 7 Indian scripts at the Unicode level, but their template library is all-English. If you send in Hindi, Tamil, Bengali, or Marathi, you are starting from a blank canvas every time.
- No Indian IP ranges. Mailchimp sends from US and EU IP ranges. For an all-India list, that adds 200-400ms of latency per send and triggers some Indian mailbox providers' "foreign origin" filters more often. (Comparable ESPs that send from AWS ap-south-1 (Mumbai) measure 3-32ms p50 from major Indian metros.[4])
None of these are deal-breakers on their own. Together, they add up to "we are paying USD for a substandard India experience." Which is why teams are moving.
Before you start: the inventory
Before you export anything, take stock. You need to know what you are moving so you can verify the move was clean.
- Number of contacts. Active, unsubscribed, and cleaned (Mailchimp's term for non-deliverable). Note all three numbers.
- Number of audiences. In Mailchimp, audiences are called "lists" in the API and "audiences" in the UI. List every audience and what it is for.
- Number of automations. Customer journeys, in Mailchimp's terminology. List each one with its trigger and goal.
- Number of regular campaigns. Anything you send on a schedule (weekly newsletter, monthly digest, etc).
- Custom fields and tags. List every custom field name and every tag you use. You will need to map these in the new platform.
- Integrations. Anything that posts to a Mailchimp webhook, or pulls from a Mailchimp API, or uses a Mailchimp form embed. List them.
Put this in a spreadsheet. The whole migration depends on this list being complete.
Hour 0-12: export from Mailchimp
Friday afternoon. The goal is to walk away from Mailchimp with everything you need, without losing any data.
Step 1: Export contacts (1-2 hours)
In Mailchimp: Audience → All contacts → Export audience → Export as CSV. Repeat for every audience. The CSV has every contact, every merge field, every tag, and the GDPR consent field if you set one up. Save each export with a timestamped filename.
Step 2: Export the suppression list (15 minutes)
Unsubscribes, cleaned (bounced), and complained addresses. These do not come with the audience export by default — you have to export them separately. Go to Audience → Tags → Create segment → filter: status is unsubscribed OR cleaned OR complained, then export. Save this file. Do not skip it. Importing unsubscribes into LoopNow is the single most important DPDP step of the entire migration.
Step 3: Export automations (1-2 hours)
Customer journeys do not have a clean export in Mailchimp. The most reliable approach is to screenshot every step of every journey and write a one-paragraph description of the trigger, the conditions, and the goal. This becomes your rebuild spec.
If you have API access, you can pull the journey definitions as JSON via the Mailchimp Marketing API (/automations endpoint). The JSON is dense but complete. LoopNow's migration team can read it directly.
Step 4: Export forms (30 minutes)
Every signup form, popup, and embedded form. Mailchimp gives you an HTML snippet per form. Save each snippet to a file. You will rebuild the form in LoopNow (or keep the Mailchimp form temporarily and have it POST to a LoopNow webhook — see step 4 below).
Step 5: Document DNS (15 minutes)
SPF, DKIM, and DMARC records currently pointing at Mailchimp. Run dig TXT yourdomain.in, dig TXT k1._domainkey.yourdomain.in, and dig TXT _dmarc.yourdomain.in. Save the outputs. You will edit these in the final step.
Hour 12-24: import into LoopNow
Friday evening to Saturday morning. Goal: get the data in, the right structure.
Step 1: Create the LoopNow workspace (10 minutes)
Sign up at loopnow.in, create a workspace, add your sending domain. The DNS records LoopNow gives you will be needed in the final step.
Step 2: Map fields (30-60 minutes)
LoopNow's importer lets you map Mailchimp merge fields to LoopNow contact fields. Standard mappings:
| Mailchimp field | LoopNow field |
|---|---|
| FNAME | first_name |
| LNAME | last_name |
| PHONE | phone |
| COMPANY | company |
| Custom field (e.g. CITY) | Same name in LoopNow |
| Tag (e.g. "vip") | Tag (same name) |
If you have custom fields with spaces or special characters in the name, rename them. The fewer weird characters in your field names, the fewer bugs later.
Step 3: Import contacts (1-2 hours for ~5,000 contacts)
Upload each Mailchimp CSV. LoopNow will dedupe by email — if a contact is in three audiences, they will be created once with three list memberships. Tags come over as tags. The import runs in the background; for a 5,000-contact list it usually takes 15-30 minutes.
Step 4: Import the suppression list (15 minutes)
Upload the suppression CSV you exported in hour 0-12. LoopNow recognises standard suppression columns and adds those contacts to the suppression list without sending to them. Do this before you send anything.
Hour 24-36: rebuild automations
Saturday. Goal: get the automations working in LoopNow's format.
For each Mailchimp customer journey, the rebuild pattern is usually:
- Trigger: Identify what started the journey in Mailchimp. Usually a list signup, a tag added, a custom event, or a date-based trigger (e.g. "7 days before birthday").
- Conditions: Identify the branching logic. If/else splits, "wait until" steps, "tag added" branches.
- Actions: Identify the sends, the wait steps, the tag updates, the webhook calls.
- Goal: Identify the conversion event. In LoopNow, this becomes a "conversion" goal in the automation builder.
LoopNow's automation builder is node-based — you drag triggers, conditions, sends, and goals onto a canvas and connect them. For most customer journeys, the rebuild is a 30-60 minute job per automation. Most teams have 3-5 automations. Budget 3-4 hours for the rebuild pass.
If you have complex journeys (multi-branch, scored, with webhooks), LoopNow's migration team will help rebuild them — it's part of the paid plan.
Hour 36-48: re-engage and warm up
Sunday. Goal: prep the IP and re-engage the list before the first send from LoopNow.
Step 1: Verify the new DNS (30 minutes)
LoopNow gives you SPF, DKIM, and DMARC records when you add your sending domain. Add them to your DNS. Do not delete the Mailchimp records yet. Having both for 48 hours is fine and lets you verify the LoopNow records are working before the cutover.
Step 2: Send a re-engagement campaign (1-2 hours of prep, sends Monday)
This is the secret to a clean migration. Before you cut over to LoopNow as the sender of record, send a "we have moved" email from Mailchimp — one last send, with a single CTA: "Click here to confirm you want to keep hearing from us." Anyone who clicks comes over. Anyone who does not click gets a follow-up, and if they still do not click, they are sunset.
The result: when you flip the switch, your active list is people who actually opened and clicked in the last 60 days. Your first LoopNow-sent campaign will have an open rate in the 35-50% range instead of the 18-22% range you would have got by importing the full list cold.
Step 3: Start the IP warmup (Sunday evening)
LoopNow's IP warmup is automatic. Once you add the new DNS records and they propagate (usually under 1 hour), LoopNow begins sending a low-volume warmup to your most engaged subscribers. By Monday morning, your first campaign can go out with a warm IP.
Post-migration: DPDP, GST, and the DNS switch
Monday morning. The new platform is live. Three final items:
- DNS cutover. Now that the LoopNow records are verified, remove the Mailchimp SPF include, DKIM selector, and DMARC reporting URI. This stops Mailchimp from being a valid sender for your domain.
- Sign the DPA. LoopNow's DPA is self-serve on Scale plans, request-based on Starter. Sign it before you process any new personal data. This is your DPDP Section 8 documentation done.
- Cancel Mailchimp. Once DNS has propagated and the LoopNow records are confirmed live for 24 hours, you can safely cancel the Mailchimp subscription. Keep the Mailchimp account active in read-only mode for 30 days in case you need to refer back to anything.
The GST angle
Once you are on LoopNow, your invoices are in INR, with a GSTIN, CGST/SGST/IGST split, and HSN/SAC code. No more reverse-charge self-invoicing, no more chasing ITC claims. Your finance team will be happier within the first month.
The DPDP angle
LoopNow's defaults are DPDP-shaped: tamper-evident consent receipts, 72-hour breach notification SLA, data residency in AWS Mumbai, one-click data export and erasure per contact. Your DPDP exposure drops significantly the day you cut over.
Five common pitfalls during a Mailchimp migration
After 200+ migrations, the same five things go wrong about 80% of the time. Here they are, with the fix for each.
1. Forgetting the suppression list
You export the audience. You forget the unsubscribed, the cleaned, and the complained. You import to LoopNow, send a campaign — and 22% of your recipients get the email who explicitly asked not to. Always export the suppression list separately, before you import anything. LoopNow's importer will recognise the suppression columns and add those contacts to the suppression list automatically.
2. Mailchimp merge fields with no equivalent
Mailchimp allows freeform merge fields (*|MERGE|*) that may not map to any standard LoopNow field. If you have 47 custom merge fields with names like SHIP_ZIP_PREF and REC_PURCH_CAT, the importer will warn you but proceed with only the standard fields mapped. The un-mapped data is lost. Fix: before importing, list your Mailchimp merge fields in a spreadsheet. For each one, decide: is this a custom field in LoopNow, or is it derivable from other fields? Create the custom field in LoopNow first, then map.
3. Automations with Mailchimp-specific steps
Mailchimp customer journeys have steps that have no equivalent in other platforms: "Postcard," "Survey," "Inbox preview." These will not import. Fix: when you inventory the automations (hour 0-12 step 3), tag any step that uses a Mailchimp-specific feature. Plan a replacement for each. Most common replacement: "Survey" steps become a LoopNow form with conditional logic.
4. The From-domain switch is faster than the SPF propagation
You update your DNS to point at LoopNow. You send a campaign. 4% of recipients see the email, 96% see "delivery delayed." This is the SPF record still pointing at Mailchimp and the DKIM selector not yet propagated. Fix: leave the Mailchimp records in DNS for 48 hours after adding the LoopNow records. They do not conflict — multiple SPF includes are fine, and the DKIM selector is per-service.
5. Mailchimp audiences vs LoopNow lists
Mailchimp's "audiences" (formerly "lists") and LoopNow's "lists" are the same concept, but the membership model is different. A contact can be in multiple Mailchimp audiences. The same contact in LoopNow can be in multiple lists, with separate consent receipts per list. Fix: if a contact is in 3 Mailchimp audiences and the same consent covers all 3, you can import them as a single contact with 3 list memberships in LoopNow. If the consent is different per audience, you need 3 separate consent records — which means re-capturing consent. In practice, the consent is usually the same, and the import handles it.
The 24-hour post-migration checklist
Run this on Monday morning, after the cutover, to verify everything is working.
- Verify open tracking. Send a test email to a Gmail account you control. Open it. Check the analytics dashboard — does the open show up within 60 seconds?
- Verify click tracking. Send a test email with a link. Click the link. Does the analytics dashboard register the click? Does the link resolve to the correct destination?
- Verify unsubscribe. Click the unsubscribe link in the test email. Does it take you to a preference centre? Does the contact get added to the suppression list in the dashboard?
- Verify SPF/DKIM/DMARC. Run
dig TXT yourdomain.in,dig TXT selector._domainkey.yourdomain.in,dig TXT _dmarc.yourdomain.in. All three should resolve correctly to the LoopNow values. - Verify deliverability. Send a test campaign to 50 of your most engaged subscribers. Check the inbox-placement report after 4 hours. You should be at 95%+ across Gmail, Outlook, and Yahoo India.
- Verify webhooks. If you have any integrations that were subscribed to Mailchimp webhooks, switch them to LoopNow webhooks. Verify the payload and the signature verification.
All six checks should pass. If any fail, do not send the next campaign until the issue is resolved.
Related reading: Indian deliverability guide · DPDP compliance guide · LoopNow vs Mailchimp.
References
- Energise, “Is Mailchimp’s Free Plan Still Worth It?” (June 2025 removal of the Classic Automation Builder from the free tier, Jan 2026 cut to 250 contacts / 500 monthly sends) — https://www.energise.co.nz/blog/is-mailchimps-free-plan-still-worth-it/
- EmailOctopus, “Mailchimp pricing updates [2019–2026]” (timeline of free-plan changes: 2,000 contacts in 2019, 500 in 2023, 250 in Jan 2026) — https://emailoctopus.com/blog/mailchimp-pricing-update-2023-the-details-behind-it
- Ministry of Electronics and Information Technology (MeitY), Digital Personal Data Protection Rules, 2025 — https://www.meity.gov.in/static/uploads/2025/11/53450e6e5dc0bfa85ebd78686cadad39.pdf
- TechPlained, “India Cloud Latency: 8 Cities to AWS GCP Azure (2026)” (AWS ap-south-1 p50 latency 3–32 ms from major Indian metros) — https://www.techplained.com/india-cloud-latency