Marketing automation at scale: Customer.io + Mailgun
When Customer.io, an automated messaging platform, ran into scaling issues with their Email Service Provider (ESP), it felt like they were trying to run a race car...
When Customer.io, an automated messaging platform, ran into scaling issues with their Email Service Provider (ESP), it felt like they were trying to run a race car on vegetable oil. They knew they were never going to be able to fuel their rapidly growing company if they couldn’t find an ESP with more horsepower. Luckily, they found Mailgun, an ESP that could keep up with their explosive growth. When the technical teams at Customer.io and Mailgun came together, they built a platform capable of supporting senders with dozens of domains that needed to send millions of emails a day. We sat down with John Alison, co-founder of Customer.io, to unpack what the journey to this solution looked like.
When Customer.io was first formed 8 years ago, it was John’s goal to help companies and marketers send more relevant messages. Their initial offering was a platform that enabled their users to send targeted behavioral emails. However, in the years since its inception, Customer.io has evolved to support automated product messaging, onboarding flows, retention campaigns, newsletters, and transactional email for customers in the SaaS, EdTech, FinTech, Marketplaces, Subscription Box, and Mobile & Web Apps space. The heart of their platform is elegantly simple: The platform accumulates behavioral data from their customer’s web or mobile application and uses the data to build data-driven campaigns to target users and leads with the right message at the right time. In just 8 years, Customer.io has become a centralized place for marketers and product owners to send nearly any type of message.
It stands to reason that good email deliverability is at the heart of the service Customer.io provides; you cannot provide a messaging platform if the messages sent from the platform do not reach the intended recipients. This means that for Customer.io, deciding which ESP to use is a major decision, as it can really make or break the service they provide to their customers.
A partnership blossoms
When Customer.io set out to build their platform, they were faced with the classic choice every start-up has to make: where should they strategically focus their resources? John’s team knew it would be best if they focused their talent on building out their IP, the marketing automation platform that would become Customer.io, rather than building infrastructure from scratch. There were a ton of ESPs out there to partner with for the sending infrastructure, so why bother spending precious resources building their own? After careful research, they selected a popular ESP as their infrastructure partner and began onboarding their clients there.
After a few years with this ESP, they started to have performance issues and found themselves unable to complete daily tasks due to a confusing and ever-changing UI. Despite these challenges, the Customer.io team feared changing out their sending infrastructure. Any time you migrate IPs, you risk damaging your sending reputation, and this was not a risk Customer.io wanted to expose their clients to at the time. They decided to stick with their original ESP and see what could be done to resolve their issues.
However, when Customer.io began to acquire more and more high-volume senders, they found that this ESP simply could not keep up. It was not uncommon for these high-volume senders to send 20 million time-sensitive emails at once, but this volume would overload their ESP, resulting in deferred messages. To their end-users, it appeared that the Customer.io platform had failed, when in reality it was just that their ESP was overloaded. Ultimately, this was a poor customer experience for their end-users, which was the final straw for the Customer.io team. They committed to looking for another provider.
John knew that a handful of Customer.io clients were using Mailgun as their ESP, and those customers had seen success even at very high message volume. This led John to investigate Mailgun as a potential replacement to their current provider. His early talks with the Mailgun team provided John with the confidence that Mailgun’s technical knowledge and expertise in email would ensure a smooth migration for his customer base. Moving the Customer.io sending volume to Mailgun seemed like the smartest course of action.
Migrating from one ESP to another is a huge undertaking, and the stakes for Customer.io were extremely high. John’s team met with their Technical Account Manager at Mailgun and devised a strategy to safely move all Customer.io customers, each with dozens of sending domains, to Mailgun. As John puts it, this was actually one of the more complex parts of the migration. He says, “Since our customers send messages from their own domains, the most time consuming part was coordinating with each of our 2300+ customers and encouraging them all to add additional DNS records in order to move with us.”
In addition to the DNS records that needed to be updated, Customer.io users rely on the platform to deliver business-critical transactional and marketing communications to their customers. It was of utmost importance to not damage these sending reputations during the migration, which is something Mailgun has a proven track record of helping customers navigate. It is best practice during a migration to methodically warm up new IPs by gradually ramping up sending over a number of weeks. But how would this be accomplished across two separate ESPs without shutting down the Custiomer.io platform during the ramp up period?
So, with the help of their Mailgun TAM, the Customer.io team built logic into their product telling the platform to start sending only a small percentage of traffic to new Mailgun DNS records, while the rest of the traffic would still be sent over their previous ESP. Over the course of 3 weeks, the platform automatically ramped up the volume sent at Mailgun while scaling down the messages sent at their previous ESP. With this logic in place, Customer.io could begin to notify customers of the migration and start working with them to migrate to the new platform without worrying about overwhelming their new IPs at Mailgun.
The bulk of the migration took 3 months, with the expectation of a few stragglers. The intentional and slow warm-up of IPs ensured that the Customer.io customer base experienced a smooth transition and the migration was a success.
Since moving to Mailgun, Customer.io has been able to send more email volume than ever before. The Customer.io user base also noticed an improvement in sending speed after the migration. This has resulted in a deeper level of trust between Customer.io and their users, because the migration proved that Customer.io is committed to providing the best experience possible to their customer base.
Regarding the success of the migration, John says, “Mailgun support and expertise is truly top notch. We definitely couldn’t have done a migration of this size without having them around to double-check our assumptions and provide guidance. You can tell they care about getting email deliverability right, and our customers greatly appreciate it.”
In addition to increased performance, Mailgun has offered Customer.io an improved user management experience. The Customer.io users typically prefer to create a sending domain per sending stream (i.e. marketing@, customerservice@), and they prefer to assign different IPs to these domains. With their previous ESP, Customer.io had to create a different account per sending domain, which meant it was challenging to manage each customer from one central place. At Mailgun, they can organize all of their sending IPs in one account, resulting in easier day-to-day management.
While Customer.io has seen improvements in email sending volume, sending speed, and customer trust since their migration to our platform, John’s favorite part about Mailgun is actually not related to the product we offer, rather the relationship between the two companies. He says, “There’s a lot of facets to our relationship that make it totally unique. Not only are we a Mailgun customer and Mailgun a customer of our’s, we also partner together to serve joint customers with our platforms. Watching our companies work together is a lot of fun, because people on our side get excited when Mailgun is involved. We just know that the result is going to be positive, no matter what we’re working on.”