Provably Fair, Explained Properly
"Provably fair" is the crypto-casino answer to the oldest question in gambling: how do I know you did not rig that? It is a genuinely clever piece of cryptography that lets you verify any past round yourself. It is also one of the most misunderstood phrases in the industry. Here is exactly how it works — and exactly where it stops.
The Problem It Solves
In a normal online casino, the outcome of every round is generated on a server you cannot see. You trust that a testing lab audited the random number generator at some point, and that the operator did not change it since. Provably fair replaces that trust with a commitment scheme: the casino locks in its randomness before your bet, in a way it cannot later alter, and hands you the tools to check.
The Three Ingredients
| Ingredient | Who provides it | What it does |
|---|---|---|
| Server seed | The casino | A long secret random string generated by the casino. You only see its hash until the seed is rotated. |
| Client seed | You (your browser) | A string on your side of the equation. You can usually edit it to anything you like — which matters, as we will see. |
| Nonce | A counter | Starts at 0 and increases by 1 with every bet, so each round under the same seed pair gets a unique outcome. |
Every round outcome is a deterministic function of these three values — typically an HMAC-SHA256 or SHA-512 of server seed : client seed : nonce, with some of the resulting bytes converted into a roll number, a card order, a mine layout or a crash point. Same inputs, same outcome, every time, on anyone's computer.
The Hash Commitment: How the Casino Ties Its Own Hands
The heart of the scheme is a commitment. Before you place any bet, the casino shows you the SHA-256 hash of its secret server seed. For example, a casino might publish:
hashed server seed:
6f2c0d38a8b0e6f0c9d4a1b7e5f3820cc74e9a15d2b6f8031a4c7e0d9b5283f1
A hash is a one-way fingerprint. Nobody — not you, not the casino — can work backwards from that fingerprint to the seed. But critically, the casino also cannot find a different seed that produces the same fingerprint. So by publishing the hash, the casino has committed: whatever seed it later reveals must match this fingerprint, or it has been caught changing its randomness after the fact.
Later, when the seed is rotated, the casino reveals the actual server seed, say:
revealed server seed:
e4b1c72f90ad35...8d6027c1e5b9f4
You run SHA-256 over that revealed seed. If the output equals the hash you were shown before betting, the commitment held. If it does not, you have cryptographic proof of tampering.
Step by Step: One Round, Start to Finish
- Before betting, the casino generates a secret server seed and shows you its SHA-256 hash. Write it down or screenshot it.
- You set a client seed — ideally change it from the default to something of your own choosing. Because the outcome depends on your seed too, the casino cannot precompute results it likes: it committed to its seed before knowing yours.
- You bet. The nonce for this seed pair is, say, 0. The game computes HMAC(server seed, client seed + ":" + nonce), turns the first bytes into a number, and resolves the round.
- You bet again. Nonce becomes 1, then 2, and so on. Every round is a fresh deterministic draw from the same committed seed.
- You rotate the seed (any time, in the fairness settings). The casino reveals the old server seed and commits to a new hash for the next batch.
- You verify. Two checks: (a) hash the revealed seed and confirm it matches the pre-bet commitment; (b) replay any past round by feeding server seed, client seed and nonce into the game formula — the casino documents it, and independent open-source verifiers exist for the standard originals — and confirm the recomputed outcome matches what you were paid on.
If both checks pass for every round you care to test, the casino provably honoured its published game logic for those rounds. That is a real guarantee no fiat casino offers.
What Provably Fair Proves
- No post-bet manipulation. The outcome was fixed by the committed seed before your bet existed, so the casino could not see your wager and then pick a losing result.
- No player targeting within a seed pair. Your rounds are a deterministic sequence; the casino cannot slot a chosen outcome into position 47 for you specifically after the commitment.
- The published formula was followed. Anyone can recompute any round and audit the payout logic against the stated rules.
What Provably Fair Does NOT Prove
This is the part the marketing leaves out, and it matters more than the cryptography.
- It does not make the odds good. The verified formula includes the house edge. A provably fair dice game with a 1% edge is provably taking 1% of your turnover. Fair means the rules were followed; it says nothing about whether the rules favour you. Fair ≠ favourable — every game in our house edge guide can be simultaneously provably fair and a guaranteed long-run loss.
- It only covers the originals. Third-party slots and live-dealer tables on the same casino run on the providers own servers and are not provably fair, whatever badge sits in the site footer.
- It only protects you if you verify — or could. The maths works even if you never check, because the casino cannot know who will. But an unverifiable implementation (no seed reveal, undocumented formula, no way to change your client seed) is provably fair in name only. Treat missing verification tools as a red flag; we do, in our rating methodology.
- It does not vouch for anything else. Withdrawals, KYC behaviour, bonus term enforcement, solvency — none of it is touched by seed cryptography. A casino can run flawless provably fair dice and still be a bad place to keep money. That is what licensing, reputation and reviews are for.
Practical Habits Worth Having
- Change your client seed to your own string when you start playing, and after any big session.
- Screenshot the hashed server seed before betting under it.
- Rotate and verify occasionally — once per session is plenty. You are not auditing every round; you are keeping the deterrent credible.
- Remember what a passed verification means: the game was honest. Then reread the house edge guide for what honest costs.
Want to build intuition first? Every original here — Dice, Mines, Crash, Limbo and the rest on the games page — uses the same outcome maths as the real provably fair versions, played with fake money. And our crypto casinos guide puts provably fair in context with everything else that makes these sites different.
Frequently Asked Questions
Can a provably fair casino still cheat?
Not on committed rounds without being catchable — that is the point of the hash commitment. But it can only be caught if verification is possible and someone checks. And "not cheating" still leaves the house edge fully intact.
Does provably fair mean I have a fair chance of winning?
No. It means the published rules were followed, and the published rules include an edge for the house. Fair is not favourable — expected value stays negative on every game.
Should I change my client seed?
Yes, at least once. Setting your own seed guarantees the casino could not have precomputed your sequence before committing, since your input did not exist yet.
Are slots provably fair?
Almost never. Provably fair covers house-built originals. Third-party slot outcomes are generated on the game providers servers under lab certification, not seed commitments.
What is a nonce?
A counter that increases by one with each bet under the same seed pair, ensuring every round produces a different outcome from the same committed seeds. Nonce 0 is your first bet, nonce 1 your second, and so on.
How do I actually verify a bet?
After rotating your seed, take the revealed server seed, your client seed and the round nonce, and feed them into the casino verifier page or an open-source verifier for that game type. Also hash the revealed seed and confirm it matches the pre-bet commitment. Both must pass.