18+

Provably fair: how to check a result yourself

20 Oct 2026

Provably fair explained: our witch reads a case result in a crystal ball

Most CS2 case sites and crypto casinos call their games “provably fair”. It means you can check, after the game, that the result wasn’t changed once you had placed your bet. Below is how it works, step by step, with the formulas Chicken.gg publishes on its fairness pages. Other sites, such as CSGOEmpire and Duel, have fairness pages built on the same idea.

The ingredients

  • Server seed. A random string the site picks. Before you play, you only see its hash; on Chicken.gg it is a SHA-256 hash of 16 random characters. A hash works like a sealed envelope: it fixes the seed without showing it.
  • Client seed. A string on your side. You can keep the random one or type your own, so the site can’t know it in advance.
  • Nonce. A counter that goes up by one with every case you open or game you play, so each result is different.
  • Public block ID. In games where many players share one result, such as case battles and Double, Chicken.gg uses the ID of an EOS blockchain block. It picks a future block when the round starts and waits for it to be mined, so nobody, the site included, can know it in advance.

How a result is made

The site joins the inputs into one string, hashes it with HMAC-SHA256, takes the first 8 characters of the hash and turns them into a number.

  • Cases: the number is between 1 and 1,000,000. Every item in the case owns a range of numbers that matches its drop chance, so an item with a 1% chance owns 10,000 of the million numbers.
  • Double: the number is between 1 and 15. 1 is green (14x), 2 and 15 are the bait slots, other even numbers are red (CT) and other odd numbers are black (T).
  • Case battles: each player’s seat number is added to the inputs, so every seat gets its own roll in every round.
  1. 1 Three inputs Server seed hidden, hash shown Client seed yours Nonce +1 every game
  2. 2 HMAC-SHA256 The site joins the inputs into one string and hashes it.
  3. 3 First 8 characters They become a number from 1 to 1,000,000.
  4. 4 The item You get the item whose range holds that number.
11,000,000

An item with a 1% chance owns 10,000 of the million numbers: a sliver of the bar. Every other item owns its own slice, sized by its chance.

How a case result is made. The same seeds and nonce always give the same number, so once the server seed is revealed you can redo the roll yourself. Formula from Chicken.gg’s fairness pages; other sites differ in the details.

How to check a result yourself

  1. Before you play, note the hashed server seed and your client seed. On Chicken.gg they are under Fairness → Manage Seeds.
  2. Play as usual. The nonce goes up with each game.
  3. When you want to check, rotate the seed pair. The site then shows the old server seed in plain text and starts a new pair.
  4. Check that the revealed seed matches the hash you noted: its SHA-256 hash must be exactly the same. Chicken.gg shows the hash in Base64. Our provably fair checker does this check in your browser and takes the hash in hex or Base64.
  5. Paste the server seed, client seed and nonce into the site’s verification script and compare the roll with what you got. Chicken.gg links to a ready-made script for each game that you can run online.
  1. 1 Before you play The site shows only the hash of its server seed. Note it, with your client seed.
  2. 2 You play Each game uses the same seeds and the next nonce.
  3. 3 You rotate the seeds The site reveals the old server seed in plain text.
  4. 4 You check Hash the revealed seed with SHA-256 and compare.

Same hash as you noted The seed was fixed before you played and wasn’t changed.

A different hash The seed isn’t the one you were shown: the results can’t be trusted.

The hash works like a sealed envelope. Our provably fair checker does step 4 in your browser.

What provably fair proves, and what it doesn’t

  • It proves that the result was fixed before you played and that the site didn’t change it afterwards.
  • It doesn’t prove the odds are good for you. The house edge is built into the drop chances and payouts. On Chicken.gg, Double lists an RTP of 93.33% and Mines 90%, so on average you get back less than you bet. Our guide to the house edge shows what that costs you over many bets.
  • It doesn’t guarantee withdrawals, support or fair account decisions. For those, look at the licence, the terms and real withdrawal reports.
  • It only helps if you check. Note your seeds now and then, especially after a big loss or a strange streak.

Gamble only with money you can afford to lose. If it stops being fun, stop; help is on our responsible gambling page. Our Chicken.gg page has the site’s other rules and our code.

Sources: Chicken.gg fairness pages for Battles, Cases, Double and Mines, and the game rules (checked on 18 October 2026).

Last updated 20 October 2026