Sign in and play
Name your team and get your own app to defend. Nothing to install, ready in about 2 minutes.
A monthly game for engineers. Thousands of customers hit your app at once, and you decide how it grows to serve them. Every customer kept waiting or turned away costs money. Lose the least, spend the least, climb the leaderboard.
Real Kubernetes autoscaling under the hood: the Horizontal Pod Autoscaler and KEDA, on a cluster run by Qovery.
A real wave on Qovery. Instances arrived too late, and every lost request cost money.
Every team starts with the same app and faces the same rush. Only your choices differ.
Name your team and get your own app to defend. Nothing to install, ready in about 2 minutes.
Decide how fast your app grows, how big it gets and what you are willing to spend. A practice wave replays every time you move a lever.
Launch a ranked run when you're ready. Every team faces the same waves, and your best run of the month goes on the public leaderboard.
Pick what your app is. When it slows down or falls over, you watch the money go, live. After 5 seconds, your customer is gone.
Every business has the same prices and the same 5-second limit, so the leaderboard stays fair. Google found that 53% of mobile visits are abandoned when a page takes more than 3 seconds to load, so 5 seconds is generous.
Every wave is ten minutes of customers, the same for every team. When the rush ends, every server you kept running for nothing still costs you.
Each league brings new kinds of waves and new levers. One setup has to hold every wave of your league: acing one and crashing on another won't win.
Customers served fast earn points. Customers kept waiting cost points, and customers you lose cost five times more. The less you spend on servers to get there, the higher you rank.
The same settings teams tune in production. You unlock more as you move up a league.
How busy your app gets before it adds a server. Early is safe, late is cheap.
How many servers wait for the rush, and how far you let it grow.
How long to keep extra servers once the rush ends. It might come back.
A few big servers or many small ones.
Watch how hard your app works, or how much it holds in memory. One reacts sooner than the other.
Grow a little at a time, or all at once.
Servers on standby, ready the second the rush hits, at half price.
Send customers to a new server too early and they fail. Too late and they wait.
Servers at 40% of the price, until the cloud takes them back mid-wave.
Grow with the crowd itself, not with how busy your servers are.
Be ready before an announced ticket drop. The timing shifts a little.
No customers, no servers, no bill. The first customer after a quiet night waits.
A new season starts on the 1st. The podium goes to the three teams with the most points that month: 25 for first place in a league down to 1 for tenth, times the league's weight, from ×1 in Beginner to ×4 in KEDA. See the championship
Every month is a season, from the 1st to the last day (UTC). Teams of 1 to 3, and you can play again every month.
Yes. Your control room starts with working defaults, and the practice wave shows what each lever changes as you move it.
Yes. Practice mode needs no sign-in: same game, same levers, against sample teams, with your runs kept in this browser. Ranked runs need a Qovery sign-in and a real environment for your team; you can ask for one email when sign-ups open.
A daily challenge: one scenario a day for everyone, with three levers and its own ranking, and a streak if you come back every day. Achievements for things like zero lost customers, half the budget or a personal best. And practice waves, as many as you want.
Any time. Every calendar month is a season, from the 1st to the last day (UTC). Your team and your app stay from one month to the next; the leaderboard starts fresh on the 1st, and past months stay public.
Qovery does. The infra bill comes from public instance prices and the money lost from your slow and lost requests. Both are game numbers, and nobody gets a bill.
Yes, you need a Qovery account. It keeps your session, your team, your dedicated app and your scores from one day, and one month, to the next. Sign in with GitHub, GitLab or Google; if you don't have an account yet, signing in creates one, free and without a card.
You don't need any infrastructure, cloud account or credit card. Your team's app runs on Qovery's infrastructure, and Qovery pays for it.
Not in the monthly ranking: each league has its own, since the scenarios and budgets differ. In the yearly championship, yes: a place earns 25, 18, 15, 12, 10, 8, 6, 4, 2 or 1 points, times ×1 in Beginner, ×2 in Intermediate, ×3 in Expert and ×4 in KEDA. Winning Expert is worth three times winning Beginner.
Each request is fast (under 300 ms), slow (300 ms to 5 s) or lost (an error, or no answer within 5 s). A scenario scores fast − slow − 5 × lost, divided by what your instances cost at public cloud prices. Under 99% availability, or over the p95 latency target, the scenario score is halved. Over budget in any scenario and the run is disqualified. Your league score is half your average scenario and half your weakest one.
Each team gets its own environment on Qovery, on a Kubernetes cluster managed by Qovery. Your app is a small Go service, and the levers are its Kubernetes autoscaling settings: the Horizontal Pod Autoscaler (CPU or memory target, min and max replicas, scale-down window, scale-up policy), the readiness probe, spot capacity, and KEDA scalers (request rate, cron, scale to zero) in the KEDA league. The control room applies them through the Qovery API in about 15 seconds.
The load generator runs inside your environment and calls your app on its internal address, so internet latency never counts against you.
Each month, the podium team gets three months of a Qovery plan for its company and a gift card for the players to keep: Scale and $500 for first, Growth and $300 for second, Starter and $100 for third. If your company already pays for Qovery, you get the gift card but not the plan months. Every player also gets a result card to share after each ranked run. The plans are described on qovery.com/pricing.
At the end of each month, the top 10 settings of the season are published on the leaderboard.
Sign in, name your team, and you're playing in about 2 minutes. Free, on us.