How Sportmonks Handles 600M API Requests a Week on Laravel Cloud
When Peter Dorn, the lead software developer at Sportmonks, thinks about weekends before migrating to Laravel Cloud, he remembers the constant check-ins, recurring downtime, and a single infrastructure contractor handling everything. "There wasn't a weekend that we didn’t have to check in with our hosting guy," Peter said. "Things were breaking down frequently."
Today, Sportmonks runs 12 applications on Laravel Cloud, serving sports data to more than 100,000 registered customers worldwide, with no infrastructure failures since going live.
That is no small feat considering Sportmonks’ scale:
600 million API requests served in a week, across soccer, Formula 1, and cricket data.
24,000 database queries per second at peak, reading from a primary 450 GB PlanetScale database.
Four million database rows read per second at peak load.
More than 1,000 jobs dispatched per second during live match weekends, climbing higher when hundreds of games run simultaneously.
Three billion cache events handled by ElastiCache for the API product alone.
12 applications migrated to Laravel Cloud, with autoscaling and managed queues handling burst traffic automatically.
Most importantly for Sportmonks, they’ve had zero infrastructure failures since migration. For the first time in years, the team has weekends back.
Meet Sportmonks
Sportmonks is a Netherlands-based sports data API company that originally started as a hobby project. Ronnie Visser, co-owner and CTO, originally wanted to build a fantasy soccer game that used real match data. To do that, he needed to collect data, and eventually, the data product became the actual business opportunity.
In 2016, during the UEFA European Championship, Sportmonks pivoted from a consumer website to an API-first business. Using Laravel Spark for billing, Stripe for payments, and a simple API endpoint, they launched and found their first customer.
Today, the team of 26 serves soccer, Formula 1, and cricket data to a customer base ranging from individual developers on free plans to enterprises running production workloads. "Without Laravel, it would probably never have happened," Ronnie said.
The Infrastructure Problem
Sportmonks started by running everything on their own servers before moving to a single contractor working with UpCloud. He managed the databases, built custom caching mechanisms, and wrote Sportmonks' autoscaling logic. But the platform had grown beyond what one person could reliably maintain.
As Sportmonks grew, so did the consequences of downtime. The customer base had evolved from individual developers to large companies building businesses on top of the data. A weekend outage was no longer just an inconvenience.
"We have a responsibility to our customers to be available at all times," Ronnie explained. "People build companies based on our data. We take this responsibility seriously."
The contractor was skilled, but maintaining a high-availability sports data platform, especially one that spikes dramatically every Saturday and Sunday when hundreds of soccer matches kick off simultaneously, had become more than one person could sustain. Database issues and API crashes during peak load were recurring. The team needed a platform that could handle burst traffic without manual intervention.
Why Laravel Cloud
Sportmonks has used Laravel since the company's founding, over 10 years ago. That history mattered when evaluating infrastructure providers. A platform built specifically for Laravel means everything works as Laravel intends, without custom glue code holding it all together.
There was also a practical infrastructure reason. At Sportmonks' request volumes, caching is not optional. With 600 million API requests a week and no two customers pulling exactly the same data, the team caches anything that can be held static, even if only for 10 or 20 seconds.
If you are running an application of our size or smaller, and your current infrastructure is just taking a lot of time to adjust day over day, night over night, to get things running, go Laravel Cloud because they know what they're doing. Just try it.
Laravel Private Cloud provided the scalability they needed via ElastiCache, which runs natively on AWS alongside the rest of the infrastructure. That proximity matters, as they incur lower networking overhead. The team had also been in contact with another company, but the Laravel Cloud team was able to provide a proof of concept that showed it could handle the scale they required.
"We knew upfront this would not be a one- or two-week job," Ronnie said. "We had a lot of technical challenges ahead."
A True Partnership
What followed was months of collaborative work. The Laravel team ran daily calls, stayed available for late-night sessions across time zones, and worked through problems as partners rather than vendors.
That commitment was key to sealing the deal. "The trust and the collaboration grew in these weeks and months," Peter said. "We invested, Laravel invested. At one point, we said to each other: We cannot imagine that now, at this stage, there will be something that could change our minds."
The Queue System Challenge
Unlike most migrations, where the database is often the biggest challenge, Sportmonks faced a different hurdle: queues.
Sportmonks had used Laravel Horizon for roughly three years. They were comfortable with it, they knew per-queue what was happening, they had visibility into failures, and they had built their systems around 150 to 200 distinct named queues. Moving to managed queues meant collapsing that entire model into a single queue, and the initial reaction was alarm.
"We had some kind of brain error when we were told we were going back to one queue," Peter said. "How will this ever perform?"
After configuration and tuning on both sides, the team now considers managed queues better than the previous Redis and Horizon setup. The feature delivers faster job pickups, improved throughput, and proper handling of burst traffic when match weekends hit.
Monitoring With Laravel Nightwatch at Scale
Sportmonks had previously used Flare for error monitoring. It was adequate for surfacing exceptions, but it lacked a genuine understanding of how Laravel applications work internally.
"The backtracing, the logical knowledge of how the framework works, is not in Flare, and it is in Laravel Nightwatch," Peter said. "That was a great win."
During the migration, the team needed Nightwatch limits raised to eight billion events to capture everything they needed. For the API product alone, three billion cache events were registered. The core billing and backbone application generated over one billion query events.
One feature proved especially useful at Sportmonks' scale: the ability to add customer IDs as context to queries. Being able to filter Nightwatch by a specific customer ID and see exactly which requests they were making and which queries were firing helped resolve a pagination issue that had gone unresolved for years.
Performance Gains and What Actually Changed
Pinning exact before-and-after numbers is difficult because Sportmonks' previous infrastructure had poor observability. They accepted the performance they had because they had no way to measure what better looked like.
What they can measure now is the absence of failure. No infrastructure incidents since migration. Support request volume has dropped. The team sees issues in real time instead of waiting for customers to report them.
API response times are faster. Database load is lower, in part because Peter implemented cursor-based pagination stored in ElastiCache, eliminating expensive offset queries that had been hammering the database. Queue throughput has improved. Autoscaling handles the weekend spikes that used to require manual intervention and still sometimes failed.
Before | After | |
|---|---|---|
Hosting | Self-managed servers on UpCloud | Laravel Cloud |
Databases | Custom, contractor-managed | PlanetScale (450 GB primary) |
Caching | Hand-rolled caching logic | ElastiCache |
Autoscaling | Custom-built, unreliable at peak | Laravel Cloud autoscaling |
Queues | Laravel Horizon, 150-200 named queues | Laravel Cloud managed queues |
Monitoring | Flare (exceptions only) | Laravel Nightwatch |
Infrastructure ownership | One contractor, no redundancy | Fully managed platform |
Reclaiming the Weekend
The engineering team, which had been managing a fragile, home-cooked infrastructure on top of their product work, has been freed from a significant source of stress.
"We can sleep peacefully now without the stress of the infrastructure failing," Peter said. "It's working. And now we only look at how things are running out of curiosity."
What Comes Next: The World Cup and Beyond
The European leagues that generate Sportmonks' heaviest load are currently in their off-season. The real stress test is still ahead: the World Cup, followed by the restart of the major European competitions in August, when hundreds of games are played simultaneously, and job dispatch rates climb well above their current peaks.
However, the team is not anxious about it. "We have full confidence that Laravel Cloud can handle it," Peter said. "And also in the team behind it and the monitoring."
For other developers considering a similar move, Peter's advice is direct: “If you are running an application of our size or smaller, and your current infrastructure is just taking a lot of time to adjust day over day, night over night, to get things running, go Laravel Cloud because they know what they're doing. Just try it.”
"You have to be open-minded when migrating, because everything is pretty much opinionated. You don't have the freedom to build the infrastructure, but you have to let go of your old way of thinking. Let go. Trust in Laravel Cloud and the way they build stuff," he advised.
Try Laravel Cloud
Sportmonks migrated 12 applications, handling 600 million API requests a week, with a team that wasn’t fully dedicated to managed cloud infrastructure before. The result was zero downtime since launch, measurably better performance, and a team that no longer monitors infrastructure out of necessity.
If you're running a high-traffic Laravel application and want to stop managing infrastructure manually, try Laravel Cloud.
Sportmonks
Problem
Unreliable, home-cooked infrastructure managed by a single contractor was causing recurring downtime as Sportmonks scaled, putting at risk relationships with enterprise customers who depend on the platform.
Solution
Migrating 12 Laravel applications to Laravel Private Cloud, with PlanetScale for databases, ElastiCache for caching, and managed queues, eliminated infrastructure failures and gave the team the observability and autoscaling needed for a high-traffic sports data platform.
Talk to a Cloud expert
Let the Laravel team design the right infrastructure configuration for you.
Contact salesDon't miss these

Ready to ship?
Let's build the incredible together, with Laravel. Start now with $5 in usage credit.