The customer who prompted this post crossed 200K subscribers in May. Their Mailchimp bill was around €4,200 per month at that subscriber count with their sending volume (twice-weekly newsletter to mostly engaged subscribers). They had been considering self-hosted for over a year. The decision finally tipped in their favor when Mailchimp’s plan renewal would have pushed the bill above €5,500 with the next tier.
They started the migration in early June. They are now in the final cutover phase as I write this in August. The total elapsed time will be approximately 10 weeks from decision to full cutover.
For newsletter publishers in similar circumstances, the migration is operationally bounded but rarely as fast as customers expect. The economics at 200K subscribers favor self-hosted. The engineering work is bounded but real. The cost breakdown is more complex than a simple “Mailchimp vs server” comparison suggests.
This post walks through the migration we have been doing with this customer (anonymized) and what we have learned about migrations in this segment more broadly. The numbers are real. The timeline reflects actual experience rather than theoretical possibility.
Why 200K is the threshold
The economics of mainstream ESP versus self-hosted have a crossover point that depends on several variables. For newsletter publishers specifically, the threshold sits around 200K subscribers at typical sending patterns.
Below 200K subscribers, the mainstream ESP convenience usually outweighs the cost savings of self-hosted. Mailchimp at 100K subscribers might cost €1,500-€2,200 per month depending on tier. Self-hosted infrastructure with adequate quality (dedicated IPs, managed installation, proper monitoring) costs around €400-€600 per month plus operational time investment. The savings exist but the operational time investment exceeds the cost difference for many publishers.
At 200K subscribers, Mailchimp typically costs €3,500-€4,500 per month with overage charges if sending volume is high. Self-hosted infrastructure still costs around €400-€600 per month plus operational time. The cost savings are now €2,500-€3,500 per month, which justifies meaningful operational investment.
Above 200K, the savings grow approximately linearly with subscriber count. At 500K subscribers, Mailchimp costs €9,000-€12,000 per month and self-hosted costs €700-€900 per month. The €8,000-€11,000 per month savings funds significant operational improvements.
The exact threshold varies by publisher. Publishers with high engagement (premium content, paid subscriptions) may have economics that favor self-hosted earlier because their ad revenue per subscriber justifies the operational investment. Publishers with low engagement (free content, lower retention) may have economics that favor Mailchimp longer because they cannot justify the operational time.
The hidden costs in the Mailchimp comparison
Direct Mailchimp pricing is straightforward to compare. The hidden costs are where the simple comparison breaks down.
Mailchimp’s deliverability is good but not exceptional for marketing email. Newsletter publishers reaching 200K subscribers care about deliverability deeply because inbox placement directly affects ad revenue. Self-hosted infrastructure with dedicated IPs and proper warming typically produces 2-5% better inbox placement than shared Mailchimp pools. At 200K subscribers, 3% more inbox placement is €15K-€30K per year in additional ad revenue depending on publisher economics.
Mailchimp’s template editor and audience tools are convenient but rigid. Custom segmentation, advanced automation, and integration with non-standard tools sometimes require workarounds. Self-hosted infrastructure with MailWizz, Acelle, or custom tooling allows complete control. The flexibility cost is hard to value but matters for publishers with sophisticated operations.
Mailchimp’s data export is limited. Subscriber data, engagement history, and campaign performance can be exported but not in the granular detail that self-hosted operations produce naturally. Publishers with data-driven optimization practices find self-hosted more valuable than Mailchimp despite higher operational complexity.
Mailchimp’s terms of service have content category restrictions. Cold email is prohibited. Specific content categories face scrutiny. Publishers in restricted categories operate at termination risk. Self-hosted eliminates this risk for content that is legal but not aligned with Mailchimp’s terms.
The decision sequence the customer worked through
The customer in this post-mortem worked through a structured decision process over several months before committing to migration. The sequence is generalizable.
Step 1: Quantify the Mailchimp spend trajectory
The customer documented their Mailchimp spend over the prior 24 months. They were paying €1,800/month at 100K subscribers, €2,400/month at 130K, €3,400/month at 165K, and €4,200/month at 200K. The trajectory was clear: the bill was growing faster than subscriber count due to plan tier transitions.
They projected forward. At 300K subscribers (their 12-month growth target), Mailchimp would cost approximately €6,000-€7,500/month based on current pricing. Annual spend would approach €80K.
Step 2: Quantify the alternative
Self-hosted infrastructure cost at their projected scale:
- Dedicated server (32GB RAM, 8 CPU, NVMe): €350/month
- 8 dedicated IPs with rDNS configured: €64/month
- MailWizz license (one-time): €399 amortized
- Optional PowerMTA license: €5,000/year amortized to €420/month
- Managed installation and monitoring: €200/month
- Total: ~€1,010/month with PowerMTA, ~€590/month without PowerMTA
Annual self-hosted cost: €7,000-€12,000 versus €80K for Mailchimp at projected scale. Savings of €68K-€73K annually justified significant operational investment.
Step 3: Quantify the operational investment
The customer assessed their internal capability. They had a technical co-founder who could handle initial setup and ongoing operations but limited time available (maybe 10 hours per week dedicated to email infrastructure). They could either invest internal time or pay for managed services.
The decision: combine managed services (ASH for infrastructure, deliverability operations) with internal time for content and campaign management. The internal time investment was bounded at the level the co-founder could sustain.
Step 4: Risk assessment
The risks the customer considered:
Deliverability transition risk: during migration, deliverability could degrade if not handled carefully. Mitigation: gradual cutover with parallel sending from Mailchimp during the transition.
Operational complexity risk: self-hosted requires ongoing operational discipline. Mitigation: managed services provider relationship to handle the operational complexity.
Vendor consolidation risk: rather than one Mailchimp relationship, multiple vendor relationships (hosting provider, managed services, monitoring tools, etc.) Mitigation: minimize vendor count by choosing comprehensive providers.
Subscriber data migration risk: exporting from Mailchimp and importing to self-hosted produces some data quality variation. Mitigation: careful export procedures and validation checks.
The customer accepted the risks as manageable.
Step 5: Commitment and timeline
The customer committed to migration in early June with a 10-week target completion. The timeline gave adequate margin for IP warmup and operational stabilization.
The 10-week migration timeline
The actual sequence we followed:
Week 1-2: Infrastructure provisioning
Dedicated server provisioned in Bulgaria pop. MailWizz installed with proper database tuning for projected volume. PowerMTA managed installation completed with initial VMTA configuration. 4 dedicated IPs allocated initially (more added later during warmup). Authentication DNS records prepared (SPF authorizing new infrastructure IPs, DKIM keys generated, DMARC at p=none initially).
Monitoring stack deployed: Postmaster Tools integration, SNDS access setup, daily delivery reports, weekly trend analysis. Telegram channel for incident notifications.
Week 2-3: Mailchimp data export
Subscriber list exported via Mailchimp’s standard export. The export produces CSV with subscriber email, basic profile fields, subscription source, and signup date. Custom field data exports separately.
Suppression list exported. Hard bounces, unsubscribes, complaint history. The suppression list is operationally critical to import correctly to avoid sending to previously-unsubscribed contacts.
Campaign templates exported. HTML format, not Mailchimp’s proprietary template language. Templates require some adjustment for MailWizz’s template engine but conceptually similar.
Engagement data exported. Open rates, click rates, click maps per campaign. The data informs subscriber engagement scoring on the new platform.
Week 3-4: Data import and platform configuration
Subscriber list imported to MailWizz. The import process handles the standard fields well; custom fields required some manual mapping. About 1.2% of the subscriber list failed import due to malformed email addresses, duplicate entries, or other data quality issues. The failures were inspected and either fixed or excluded.
Suppression list imported. Critical to import before any sending to avoid contacting suppressed addresses.
Campaign templates ported. Templates were rebuilt in MailWizz’s template editor based on the exported HTML. Some templates required redesign because Mailchimp-specific features didn’t translate directly.
Custom segmentation rules recreated. Mailchimp’s segmentation logic differs from MailWizz’s. The active segments (engaged subscribers, recent signups, paying customers) were rebuilt in MailWizz with equivalent logic.
Week 4-7: IP warmup
The IP warmup is the longest and most operationally important phase. New dedicated IPs start with neutral reputation and require careful volume ramping over 30-45 days to build reputation.
Week 4 (warmup day 1-7): 500-5,000 messages per day per IP. Mail sent to most engaged subscribers (high open rate, frequent click history). Mailchimp continues sending to all other subscribers during this period.
Week 5 (warmup day 8-14): 5,000-25,000 messages per day per IP. Volume increases gradually. Engagement-tier targeting continues but expanded slightly to include moderately engaged subscribers.
Week 6 (warmup day 15-21): 25,000-75,000 messages per day per IP. Volume continues to scale. Engagement targeting expanded further. Cross-IP balancing ensures no single IP overloads relative to others.
Week 7 (warmup day 22-30): 75,000-150,000 messages per day per IP. Approaching operational levels. Full subscriber list begins receiving mail from new infrastructure (split between Mailchimp and self-hosted).
Throughout warmup: daily monitoring of bounce rates, complaint rates, Gmail Postmaster Tools reputation, SNDS Microsoft data, manual inbox testing across major receivers.
Week 8: Gradual cutover
Mail traffic shifts from Mailchimp to self-hosted incrementally. Initial 10% through self-hosted infrastructure, then 25%, 50%, 75%, 100% over the week. Each step verified before advancing.
The Mailchimp account remains active during cutover for failover capability. If self-hosted infrastructure has issues, mail can fall back to Mailchimp within hours.
Week 9: Production stabilization
100% traffic on self-hosted. Mailchimp account paused (not canceled yet). Operational metrics monitored intensively for the first week of full production.
Initial production results: inbox placement at 96.8% (up from 94.2% on Mailchimp). Bounce rate at 0.32% (slightly higher than Mailchimp’s 0.28% but within acceptable range). Complaint rate at 0.04% (unchanged). Open rate at 32.7% (up from 31.4% on Mailchimp, likely due to better inbox placement).
Week 10: Mailchimp cancellation
After 1 full week of stable self-hosted operations, the customer cancels their Mailchimp account. The cancellation processes within Mailchimp’s billing cycle, terminating their relationship at the next month boundary.
Final Mailchimp data export run before cancellation, archived for compliance and potential future reference.
What went well and what surprised us
The migration completed within the 10-week target. Several aspects went smoothly that we expected to be more difficult; several aspects produced surprises.
Things that went smoothly
The technical infrastructure provisioning was rapid. MailWizz installation, PowerMTA setup, IP allocation, authentication DNS configuration all completed in week 1-2 without significant issues.
The subscriber list import was less problematic than feared. 98.8% import success rate with the remaining 1.2% identifiable and addressable. The suppression list imported cleanly.
The IP warmup proceeded according to plan. No major reputation incidents during the warmup. Both IPs achieved “High” reputation in Postmaster Tools by end of warmup.
The cutover was uneventful. The gradual percentage-based migration revealed no issues. The customer experience for end subscribers was seamless.
Things that surprised us
The campaign template port was more work than anticipated. The exported HTML from Mailchimp embedded Mailchimp-specific merge tags and conditional logic that did not translate to MailWizz directly. Each template required 1-3 hours of manual adjustment.
The custom segmentation logic was harder to recreate than expected. Mailchimp’s segment editor produces certain compound logic patterns that require multi-step recreation in MailWizz. The customer’s roughly 12 active segments took about 25 hours of work to recreate accurately.
The engagement scoring algorithm needed adaptation. Mailchimp’s engagement score is opaque; MailWizz’s scoring requires explicit configuration. The customer wanted to maintain similar segmentation post-migration, which required understanding Mailchimp’s scoring well enough to reproduce equivalent behavior in MailWizz.
Two specific transactional flows required application code changes. The customer’s website triggered Mailchimp via webhooks for certain subscriber actions (signup confirmation, paid tier upgrade). The webhooks needed to be redirected to MailWizz’s API. The code changes were straightforward but required coordination with the website’s development team.
The post-migration economics
After full cutover, the customer’s actual costs:
Self-hosted infrastructure (ASH managed): €670/month total
- Dedicated server: €350/month
- 8 dedicated IPs (added 4 during warmup): €64/month
- Managed services: €280/month
Operational time investment: approximately 8 hours per week from the technical co-founder. About 30% the time they spent on Mailchimp configuration and troubleshooting.
Annual cost: ~€8,500 versus the €50K+ Mailchimp would have cost at their current 215K subscriber count.
Annual savings: ~€42K, available for content, growth marketing, or other priorities.
The customer’s expectation was that the operational time would be the same as Mailchimp time. The actual time investment is less because: ASH handles infrastructure operations, MailWizz workflow is more efficient for their use case once configured, deliverability monitoring is more proactive (catches issues earlier than reactive Mailchimp support).
What does not work in this migration model
The migration model we used works well for newsletter publishers in this segment. It does not work as well for several adjacent cases.
Publishers below 100K subscribers
The economics do not yet justify the operational investment. Mailchimp at 100K is €1,500-€2,200/month. Self-hosted savings of €1,000/month do not justify the migration effort for most publishers.
Publishers with very simple operations
Some publishers send the same content to the same list weekly with minimal customization. For these, Mailchimp’s convenience is operationally adequate and the savings from self-hosted do not justify the complexity.
Publishers without technical capability
Self-hosted requires some technical capability even with managed services. A publisher without anyone capable of making configuration decisions, troubleshooting issues, or coordinating with the managed services provider will struggle. Mailchimp’s self-service model works better for these publishers.
Publishers with complex automations
Mailchimp’s marketing automation builder is sophisticated. Replicating complex multi-step automations in MailWizz or Acelle is possible but requires significant configuration work. Publishers with very complex automations should plan for substantial automation rebuild time.
What we recommend for publishers considering migration
Based on this migration and others we have done, several practices help.
Quantify before committing
The cost comparison drives the decision. Quantify current Mailchimp spend trajectory, projected self-hosted spend, and the operational investment honestly. If the savings do not justify the operational investment in your specific situation, do not migrate.
Plan for 10-12 weeks elapsed time
The minimum realistic migration timeline is 8 weeks. Most migrations take 10-12 weeks accounting for incidental issues, learning curves, and unexpected configurations. Plan for the longer timeline rather than hoping for the minimum.
Start with the engagement data analysis
Before any migration work, understand your engagement patterns deeply. What percentage of subscribers are highly engaged? Which segments have which open/click rates? Which content categories perform best? This analysis informs warmup strategy and helps identify post-migration changes.
Use the IP warmup period for engagement-based segmentation
Send to engaged subscribers first during warmup. This produces better warmup outcomes (engagement signals favorable to receivers) and surfaces any data quality issues before less-engaged subscribers are affected.
Maintain Mailchimp through cutover
Do not cancel Mailchimp until self-hosted has demonstrated stable production operation. The cost of one extra month on Mailchimp is small compared to the cost of having no fallback if self-hosted has issues during initial production.
Plan for the template port effort
Templates require manual conversion. Budget 1-3 hours per active template. Templates that are rarely used can be ported as needed rather than upfront.
Document the segmentation logic before migration
Mailchimp segments need to be recreated in the new platform. Documenting the segment logic explicitly before exporting from Mailchimp makes the recreation faster and more accurate.
Where this customer is now
Three months past full cutover, the customer’s operation is stable. Subscriber growth continues at the prior pace. Deliverability metrics remain at or above Mailchimp baseline. Operational time investment is bounded at sustainable levels.
The customer reports the migration was worth doing but they would not have wanted to do it without managed services support. The combination of technical infrastructure work and ongoing deliverability operations would have exceeded their internal capability without us.
For other publishers considering similar migrations, our standing offer: a no-commitment discussion to quantify the economics and assess feasibility for your specific situation. The migration is operationally bounded but real. The economics work for specific publisher profiles. The risks are manageable with proper planning.
The threshold matters. Below 200K subscribers, mainstream ESP convenience usually wins. Above 200K, the savings justify the operational investment. The exact crossover depends on your specific economics, but the pattern holds for newsletter publishers in this segment.