← All docs

Platform reference · Levels and ranks

The Levels Ladder

Players earn XP from every bet they place. XP carries them up a ladder you build, and if they go quiet, back down it. Here is how that works, what you can change, and where it catches people out.

Unit of progress
XP, earned from bet stakes
Counters per player
Total XP and Period XP
Ladder shape
Ranks, levels, bonuses
Reset rhythm
Monthly by default

Color key: You configure Runs automatically Watch out

§ 01

The model in a minute

The whole system in six points.

  1. Every settled bet gets converted into XP. The rate depends on which currency the bet was placed in.
  2. That XP lands in two separate counters. Total XP is a lifetime figure. Period XP resets on a schedule you set.
  3. A player's level is whichever rung on the ladder has the highest XP threshold their Total XP has passed.
  4. Each level also carries a Maintenance XP figure. That is the Period XP a player needs to keep the level when the period closes.
  5. When a period closes, one of two things happens. Either their Period XP resets and they keep their level, or they drop one rung and their Period XP resets.
  6. Levels carry bonuses. Reaching a level makes its bonuses claimable, and leaving it makes them unclaimable again.
Runs automatically

Nearly all of this looks after itself. The ladder you build plus a player's betting history is enough to work out where they belong, and nobody has to touch it day to day.

The one manual lever

An admin can grant a specific level to a specific player. It only ever moves someone up, and it works by topping up their XP rather than by pinning a label on them. Section 09 covers what it does and what it costs you.

§ 02

Anatomy of the ladder

Four things are involved. You build three of them and the system writes the fourth.

You build · cosmetic
Rank

A visual family: a name, a color and an icon. Bronze, Silver, Gold. Ranks carry no XP figure and have no bearing on progression. They exist so several levels can share one look. The color is what tints a player's name in chat, on live wins and on tournament leaderboards.

Rank names, colors and icons all have to be unique. Icons come from a fixed list of 33.

You build · mechanical
Level

One rung. It has a name, a parent rank, an XP Threshold (the XP needed to reach it), a Maintenance XP figure (the Period XP needed to keep it), a details image and a list of bonuses.

Position on the ladder comes from the XP Threshold and nothing else. There is no separate ordering field, and which rank a level belongs to makes no difference to where it sits.

You build · reward
Level bonus

A link between a level and a bonus that already exists. Only bonuses created for use with levels can be attached, and the system rejects the rest. You can attach the same bonus to more than one level.

System writes
Player level record

The system writes a fresh row every time a player's level changes, and only the newest row is live. Each row holds their Total XP, their Period XP, their level, whether they leveled up during the current period, and a copy of the XP figures that applied when the row was written.

Nothing gets overwritten, so every player has a full level history. You will find it in the admin on their Engagement tab.

RANKS — COSMETIC GROUPING ONLY BRONZE SILVER GOLD LEVELS — ORDERED BY XP THRESHOLD Bronze I Bronze II Silver I Gold I 0 XP 5,000 XP 15,000 XP 40,000 XP Total XP 22,500 30% of the way to Gold I SEPARATE COUNTER Period XP 3,200 MAINTENANCE 8,000 resets to zero every period · never affects which level you are on
Two counters doing two different jobs. Total XP is what puts a player on the ladder. Here 22,500 XP lands them inside the Silver I band, 30% of the way to Gold I. Period XP is a separate running total that only gets read when the period closes, and only to check it against the current level's Maintenance XP. Ranks sit above the levels as a visual grouping and hold no numbers of their own.
Watch out

If your lowest rung has a threshold above 0, brand new players sit on no level at all. No rank color, no level tag, no level bonuses. Set the bottom rung's XP Threshold to 0 if you want everybody on the ladder from signup.

§ 03

How XP is earned

XP comes from bet stakes and nothing else. Deposits, logins and wins earn none of it. When a bet finishes, its stake gets converted to XP and added to both counters. It makes no difference whether the bet won or lost, so a 10 SC losing spin and a 10 SC jackpot spin earn the same XP.

The conversion rates

Bet currencyConversionExample stakeXP earnedSet where
Sweeps Coins (SC)Stake × the SC multiplier100 SC85.00Brand config
Gold Coins (GC)Stake × the GC multiplier100,000 GC10.00Brand config
Crypto or fiatConverted to USD at the live rate, then 1 USD becomes 1 XP25 USDTabout 25.00Exchange rates

Those examples use the reference multipliers in the platform config, 0.85 for SC and 0.0001 for GC. Both are per brand settings and both have to sit between 0 and 1. You can slow XP earning down, but you cannot push an SC or GC multiplier above face value.

Watch out

Crypto and fiat bets skip the multipliers entirely and convert straight to USD at 1 XP per dollar. So on a brand that takes both, a $1 crypto bet earns roughly 18% more XP than a 1 SC bet does at the reference multiplier. If your brand runs both rails and you want them level with each other, that is an engineering change. There is no way to correct it from the ladder.

Which bets count

  • Any settled bet with a stake amount recorded against it, in any game and any currency.
  • Bets with no stake amount earn nothing and get skipped quietly. Free spin rounds fall into this group unless a stake value was recorded.
  • XP is calculated on the stake and never on the win. Nothing is layered on top of the currency rate.
Bet settles any game stake Convert SC × 0.85 GC × 0.0001 +XP +XP Total XP lifetime · sets level Period XP resets each period read at period close (§ 05) Passed the next threshold? NO Progress bar moves shown live to the player YES New level record written Sync bonuses grant / expire Notify player email + in-app
One bet, one pass through the pipeline. The conversion and both counter updates happen on every settled bet. The threshold check is where the path splits. Most bets just move the progress bar along. The one that crosses a threshold writes a new level record, re-syncs the player's bonuses and triggers the level change messages.
Runs automatically

XP updates run on a background queue rather than inside the bet, so a player's progress bar catches up a moment after the spin, and a little further behind when the platform is busy. Jobs that fail get retried and then parked on a dead letter queue, so XP does not go missing.

§ 04

Climbing

One rule decides a player's level, and it gets applied fresh every time.

The rule

Current level is the level with the highest XP Threshold at or below the player's Total XP.
Next level is the level with the lowest XP Threshold above the current level's threshold.
Previous level is the level with the highest XP Threshold below the current level's threshold.

Three things follow from that rule, and they matter more than they look at first.

  • Total XP never gets spent. Reaching a level consumes nothing. Play only ever pushes the number up. The one thing that pulls it down is a downgrade at period close.
  • A single bet can clear several rungs. A big enough wager takes the player straight to whichever level their new Total XP lands in, however many thresholds sit in between.
  • The top rung has nothing above it. A player who reaches it keeps accumulating Total XP, but there is no next threshold to measure against, so their progress bar reads "Max" and stays there.
THE LADDER Silver I Gold I Gold II Gold III 15,000 40,000 45,000 70,000 SKIPPED +9,000 XP · one bet BEFORE AFTER · TWO RECORDS Silver I · active Total 38,000 Next threshold 40,000 Silver I · closed Total 40,000 (capped) closed at its cap Gold II · active Total 47,000 Period XP rebased to 2,000 immune to downgrade this period Gold I never becomes a live record, so its bonuses never reach the player. The bet crossed two thresholds at once; only the landing level is reconciled.
A level up writes two rows. The outgoing row gets closed off at exactly the threshold it reached, which keeps the level history readable. A new live row opens at whichever level the new Total XP resolves to. When a bet clears two thresholds at once, the rung in the middle never becomes a live row, so its bonuses never reach the player. Period XP also gets rebased on a level up, down to just the overflow into the new level.
Watch out

Skipped rungs mean skipped rewards. If your bands are narrow next to the stakes your players actually place, high rollers can clear two or three rungs on one bet and never see those levels' bonuses. A reward that everyone passing through should receive needs to sit on a rung nobody can jump, or on every rung from that point upward.

§ 05

The period: hold or drop

The period is what turns the ladder into a retention mechanic, and it is the only part of the system that can take a level away.

When it fires

  • A job wakes at midnight on the server clock every day and checks one thing: does today fall on a period boundary, according to your brand's schedule?
  • The reference schedule is 0 0 1 * *, which means the 1st of every month. Change the expression and you change the rhythm to weekly, fortnightly or quarterly.
  • Only the day part of the schedule gets used. The time of day is ignored, and a boundary always gets processed on the daily midnight run.
  • Two switches gate the whole thing. Levels have to be enabled for the brand and periods have to be enabled. Turn periods off and nobody is ever reset or downgraded.
Confirm this one

Two different clocks are involved. The daily trigger follows the server's own timezone, while the test for whether today is a period boundary is worked out against the UTC date. On a server running in UTC those agree and there is nothing to think about. Nothing in the deployment config pins the timezone, so it is worth asking engineering what our servers actually run on before you promise anyone a specific hour.

What happens to each player

Period closes 1st of the month, 00:00 Levelled up during this period? NO Level has a maintenance rule? YES Period XP reached Maintenance XP? YES · immune NO · no rule YES · met it OUTCOME A · MOST PLAYERS Reset Level unchanged Total XP unchanged Period XP → 0 immunity cleared NO · missed it OUTCOME B · ALL THREE FAIL Downgrade Drops exactly one level Total XP reduced Period XP → 0 bonuses re-synced
Three checks, and a player only drops if all three go against them. The first one catches people out. Leveling up at any point during the period makes a player immune for the rest of it, however far short of the Maintenance XP figure they finish. In the Reset case their Total XP, their level and their rank color all stay exactly as they were.
You configure

Maintenance XP is set per level. Put it at 0 and that level can never be lost, because the check always passes. That is how you turn a rung into a permanent achievement instead of a monthly commitment.

How the run behaves

The run sweeps every registered player, so it is built for safety ahead of speed.

  • Players get walked in pages of 1,000, and each one becomes its own small job. Nothing runs inside a single long transaction.
  • A lock stops two servers starting the same run, and every player gets marked off as processed, so a retry or a deploy partway through cannot process anybody twice.
  • The run takes a while to drain. On the morning a period closes, expect level changes and their emails to arrive spread across a window rather than all at once.
§ 06

How a downgrade lands

A downgrade keeps a player's progress percentage and re-projects it onto the band underneath. Someone 40% of the way through Silver I lands 40% of the way through Bronze II, so they do not fall to the bottom of the rung below.

BEFORE Total XP 25,000 25,000 XP · 40% 15,000 · Silver I 40,000 · Gold I 9,000 XP · 40% 5,000 · Bronze II 15,000 · Silver I same 40%, one band down AFTER 5,000 + 40% × 10,000 = 9,000 Total XP
Progress carries over even though the level does not. A player keeps their relative standing inside the band they land in, so the climb back up is proportional to how far along they had gotten. Their Total XP figure is rewritten to match the new position, and this is the only place in the system where Total XP goes down.

Three cases behave differently

SituationWhat the drop doesWhy it matters to you
Player is on the top rung Total XP gets set to the previous level's threshold exactly, so they land at 0% of the rung below. Your VIPs take the harshest drop in the system. No progress carries over and they land on the floor of the rung below, losing all the overflow XP they had built up. Worth remembering when you price Maintenance XP at the top.
Player is on the bottom rung Total XP gets set to that rung's own threshold. Their level does not change, and their progress within it is wiped. Progress toward the second rung disappears, and the change still gets recorded and emailed as a level change. Setting bottom rung Maintenance XP to 0 avoids the whole situation.
Player is on no level Nothing. There is no maintenance rule to fail, so they always get a Reset. Players below the ladder never get penalized, though they never show up in level reporting either.
Watch out

A downgrade only ever costs one rung, however long a player has been away. Nothing compounds. Someone who misses six periods in a row falls six rungs across six months, one at a time.

§ 07

Rewards

The only functional reward attached to a level is its list of bonuses. Whenever a player's level changes, the system reconciles their level bonuses against the new level in a single pass.

First time on a level
Granted

Any bonus on the new level that this player has never held gets created for them and becomes claimable.

Back on a level
Switched back on

A bonus they held before and had switched off becomes claimable again. It is the same bonus record, not a fresh copy.

Leaving a level
Switched off

Any level bonus missing from the new level stops being claimable. Nothing gets deleted, so the record survives for history.

Two things follow from that, and both are deliberate.

  • A level bonus only ever gets granted once per player. Bouncing between two rungs across periods switches the same bonus back on each time instead of issuing a new one, so nobody can farm rewards by hovering around a threshold.
  • A bonus attached to several levels survives moves between them. If Gold I, II and III all carry the same weekly cashback, a player moving among those three keeps it live throughout. That is the usual way to make a reward stick from a given rank upward.
Watch out

Since a bonus never gets granted twice, a level bonus cannot serve as a repeatable reward. A recurring perk, say a monthly free spin drop for Gold players, has to come from the bonus's own recurrence rules. The levelling system will not hand it out again. And a player who ends up on no level loses every level bonus at once.

You configure

Only bonuses set up for use with levels can be attached to a rung. Tournament, package and CDP bonuses get rejected. If a bonus you want is missing from the level form's picker, it was created for something else and needs a level version.

§ 08

Player journeys

Six paths, which between them cover about every state a player can be in. They all assume the reference ladder: Bronze I at 0, Bronze II at 5,000, Silver I at 15,000 and Gold I at 40,000, with Silver I asking for 8,000 Period XP to hold.

The new signupDay zero
  1. 01The account is created and a level record is written immediately, with 0 Total XP and 0 Period XP.
  2. 02The bottom rung sits at 0 XP, so they resolve straight onto Bronze I and any Bronze I bonuses are granted there and then.
  3. 03Their rank color and level tag show up in chat, on live wins and on tournament leaderboards from their first message.
Outcome: on a ladder whose bottom rung sits above 0 XP, steps 2 and 3 never happen. The player has no level and no tag until their first meaningful wager.
The steady climberThe intended path
  1. 01They play through the month. Each settled bet adds XP to both counters, and the progress ring on Profile › My Level creeps up as they go.
  2. 02Mid-month they cross 15,000 Total XP. A new level record opens at Silver I, Silver I's bonuses are granted, an email goes out and an in-app level up notification fires.
  3. 03That level up also marks them immune to downgrade for the rest of the period.
  4. 04At period close they get a Reset. Silver I stays, Total XP stays, Period XP goes to zero and the immunity clears.
Outcome: Silver I, with the maintenance clock starting fresh. Worth noticing that the month they climbed was a month they could not be dropped.
The player who holdsRetention working
  1. 01They start the period on Silver I with 22,500 Total XP, needing 8,000 Period XP to hold it.
  2. 02They wager steadily and finish on 9,400 Period XP, over the line but well short of Gold I at 40,000.
  3. 03At period close they get a Reset. Their level has not changed, so no email and no notification go out. All they see is their period counter going back to zero.
Outcome: Silver I retained, silently. If you want players to feel they successfully defended a level, that has to come from your CRM. The platform says nothing on a hold.
The player who slipsThe painful path
  1. 01They start on Silver I with 25,000 Total XP, 40% of the way to Gold I.
  2. 02They have a quiet month and finish on 2,100 Period XP against a requirement of 8,000. No level up, so no immunity.
  3. 03At period close all three checks go against them. They drop to Bronze II and their Total XP is rewritten to 9,000, which is 40% through the Bronze II band.
  4. 04Silver I's bonuses switch off and Bronze II's are granted or switched back on. An email goes out. No in-app notification fires.
  5. 05Getting Silver I back means climbing from 9,000 to 15,000, so 6,000 XP rather than the 25,000 they had accumulated.
Outcome: Bronze II. Of all the journeys here this is the one most likely to generate a support ticket, and the email is the only thing the platform tells them. That template needs to earn its place.
The player who gets a grantManual intervention
  1. 01Support escalates a goodwill case. The player sits on Silver I with 22,500 Total XP.
  2. 02An admin grants them Gold I. The system awards the 17,500 XP gap, so their Total XP becomes exactly 40,000.
  3. 03They move to Gold I, Gold I's bonuses are granted, and they get both the email and the in-app level up notification, exactly as if they had earned it.
  4. 04The grant also marks them immune to downgrade for the rest of the period, and it is recorded against the admin who did it.
Outcome: Gold I, and 17,500 XP of permanent credit they did not wager for. The XP does not wear off, so it shortens every future climb as well.
The player at the topEndgame
  1. 01They reach Gold I, the highest rung. Their profile reads "You have reached the maximum level" and the progress bar shows Max.
  2. 02Total XP keeps climbing with every bet, invisibly. With no next threshold to measure against there is no visible progress and no further reward.
  3. 03If they ever miss Gold I's maintenance requirement they land on the floor of the rung below with no progress carried over, losing all that accumulated overflow.
Outcome: your most valuable players have nothing left to chase and the steepest fall if they pause. Adding rungs above them fixes it, and it is safe to do as long as you follow the playbook in section 09.
§ 09

What you control

In the admin

The ladder itself lives under Platform Setup › Level Management, split into a Levels tab and a Ranks tab. Level grants live somewhere else, on the player's own page. Every create, edit and delete gets recorded in the audit log against the admin who did it.

ActionWhereEffect on live players
Create, edit or delete a rankRanks tabImmediate and purely visual. A rank cannot be deleted while any level still points at it, and once it does go, it is gone for good.
Create a levelLevels tab, CreateNew signups resolve against it straight away. Existing players stay put until you recalculate, or until they cross their own cached threshold through play.
Edit a level's XP figuresLevels tab, EditExisting players keep the old figures until you recalculate. A period close also refreshes those figures, without moving anyone.
Edit a level's bonusesLevels tab, Edit, step 2Nothing changes hands until the player's next level change, or until you recalculate, which reconciles everyone.
Delete a levelLevels tab, DeleteHidden from players immediately. Anyone still sitting on it stays there until you recalculate.
RecalculateLevels tab, Reset levelsRe-resolves every player against the current ladder. See below.
Grant a levelUser Administration, the player's pageImmediate, for that one player. See below.
Inspect a playerUser Administration, the player, EngagementRead only: current level, full level history, XP chart.

Granting a level

You can put an individual player on a specific level without waiting for them to earn it. It is the only manual lever in the system, and it works differently from how most people assume.

THE LADDER Bronze II Silver I Gold I Gold II 5,000 15,000 40,000 45,000 player at 22,500 XP grant Gold I Total XP set to exactly 40,000 grant Silver I or below Refused. A grant can only move a player up the ladder.
A grant works by topping up XP. The system works out the gap between the player's Total XP and the target level's threshold, awards exactly that much XP, and lets the normal level up path do the rest. Their Total XP permanently becomes the threshold figure. The gap has to be positive, so a grant can only ever move a player upward, and a level they have already passed cannot be granted again.

What it does, in order:

  1. Works out the gap between the player's current Total XP and the target level's XP Threshold.
  2. Awards exactly that much XP, so their Total XP permanently becomes the threshold figure.
  3. Runs the same level up path a real bet would, which grants the target level's bonuses and marks the player immune to downgrade for the rest of the period.
  4. Sends the level change email and the in-app level up notification, exactly as an earned level up would.
  5. Writes a grant record naming the admin, the player and the level, so it shows up alongside cash and package grants in the player's history and in the audit log.
Three limits worth knowing

Upward only. The target level's threshold has to be above the player's current Total XP. Granting a level at or below where they already are gets rejected, so you cannot demote anyone and you cannot re-grant a level they have already passed.

The XP is permanent. A grant leaves the player holding credit they never wagered for, and it does not wear off. That shortens every future climb and cushions every future downgrade, which makes granting a top level a bigger giveaway than it looks.

It refuses stale players. If the player's cached XP figures are out of date, the grant lands them somewhere other than the level you picked, and the system rejects the whole thing rather than guessing. If you get that error, recalculate first and try again.

Permissions

Granting a level sits behind the funds write permission, alongside cash and package grants, plus Admin and Super Admin. That is a deliberately tighter group than the platform setup permission that governs the ladder itself. Anyone who can hand out money can hand out levels.

The one button that matters: Reset levels

Badly named

The button says Reset levels and warns you it "will reset and recalculate levels for all users". It does not reset anything. It re-resolves every player against the ladder as it stands right now. Total XP survives, Period XP survives, downgrade immunity survives, and nobody's progress gets wiped.

Here is what it actually does to each player:

  1. Takes their existing, untouched Total XP and looks up which level that XP now corresponds to.
  2. Writes a new level record if their level changed, or if any of the three cached XP figures changed.
  3. Reconciles their level bonuses against wherever they ended up.

Each player's record carries a copy of the XP figures that were in force when it was written, and those copies are what the system checks on each bet. A ladder edit does reach existing players on its own eventually, but only in pieces: they pick up the new shape when they next cross a threshold, and a period close refreshes their cached figures without moving them. Recalculating is how you apply an edit to everyone at once, on purpose, at a moment you choose.

YOU DO THIS Lower Gold I: 40,000 → 30,000 Ladder updated instantly, in the ladder BEFORE YOU PRESS RESET LEVELS bet lands Player record (unchanged) Total XP 32,000 Cached next threshold 40,000 written before your edit Check runs against 40,000 32,000 qualifies for Gold I but stays on Silver I The admin shows the new ladder. Players are still on the old one. AFTER YOU PRESS RESET LEVELS Cached figures → 30,000 Re-resolved from 32,000 Moved to Gold I · bonuses granted
The ladder and the players are two separate things. Editing a level changes the ladder straight away, but every player's record carries a copy of the XP figures that applied when it was written, and that copy is what the per-bet check reads. Recalculation is what closes the gap for everybody at once. Skip it and the ladder still reaches players eventually, but unevenly, depending on what each of them happens to do next.

The ladder edit playbook

  1. Make all your edits first. Add, re-price and delete every rung you mean to change before you touch Reset levels. One recalculation covers the whole batch, and one batch means one email per affected player instead of several.
  2. Think about the send before you press it. Every player whose level actually moves gets a level change email. Re-pricing a busy band can turn into a mass send.
  3. Press Reset levels and confirm. The run gets queued and drains in the background. The toast tells you it started, not that it finished.
  4. Spot check a few players under User Administration, Engagement, to confirm they landed where you expected.
Runs automatically

You cannot double-start a recalculation. A second attempt within a minute comes back with "already in progress". The action needs the platform setup write permission, Admin or Super Admin.

In the brand config, with engineering

SettingWhat it doesReference value
Levels enabledMaster switch. Off means no My Level page, no level tags in chat or on leaderboards, and no period runs.true
SC multiplierXP per Sweeps Coin staked. Capped at 1.0.85
GC multiplierXP per Gold Coin staked. Capped at 1.0.0001
Period enabledOff means Period XP still accrues but nothing ever resets or downgrades.true
Period scheduleWhich days close a period. Day granularity only.0 0 1 * *

These are deploy time settings per brand rather than admin toggles, so changing any of them is an engineering request. Check your brand's live values before you plan around them. The example configs in the repo have levels switched off for some brands.

§ 10

Rules and gaps

Half the job of designing a ladder is knowing which mistakes the system will catch for you and which ones it will wave straight through.

Enforced, so you get an error

  • XP Threshold and Maintenance XP have to be zero or positive, and the admin form takes whole numbers only.
  • Every level needs a name, a rank and a details image of at least 400 by 130 pixels.
  • A level's rank has to exist.
  • Rank name, color and icon are each unique platform wide, and icons come from a fixed list of 33.
  • A rank cannot be deleted while any level references it.
  • Only level scoped bonuses can be attached to a level.
  • A player has exactly one live level record, guaranteed in the database.
  • Level grants only go up, and one that would land the player anywhere other than the level you picked gets rejected outright.
  • XP counters can never go negative and no bet can apply negative XP.
  • Levels and their bonus links are soft deleted, so engineering can recover them and existing history keeps resolving. Deleting a rank is permanent, though the system blocks it while any level still points at that rank.

Not enforced, so nobody stops you

  • Duplicate XP Thresholds. Two levels on the same figure is accepted. One of them ends up unreachable and the ordering between them is arbitrary. Keep thresholds distinct.
  • Maintenance XP has no relationship to band width. You can ask for more Period XP to hold a level than it takes to climb out of it, which makes standing still harder than advancing.
  • Ranks do not have to be contiguous or ascending. Nothing stops a Gold level sitting between two Bronze levels on the XP axis, and the player facing list will show exactly that.
  • Ladder edits do not reach players until you recalculate, and nothing warns you.
  • Deleting a level does not move the players on it. Recalculate straight after any delete.
  • No preview and no dry run. There is no way to see how many players a re-priced ladder would move before you commit to it.
  • No cap on grants. No limit on how many levels one admin can grant, no approval step, and no way to reverse one. The XP a grant awards cannot be taken back.
  • No way to adjust XP directly. You can grant a whole level, but you cannot nudge a player's XP up or down to correct a mistake.
§ 11

Edge cases

Behaviour that is correct but surprising. These are the ones that generate questions in a room.

CaseWhat happensFlag
Bottom rung above 0 XPNew players have no level, no rank color and no level bonuses until their first qualifying bet.Design choice
One bet clears two rungsThe rung in the middle never goes live, so its bonuses never reach the player.Reward loss
A level up buys immunityAny level up during a period exempts the player from that period's maintenance check, however small the level up was.By design
A granted level buys immunity tooA grant runs the same path as an earned level up, so it also protects the player from that period's downgrade.Easy to miss
A grant is permanent XPThe player keeps the XP the grant awarded, which shortens every future climb and softens every future downgrade.Easy to miss
Grants cannot be undoneThere is no revoke, and no way to remove the XP. The only route back down is a period downgrade.No safety net
A level up rebases Period XPOn a level up, Period XP drops to just the overflow into the new level rather than keeping the month's running total.By design
Downgrade on the bottom rungProgress within the rung gets wiped but the level does not change, and it still gets recorded and emailed as a level change.Confusing email
Downgrade on the top rungNo progress carries over. Straight to the floor of the rung below, forfeiting all overflow XP.Hits VIPs
Holding a level says nothingA successful defence produces no email and no notification. The only sign is the period counter resetting.Message gap
Downgrades email but do not notifyLosing a level sends the level change email. The in-app notification only fires when a player goes up.Message gap
Recalculation can mass emailEvery player whose level moves gets a level change email, all inside the same run.Plan the send
Crypto and fiat skip the multipliersThose bets convert to USD at 1 XP per dollar with no multiplier applied.Rail imbalance
Bets with no stake amountEarn no XP and get skipped quietly.By design
Total XP is a running counterIt never gets recomputed from bet history, not even by a recalculation. It is what has accumulated, less any downgrades.By design
Period runs drain over timeLevel changes and emails arrive across a window on the morning a period closes, not all together.By design
A period close refreshes cached figuresThe monthly run rewrites every player's stored XP figures from the live ladder, but it does not re-resolve which level they are on. So a re-priced ladder partly lands on its own, leaving players on a level their Total XP no longer matches.Easy to miss
The progress bar can disagree with itselfAfter a ladder edit and before a recalculation, the next level a player sees is read live while the percentage is worked out from their stored figures, so the card can name one level and measure against another.Recalculate
Periods off, levels onA perfectly valid setup. Players climb and can never fall, and Maintenance XP becomes decorative.Your call
§ 12

Player messages

What the platform sends on its own, with no CRM campaign attached. The two blanks are the interesting part.

EventEmailIn-app notificationLive UI update
XP earned, no level changeNothingNothingYes, progress ring and counters
Level up from playYesYes, "level up"Yes
Level up from an admin grantYesYes, "level up"Yes
Level held at period closeNothingNothingPeriod counter resets
Downgraded at period closeYesNothingYes
Moved by a recalculationYesNothingYes

The level change email carries the new level name, its rank name and the XP threshold. It only goes out if the player has an email address on file and they landed on a level that still has a rank attached, so a player who ends up on no level hears nothing at all. One template covers both directions, so the same email announces a promotion and a demotion.

Two things to own

One. A single template for up and down is a real brand risk. Read the copy again imagining a player who has just lost a level, and push for a separate downgrade template if it does not hold up.

Two. Holding a level, which is the outcome you most want to reinforce, passes in silence. If defending a level should feel like an achievement, that campaign has to be built in your CRM against the level change feed, which is published to the data warehouse on every change.

Worth knowing

A granted level is indistinguishable from an earned one as far as the player is concerned. They get the same email and the same congratulatory notification. Whether that is what you want from a goodwill gesture is a call for you rather than for engineering.

§ 13

Decisions to make

The mechanics are settled. These are the calls that belong to you, and the questions worth taking into the room.

Ladder shape
Does the bottom rung start at zero?

Starting at 0 XP puts every signup on the ladder straight away, tagged in chat and holding a welcome bonus. Starting above 0 makes the first rung something they earn, at the cost of a cohort you cannot tag or reward.

Band width
How wide, given your stake sizes?

Narrow bands give frequent, motivating level ups and more skipped rungs whose bonuses go nowhere. Wide bands mean every reward gets collected but progress feels slow near the top. Check your typical and 95th percentile stakes against your band widths before you commit.

Maintenance
Which levels are permanent?

Maintenance XP of 0 makes a rung impossible to lose. A common shape is permanent lower rungs and defended upper ones. Remember that a bottom rung with a non-zero requirement produces a confusing downgrade that changes nothing.

Top tier fairness
Is the VIP cliff acceptable?

Top level players who miss maintenance land on the floor of the rung below with nothing carried over. Soften it with a 0 maintenance figure on the top rung, or add rungs above so nobody sits at the ceiling.

Grants
Who can grant a level, and when?

Anyone with funds write can do it, there is no approval step, no cap and no way to reverse one. Agree what a grant is for, who signs it off, and whether a top level grant needs a second pair of eyes. The XP it hands over is permanent.

Messages
Who owns the silent outcomes?

Holding a level sends nothing, and a downgrade sends a shared template with no in-app notification. Both need either a CRM campaign or an engineering ticket. Decide which, and when.

Questions for engineering

  • Can the Reset levels button be renamed and its warning corrected? It currently describes something the system does not do.
  • Can the level change email be split into separate promotion and demotion templates?
  • Should the in-app notification fire on a downgrade too, or is email only deliberate?
  • Should a granted level really send the same celebratory notification as an earned one?
  • Can a level grant be reversed, or the XP it awarded be adjusted, when someone gets it wrong?
  • Is a dry run possible, showing how many players a ladder edit would move before we commit?
  • Should crypto and fiat bets get an XP multiplier so all rails earn at the same rate?
  • What are our brand's live values for the levels switch, the multipliers and the period schedule?
  • What timezone do the servers run in, so we know what hour a period actually closes?
  • Has the level grant feature shipped to our brand yet, or is it still on its way?
The Levels Ladder · platform reference for brand managers Describes behaviour as built. Confirm live per brand config with engineering.