Punchh Grows the Loyalty of More Than 70 Million Customers Using AWS

Punchh

Helping Create a Sense of Loyalty

Punchh, Inc is a leading digital marketing company that provides a software-as-a-service (SaaS) solution to brick-and-mortar retailers and restaurants to maximize their customer lifetime value (CLV). CLV, which reflects the profitability of a customer relationship, is largely determined by customer loyalty.

Punchh’s SaaS platform, Punchh Marketing Cloud, helps retailers and restaurants acquire customers and turn them into loyal followers. This is typically done by running promotions for the restaurants. For example, if a customer downloads the restaurant’s app and signs up for its loyalty program, the restaurant might offer a free food item. The platform will then manage the loyalty program, awarding loyalty points for each restaurant order and allowing members to redeem those points for discounts on subsequent orders.

“ Without Amazon ECS and our microservices migration, our IT costs would be four times higher than they are today.”

Aditya Sanghi, Co-Founder and Chief Technology Officer, Punchh Inc

A Move Toward Modernization

When Punchh launched in 2011, the application behind the Punchh Marketing Cloud ran on a single virtual private server on the Linode cloud. In 2014, Punchh decided to modernize the application to simplify scaling by moving to microservices. Before it got started, the company compared running a microservices infrastructure on Linode versus running one on Amazon Web Services (AWS). Explains Aditya Sanghi, co-founder and chief technology officer at Punchh, “We wanted to assess AWS because of its breadth of services for microservices infrastructures.” AWS offered Punchh a configuration management system called AWS OpsWorks. The framework provided the business with the functionality to scale its microservices architecture swiftly.

Breaking Up a Monolith

Punchh migrated its application from Linode to the AWS Cloud in a couple of weeks. “Once we knew we had successfully replicated our database, we moved the web tier to AWS and then switched the DNS,” says Sanghi. Punchh began creating containers to manage the microservices infrastructure for its application. It used Docker containers running on the Amazon Elastic Container Service (Amazon ECS) container orchestration service. “Amazon ECS was essential because it allowed us to segregate our monolithic application and divide it up into smaller services to scale quickly and easily in Docker containers.” By moving to a microservices infrastructure on AWS, Punchh has reduced its IT costs for the Punchh Marketing Cloud. Says Sanghi, “Without Amazon ECS and our microservices migration, our IT costs would be four times higher than they are today. To support the monolithic application we had before, we would have needed to overprovision our IT to cope with peak periods.”

Amazon ECS is configured to use AWS Auto Scaling so that as workloads on the Punchh Marketing Cloud increase, the microservices supporting the application scale up. When workloads decrease, the microservices scale back down. Sanghi comments, “With Amazon ECS, our application is highly elastic and can handle peak periods such as at the start of each day when we launch campaigns, as well as during lunch and dinner, when people are checking the value of their loyalty points and maybe redeeming them against a meal.”

Ensuring Key Services Are Faster and Resilient

Hundreds of gigabytes of data from the Punchh Marketing Cloud are stored in the Amazon Relational Database Service (Amazon RDS). Punchh has three databases running in Amazon RDS at present. One database contains menu orders from each restaurant, to keep track of what food is ordered and when it was ordered. The second database stores data on food and drink combinations, likewise creating a record of where and when these combinations are asked for. The third database keeps a record of all push notifications to loyalty program members. “Amazon RDS allows us to manage the most important part of our application in the most efficient way possible. It scales automatically and has disaster recovery built in, replicating data across different AWS Availability Zones,” states Sanghi.

Punchh also uses the Amazon Aurora service—which is up to five times faster than standard MySQL databases—to store receipts from point-of-sale (POS) terminals in each of the restaurants. “This database is essentially one large table with high amounts of writes because every POS is sending us data in real time,” says Sanghi.

Onboarding New Customers Within Hours

Thanks to the microservices infrastructure and Amazon ECS, Punchh can now onboard new customers for its Punchh Marketing Cloud service within a day, when it would have taken weeks with the previous virtual server solution. Docker containers for its application can now be launched in seconds. “This means we can start testing and building the environments on our Punchh Marketing Cloud for new customers within hours,” comments Sanghi.

Doubling Revenues Every Year

Since migrating to AWS, Punchh has seen revenues from its Punch Marketing Cloud increase by 100 percent per annum. The solution is currently helping retailers and restaurants, including eight of the world’s top-20 restaurant chains, maximize the CLVs of approximately 70 million customers. It’s supporting more than 170 mobile apps, and the AWS infrastructure behind the service is processing around 3 billion API calls a month. Says Sanghi, “We are looking to expand and attract customers in sporting events and theme parks thanks to the scalability of our AWS infrastructure.”

Learn More

To learn more, visit https://aws.amazon.com/containers/