Case Study
Giving Kevel's ad platform a second home on Google Cloud
Kevel's customers were asking for Google Cloud; Ologist engineers replicated its production AWS estate onto Google Cloud in less than six months, with no interruption to the platform.
- Client
- Kevel
- Year
- Service
- Google Cloud Platform, Multi-cloud infrastructure, Infrastructure as code

The platform behind the platforms
Kevel builds the infrastructure behind retail media. Its APIs let retailers and marketplaces run their own advertising businesses: the approach that built Amazon's ad business, made available to everyone else. Retailers like The Home Depot, Chewy and Dollar General run their media networks on it.
The platform was built on AWS and has run there, in production and under constant development, since 2010. It is a large, well-run estate looked after by a sizeable engineering team: ad serving that answers in milliseconds and is held to 100% uptime, the reporting and forecasting that sits behind it, the UI and management layer customers work in, and the core infrastructure holding all of it up.
Where the customers were going
Retail media is one of the fastest-growing parts of advertising, and the businesses building it are not all on the same cloud. A growing share of Kevel's customers run their estates on Google Cloud, and they wanted Kevel's ad decisioning next to the data it depends on, rather than a network hop away. Kevel's platform ran on AWS.
The demand came with a deadline. Customers had launch windows of their own, and the platform needed to be in production on Google Cloud, at full parity, before they opened.
A second home, not a migration
Ologist engineers worked alongside Kevel's team to replicate the estate onto Google Cloud. Not a lift-and-shift, and not a rewrite. A second home. The AWS platform kept serving customers throughout, while the Google Cloud estate came up alongside it, service by service, until the two matched.
The work covered the entire estate. The high-performance ad serving, which has a 100% uptime commitment to keep. Reporting and forecasting. The UI and management layer. And the core infrastructure that everything else stands on.
That meant mapping years of considered AWS decisions onto their Google Cloud equivalents. Most mapped directly. The significant exception was DynamoDB, which was re-homed onto a combination of Firestore and ScyllaDB. It meant one set of infrastructure as code, written in CDK for Terraform and maintained across both clouds, so the estates evolve together rather than drift apart. And it meant proving parity properly, for performance and for resilience, because an ad server that answers slowly might as well not have answered at all.
The hardest part was the ad decisioning platform itself, the latency-critical core of the estate. That move was done by hand, end to end, and verified against the AWS platform before any traffic was trusted to it.
Ready when the customers were
The Google Cloud estate reached production parity in under six months, inside the window Kevel's customers needed. Kevel's platform now runs on both clouds from one set of code, and a customer can be served on whichever cloud they already call home.
Kevel's engineers know that platform better than anyone, so our job was never to take it off them. It was to put the second estate up alongside the first, prove it, and hand it back as one thing they could run from one set of code.
The work behind the work
Most platforms are shaped by where they started. The useful work is making sure that isn't where they have to stay. Kevel's estate can now follow its market, to new customers, new regions and new clouds, without being rebuilt each time.
That is what we mean by digital permaculture: systems designed to grow and adapt alongside the organisations using them, rather than being replaced every few years.
What we did
- Google Cloud Platform
- Multi-cloud infrastructure
- Infrastructure as code
- Cloud architecture
- Zero-downtime delivery
Taking a mature platform cross-cloud is not a migration problem, it's a parity problem. The interesting work wasn't standing the second estate up. It was proving that it behaved the same as the first one under load, and making sure the two would stay that way after we left.

Partner, Ologist
- From first service to production parity on Google Cloud
- < 6 months
- Interruptions to the AWS platform while the second estate came up
- Zero
- Clouds run from one set of infrastructure as code
- 2
- Of AWS decisions mapped onto Google Cloud equivalents
- 10+ yrs