CasinoSportsPredict
VIP ClubPoints Store
Casino Games
HomeOriginalsSlotsLive CasinoGame ShowsNew ReleasesBessBet PicksBonus BuyBaccaratBlackjackRouletteProvidersSidebets
Other Products
PacksCrypto FuturesLootboxes
Earn
PromotionsChallengesAffiliateVIP TransferCrypto CardSupport
CasinoSportsPredict
VIP ClubPoints Store
Casino Games
HomeOriginalsSlotsLive CasinoGame ShowsNew ReleasesBessBet PicksBonus BuyBaccaratBlackjackRouletteProvidersSidebets
Other Products
PacksCrypto FuturesLootboxes
Earn
PromotionsChallengesAffiliateVIP TransferCrypto CardSupport
How it worksWhat it paysRTPTest vectorsVerify

Provably Fair

  • How it works
  • What it pays
  • RTP
  • Test vectors
  • Verify
Provably FairChicken

Chicken

Each hop has its own number, which picks the one lane a car is in. You get across when your lane is not that one.

RTP
98%
Max win
700K×
Verify a Chicken roundPlay Chicken
How it works

How a Chicken result is made.

  1. 1

    Commit

    We choose our server seed before you bet and show its fingerprint. This commits us to that seed.

  2. 2

    The draw

    Your seeds choose the lane containing a car for each hop. Your chicken crosses safely when you choose another lane.

  3. 3

    Reveal

    Rotate your seed to reveal ours. Use both seeds and the bet number to recheck any past result.

The whole formula

result = HMAC-SHA256(serverSeed, clientSeed:nonce:round)

  • serverSeedOur seed, sealed until you rotate
  • clientSeedYour seed
  • nonceBet number, +1 each bet
  • roundExtra numbers, for games that need more
chicken.tsTypeScript
1export function advanceChicken(state: ChickenState, pick: number, float: number): { state: ChickenState; won: boolean } {
2  if (state.status !== 'active') throw new InvalidBetConfigError('Chicken game is not active');
3  if (!Number.isInteger(pick) || pick < 0 || pick >= state.lanes) throw new InvalidBetConfigError('Chicken pick is out of range');
4  if (state.stepsCompleted >= state.maxSteps) throw new InvalidBetConfigError('Chicken maximum step count reached');
5 
6  const failPosition = Math.floor(float * state.lanes);
What it pays

Every outcome and what it pays.

Difficulty
Easy · 5 lanes, 1 loses
Steps survivedChance to get therePaysRTP
180.00%1.23×98%
264.00%1.5×96.04%
351.20%1.84×94.12%
440.96%2.25×92.23%
532.77%2.76×90.38%
626.21%3.38×88.58%
720.97%4.14×86.8%
816.78%5.07×85.07%
913.42%6.21×83.36%
1010.74%7.61×81.7%
118.59%9.32×80.06%
126.87%11.42×78.46%
135.50%13.99×76.89%
144.40%17.13×75.35%
153.52%20.99×73.85%
162.81%25.71×72.37%
172.25%31.5×70.92%
181.80%38.58×69.5%
191.44%47.26×68.11%
201.15%57.9×66.75%
RTP

Return to player.

Theoretical RTP: 98%.

  1. Each hop pays its fair multiplier × 0.98.

    multiplier = 0.98 × lanes ÷ (lanes − 1)
  2. Your chance of getting through a step is exactly 1 ÷ its fair multiplier, so each hop returns 98% of its stake on average.

Test vectors

Fixed inputs, known results.

Reproduce these results with the inputs below.

Verify

Check a Chicken round.

Find it in your bet history or on any bet slip

What we check

  1. 01Our seed matches its fingerprint
  2. 02Your seed is mixed in
  3. 03Numbers are drawn
  4. 04Numbers become the result
  5. 05The result matches your bet

Everything is calculated in your browser.

BessBet

Support

FairnessLive SupportResponsible GamblingTerms of servicePrivacy Policy

Products

CasinoSportsbookPrediction MarketPacksCrypto Futures

Platform

VIP ClubPoints StoreChallengesCashier

Explore

PromotionsRewardsAffiliate

© 2026 BessBet. All Rights Reserved.18+ only