How provably fair works
Provably fair games let you check that a result wasn't changed after you bet. The casino commits to a secret server seed by showing its hash in advance, your client seed and a bet counter (nonce) are mixed in, and once the seed is revealed you can recompute every result yourself.
On this page 12
- The problem it solves
- The three ingredients
- How a result is made
- A simple example: a dice roll
- Crash games are slightly different
- How to verify a result yourself
- What provably fair does not prove
- Which games are provably fair
- A quick checklist before you trust a “provably fair” label
- Provably fair vs certified RNG
- Play within your limits
- Frequently asked questions
“Provably fair” is a label you’ll see on crash games, Mines, Plinko, Dice and most crypto casino originals. It’s a genuinely useful idea, but it’s often explained badly. This guide shows you what’s going on under the hood and how to check a result yourself in a couple of minutes.
The problem it solves
In a normal online slot, results come from a random number generator (RNG) on the provider’s server. Independent labs test and certify those RNGs, but as a player you can’t check any single spin. You trust the lab and the licence.
Provably fair games add a layer you can check yourself. They answer one specific question: was this result decided before I bet, and not changed afterwards?
The three ingredients
Every provably fair system uses some version of these:
| Ingredient | Who sets it | What it does |
|---|---|---|
| Server seed | The casino | A long secret random value. Its hash is shown to you before you bet; the seed itself is revealed later. |
| Client seed | You (or your browser) | A value you can change at any time, so the casino can’t pre-pick results that suit it. |
| Nonce | Counts up automatically | The bet number with this pair of seeds: 1, 2, 3 and so on. It makes every bet different. |
How a result is made
- The casino commits. It generates a server seed and shows you its SHA-256 hash. A hash is a one-way fingerprint: you can’t work back from it to the seed, but any change to the seed would give a completely different hash.
- You add your seed. Your client seed is combined with the server seed and the nonce, usually with a function called HMAC-SHA256. The output is a long string of hexadecimal characters, effectively a very large random number.
- The game converts it. The game turns part of that number into a result: a dice roll from 0 to 100, a position of mines on a grid, a path down a Plinko board or a crash multiplier.
- The casino reveals. When you rotate to a new seed pair (or after the round, in crash games), the old server seed is revealed.
- You verify. You hash the revealed server seed and check it matches the hash you were shown. Then you rerun the calculation with your client seed and nonce and confirm you get the same result.
If both checks pass, the casino couldn’t have changed the result after seeing your bet.
A simple example: a dice roll
Say a dice game shows you this before you bet:
- Server seed hash:
6b86b273ff34…(64 characters) - Your client seed:
lekker2026 - Nonce:
1
You bet “under 50”. The game computes HMAC-SHA256 using the server seed as the key and lekker2026:1 as the message. It takes the first eight hex characters of the output, turns them into a number between 0 and 4,294,967,295, divides by 4,294,967,296 and multiplies by 100. Say that gives 37.42. You win.
Later, the server seed is revealed. You hash it: the result starts 6b86b273ff34…, matching what you saw. You recompute the HMAC with your client seed and nonce 1 and get 37.42 again. Verified.
Different games use different conversion steps, and each one publishes its method on its fairness page. The idea is always the same.
Crash games are slightly different
In multiplayer crash games, everyone shares the same result each round, so you can’t each have your own client seed. Aviator by Spribe solves this by combining the server seed with client seeds from the first players to bet in that round. Other crash games use a long pre-generated chain of hashes, where each round’s seed is the hash of the next one, so the whole sequence is fixed in advance.
Either way, the round details panel shows the seeds and hash, and you can verify the multiplier after the round. Our guide to how to play Aviator covers the rest of the game.
How to verify a result yourself
- Open the game’s fairness or provably fair panel (often a shield or key icon).
- Note the hashed server seed before you play, and set your own client seed if you like.
- Play your rounds. Each bet’s nonce is shown in your bet history.
- Rotate the seed (or wait for the round to finish in crash games) to reveal the old server seed.
- Paste the server seed, client seed and nonce into our provably fair verifier. It runs entirely in your browser.
- Check that the hash matches and that the result matches your bet history.
What provably fair does not prove
This is the part most explanations skip.
- It doesn’t prove the RTP. The house edge is in how results are turned into payouts. A Mines game that pays 1.10x for a pick with an 88% chance has a 3% edge whether or not it’s provably fair.
- It doesn’t make you more likely to win. The maths of a 97% game is the same either way.
- It doesn’t protect your withdrawals. An operator can run perfectly fair games and still delay or refuse payouts. That’s what licensing, reputation and reviews are for.
- It only works if you check before you bet. If you never look at the hash before playing, you can’t prove it wasn’t swapped.
So treat provably fair as proof the dice weren’t loaded, not as proof the casino is a good one.
Which games are provably fair
Most crash games and instant “originals” are, including:
Browse the full provably fair games category, or find casinos that carry them in our provably fair casinos list. Many are crypto casinos, so our crypto casino guide is useful background.
A quick checklist before you trust a “provably fair” label
- Is the hashed server seed shown before you bet?
- Can you change your client seed?
- Does each bet show its nonce in your history?
- Is the conversion method published, so you can rebuild the result from the hash?
- Does the casino reveal old server seeds when you rotate?
If the answer to any of these is no, the game may use the label without giving you a real way to check it.
Provably fair vs certified RNG
| Provably fair | Certified RNG (most slots) | |
|---|---|---|
| Who checks it | You, round by round | An independent test lab, periodically |
| What it proves | That a result wasn’t changed after your bet | That the RNG is random and the RTP matches the spec |
| Typical games | Crash, Mines, Dice, Plinko, Hi-Lo | Slots, RNG table games |
| Protects payouts? | No | No |
Both are legitimate. They answer different questions.
Play within your limits
A fair game is still a game with a house edge. Set a budget, use deposit limits, and if gambling stops being fun, call the National Responsible Gambling Programme on 0800 006 008. For the short definition, see provably fair in our glossary.
Frequently asked questions
What does provably fair mean?
It means the game uses a cryptographic method that lets you verify each result. The casino locks in its secret seed before you bet by publishing a hash of it, and after the seed is revealed you can recalculate the outcome and confirm it matches.
How do I verify a provably fair game?
Copy the revealed server seed, your client seed and the nonce for the bet from the game's fairness or history panel, and paste them into a verifier such as ours. If the hash of the server seed matches the one shown before you bet, and the recalculated result matches, the round was fair.
Is Aviator provably fair?
Yes. Spribe's Aviator combines a server seed with client seeds from the first players to bet in each round, and you can check the round's seeds and hash in the round details.
Does provably fair mean I'm more likely to win?
No. Provably fair proves the result wasn't manipulated. It doesn't change the house edge, which is built into how results are converted into payouts.
Can a provably fair casino still cheat?
It can't change a verified result, but it can still set a low RTP, refuse withdrawals or close accounts. Provably fair checks the game, not the operator, so licensing and reputation still matter.