Jun 28, 2026 · 6 min read · GameMantra Team
How to define a lapsed player for your own game
Borrowing a 30-day lapse window from another game misfires win-back. Here is how to set the inactivity threshold from your own session data
There is no industry-standard definition of a lapsed player, and most studios act as if there were. A hyper-casual title treats a player as lapsed after about 48 hours of silence. A mid-core RPG might wait 14 to 30 days before it decides someone has drifted away. Both are right for their game and wrong for each other's. The number you pick decides when your win-back campaign fires — and if you borrow it from someone whose game has a different rhythm, the campaign fires at the wrong time.
This matters because the economics are real. Reactivating a lapsed player costs roughly a fifth of what it costs to acquire a new one. But that saving only lands if you reach the player inside the window where they can still be recovered, before they have moved on. Set the threshold too short and you spam people who were never gone. Set it too long and you miss them entirely. The threshold is the first decision in any reactivation program, and it deserves more than a copied benchmark.
Why a borrowed number misfires
A lapse window is really a bet about your game's natural session rhythm. It says: after this much silence, a player is more likely gone than just taking a break. That break length is genre-specific and game-specific, because it is set by how your game asks to be played.
A hyper-casual game lives on frequent, tiny sessions. A player who normally opens it three times a day and then goes quiet for two days has broken their pattern badly — 48 hours is a meaningful signal. A mid-core game with weekly events and longer sessions has players who routinely disappear for several days between play bursts. Flag those players as lapsed at 48 hours and you will fire a win-back at someone who is simply between sessions, which is at best wasted spend and at worst an annoyance that pushes them away.
So the first failure of a borrowed number is that it ignores your game's tempo. The second is subtler: it assumes all your players share one tempo, and they do not.
The binge-versus-steady problem
Inside a single game, players do not have one session rhythm. Some play in tight daily bursts. Others binge — they vanish for four or five days, then play hard for a weekend. A single global lapse threshold cannot serve both.
Suppose you set a seven-day window. For the daily player, seven days of silence is a strong sign something changed, and a win-back at day seven is well-timed. For the binge player, a four-or-five-day gap is completely normal, so your seven-day flag will sometimes catch them mid-pattern and sometimes miss the moment they actually drift, because their normal gap is already close to your threshold. The same number is too sensitive for one player and too dull for the other.
This is why a global lapse threshold is a blunt instrument even after you have tuned it to your genre. The right window for a player depends on what that specific player's normal gap looks like. A four-day silence means nothing for a habitual binger and means a lot for someone who has opened the game every single day for a month.
Deriving the window from your own data
The better approach is to read the lapse window out of your session data rather than guessing it. The raw material is the distribution of gaps between sessions — for the whole game, and ideally for each player.
Start at the game level. Look at how long your players typically go between sessions when they are still engaged. Most of those gaps will cluster in a band; a player who exceeds the far end of that band is behaving unlike an engaged player. That far edge — not a round number like 7 or 30 — is your first honest estimate of a lapse threshold. It is derived from how your game is actually played, not from how someone else's is.
Then go per-player where you can. A player's own history of session gaps tells you what is normal for them. If someone's typical gap between sessions is half a day, a three-day silence is a loud signal. If someone routinely goes four days, the same three-day silence is noise. Flagging a player as lapsed when their current gap runs past their own usual range — rather than past a single number that applies to everyone — catches the daily player and the binge player at the right moment for each.
The platform already computes the inputs this needs: per-player session cadence and the volatility of session length and frequency. A player's session-gap distribution is exactly the material a personalised lapse window is built from. Where a player has too little history to form a reliable personal pattern — a new install, say — you fall back to the game-level genre default until they have enough sessions to speak for themselves. See how it works →
What the threshold unlocks
Getting the lapse window right is upstream of everything else in reactivation. The win-back message, the returning-player experience, the offer you eventually make — all of them depend on the campaign firing at the moment a player is recoverable but not yet gone. A precise threshold is what makes that timing possible.
It also keeps you from the most common reactivation mistake: treating still-active players as lapsed. A player who plays in bursts is not a churn problem, and hitting them with a "we miss you" campaign during a normal gap reads as tone-deaf. A per-player window protects your engaged binge players from being mistaken for departures, which protects the trust you need them to keep.
The honest limit is that the lapse threshold only decides when to act. It does not tell you what the returning player needs once they come back, and it does not predict who is about to leave before they have actually gone quiet. Those are separate jobs. But they all sit on top of this one. If your lapse definition is a borrowed round number, every reactivation decision built on it inherits the same mistiming.
The takeaway
A lapsed player is not defined by an industry standard, because there is none. The window is a property of your game's session rhythm — and, more precisely, of each player's session rhythm. Borrow a number from a game with a different tempo and your win-back campaigns fire at the wrong time, spamming active players or missing recoverable ones.
Read the window out of your own data instead. Use the gap distribution of your engaged players to set a game-level threshold that reflects how your game is actually played, then go per-player where the history supports it so a binge player and a daily player each get the window that fits them. Reactivation is cheap relative to acquisition, but only when it is timed right — and the timing starts with how you define lapsed.
Share this post
See what this looks like for your game.
SDK for Unity and Unreal. A 20-minute call to walk you through it.