
How Session Fill Rate Affects Your Multiplayer Hosting Costs

When game developers talk about matchmaking, the conversation often focuses on player-facing metrics: skill-based matchmaking (SBMM), matchmaking rating (MMR), queue times, and match quality. These things matter. They directly shape whether players stay or leave.
But there's another matchmaking metric that gets far less attention, one that doesn't show up in player reviews or community complaints. It shows up in your hosting invoice.
That metric is session fill rate.
Fill rate is not a matchmaking metric. It's a billing metric. Most developers don't think of it that way, and that framing gap has a direct cost.
This article breaks down what session fill rate is, how it connects to hosting costs, and what it looks like across different game types. If you want to dig into the technical mechanics of how to optimize it, the in-depth companion guide is available here.
What Is Session Fill Rate?
Session fill rate is the percentage of your game server's player capacity that is actually occupied by active players, averaged across a session's full lifespan. A server configured for 10 players that runs with 8 players on average has an 80% fill rate. One that runs at 5 players on average has a 50% fill rate.
That gap matters because you are billed for the server regardless of how many players are in it.
Fill rate is shaped by how players enter a session. In matchmade games, the matchmaker determines how full the lobby is at the moment the session starts; the primary lever on fill rate. For games that support backfill, new players can join in-progress sessions to replace leavers or fill empty seats, which improves average occupancy over a session's lifespan. For persistent servers, a server browser lets players self-select into available slots, distributing fill more organically across active instances.
The Relationship Between Fill Rate and Hosting Cost
The relationship between session fill rate and hosting cost is difficult to measure at scale without matchmaking metrics. Thanks to our experience working with matchmaking data, we can say that the relationship is approximately proportional in modeled scenarios, and that real-world deployments confirm a similar pattern.
As a directional rule of thumb: for session-based games, each percentage point improvement in fill rate can reduce monthly hosting costs by roughly up to 1%.
The math behind it is straightforward. At any given moment, the number of active sessions your infrastructure needs to run is:
active sessions = CCU / (players_per_session × fill_rate)
A lower fill rate means more sessions needed to serve the same number of players. More sessions mean more vCPU-minutes billed.
To make this concrete, the table below is based on a modeled preset: a mid-market session-based shooter with 10,000 peak CCU, 8 players per match, 1.0 vCPU per session, and a 55% hybrid deployment (bare metal with cloud overflow). These are illustrative figures, not a guarantee for your specific game, as each game's metrics are unique, but they show the shape of the relationship clearly.
Fill Rate | Monthly Cost | Annual Overspend vs 95% |
|---|---|---|
50% | $17,247 | +$95,436 |
60% | $14,443 | +$61,788 |
65% | $13,366 | +$39,492 |
70% | $12,447 | +$37,836 |
80% | $10,948 | +$19,848 |
85% | $10,327 | +$12,396 |
90% | $9,773 | +$5,748 |
95% | $9,294 | - |
A few things stand out. First, the curve is steeper at the bottom. A studio improving from 60% to 70% fill saves roughly $24,000 per year in this model. Improving from 85% to 95% saves roughly $12,400. Studios with the lowest fill rates also have the most to gain per point of improvement. Second, $5,748 annual overspend at 90% fill is harder to ignore, even if the $478/month difference seems manageable.
Match size adds a compounding dimension on top of fill rate. In the same model, moving from 8 to 10 players per session at 95% fill reduces monthly cost by a further $1,796, roughly $21,500 per year. Fill rate determines how efficiently you operate within your cost structure. Match size determines what that cost structure is.
Your numbers will differ based on your CCU, server size, deployment mode, and cloud provider mix. The fill rate calculator lets you model your own game's scenario directly, or contact us for a more tailored estimate.
Why Fill Rate Degrades
Low fill rate usually isn't a bug. It's often a natural outcome of how matchmaking and server lifecycle interact, and how the player base consolidates over time.
The most common causes are:
Filling a server as soon as the minimum player count is met rather than waiting for a fuller lobby
Aggressive timeout settings that prioritize speed over session density
Game mode proliferation that splits the matchmaking pool across too many queues
Instance lifecycle overhead from warmup and drain phases that are billed but deliver no gameplay
None of these are failures of intent. They're the predictable result of matchmaking rules that were tuned for player experience without fill rate as an explicit constraint.
Geography makes this worse. Small regional player pools are structurally difficult to fill. You can run a globally healthy average fill rate while one region hemorrhages cost per player (see "The Regional Blind Spot").
Where It Hits Hardest
Fill rate risk is not equal across game types. The two structural properties that matter most are lobby size and match duration. Together they set a ceiling on how efficiently any game can fill sessions, regardless of how well the matchmaker is tuned.
Battle Royale titles face the hardest challenge. A 24-player lobby requires assembling a large group before the session can start, and early drop-offs mean the server rarely stays full for the entire match. Estimated fill rates without dedicated optimization fall somewhere in the 50-65% range structurally. That's the starting point before any matchmaking inefficiency is layered on top.
MOBAs and shooters sit in a more manageable range, estimated at 65-80%, but they are highly sensitive to regional fragmentation. Their match sizes are smaller and easier to fill in healthy markets, but a single underperforming region can drag an otherwise healthy aggregate figure down significantly, as the next section covers.
For games where cross-platform play isn't available across all supported hardware, such as many VR titles where players on different headsets cannot match together, the player pool is effectively split into separate queues per platform. This isn't always within a developer's control, but it's worth factoring into fill rate expectations. A title with players spread across multiple incompatible platforms faces fill rate challenges that a single-platform title of the same total size would not.
The Regional Blind Spot
A studio running multiple regions doesn't have one fill rate. It has as many fill rates as it has regions.
Tracking only a global aggregate makes it easy to miss the region that is paying two or three times more per player to serve a fraction of your audience.
An anonymized session-based PvP title running five global regions showed exactly this. Primary markets ran at reasonable fill rates. But one smaller regional deployment was observed running at roughly 35% fill, meaning for every dollar of server cost, only about $0.35 worth was delivering actual gameplay. The cloud cost per player in that region was approximately three times higher than in the primary market, purely because of matchmaking inefficiency rather than infrastructure cost.
That studio almost certainly had a healthy-looking global average. The average masked the outlier entirely.
Measuring and Improving It
The first step is knowing your number. The fill rate calculator provides a starting point based on your game's parameters before you instrument anything. If you use Edgegap's matchmaker, fill rate metrics are also available directly through the analytics dashboard.
Once you have a baseline, the levers available to improve it are well-defined. The in-depth optimization guide covers all of these in detail, but here's what to explore:
Set min_team_size and max_team_size separately. The matchmaker targets maximum fill by default and holds out as long as possible. Setting min_team_size lower than max_team_size defines the floor — the point below which the matchmaker will accept a partial lobby rather than let a ticket expire with no match at all. Backfill then recovers toward full capacity after the session starts.
Tune your expansion rules. Gradual relaxation of skill and latency constraints over queue time increases the chance of a fuller lobby without compromising early match quality.
Implement backfill for applicable game modes. For games where players can join in progress, backfill replaces leavers and fills empty seats throughout the session's lifespan rather than just at match start.
Use per-profile configurations for low-CCU edge cases. Off-peak hours, secondary regions, niche game modes, and low-population maps all create conditions where a standard profile will time out or under-fill. A separate profile with wider expansion tolerances for those conditions can significantly improve fill without affecting peak-hour match quality.
Monitor fill rate per region, not just globally. The aggregate number hides regional outliers. Tracking fill rate by region is the only way to identify where cost-per-player is running highest.
Bot Replacement as a Hidden Cost Multiplier
Replacing missing players with bots is a common solution for game modes that need a minimum player count to function. The hosting cost is typically underestimated because it compounds across three layers.
The missing human player reduces fill rate directly, meaning the session is running at lower occupancy than intended.
The AI logic running server-side adds CPU load on top of the base session cost.
And the bot's game state is networked to all connected clients, adding egress cost that scales with player count and tick rate.
What appears to be a player experience solution carries a measurable infrastructure cost at each layer. For game modes where bots are structurally necessary, that cost is worth accounting for explicitly rather than absorbing it as unexplained overspend.
—
Cost figures in this article are modeled based on a fixed illustrative preset and should not be treated as guaranteed outcomes. Fill rate ranges by genre are structural estimates based on game mechanics analysis and deployment patterns from anonymized clients. The regional fill rate observation is derived from anonymized data from a client deployment.
Written by
Jakub Motyl, Product Manager at Edgegap








