Provably Fair Explained: How to Actually Verify a Casino Game

Provably fair uses a hash commitment published before you bet, so the casino can't change results. Here's the mechanism and how to verify a roll yourself.

GH
Georges HajjarFact-checked
Editor-in-ChiefLast verified July 16, 2026

The problem provably fair solves

In a normal online casino, the random number generator is a black box: you cannot tell a fair loss from a rigged one. The server generates a result, tells you what it was, and you either trust the operator or you don’t. Certification labs audit that black box periodically, but you — the player — never see inside it.

Provably fair inverts that relationship. Instead of asking you to trust the result, the casino commits to its randomness before you bet and hands you the tools to check, after the fact, that it never deviated from that commitment. It’s the difference between a dealer shuffling behind a curtain and a dealer sealing the shuffled deck in a tamper-evident envelope before the first hand.

This matters most at crypto casinos, where operators are often young, licenses are lighter-weight, and the in-house “originals” (dice, crash, mines, plinko) are built by the casino itself with no third-party studio in between. Our methodology scores fairness as its own subscore partly for this reason: a verifiable originals suite is hard evidence, not marketing.

The mechanism: three inputs and one hash

Every provably fair result is computed from three values — a server seed, a client seed, and a nonce — combined with a one-way function, usually HMAC-SHA256. None of the three alone determines the outcome; the casino controls one, you control one, and the third just counts your bets.

  • Server seed. A long random string generated by the casino. You don’t see it while playing — you see its SHA-256 hash, published before your first bet against it. A hash is a one-way fingerprint: the casino can’t find a different seed that produces the same hash, and you can’t reverse the hash to predict results.
  • Client seed. A string you control. Most casinos assign a default, and every legitimate implementation lets you overwrite it with anything you like. Because you set it after the server seed hash is published, the casino cannot have tailored its seed to your input.
  • Nonce. A counter starting at 0 (or 1) that increments with every bet on the current seed pair. Bet #57 uses nonce 57. This is how one seed pair produces thousands of distinct, individually verifiable results.

The game result comes from something like HMAC-SHA256(server_seed, client_seed + ":" + nonce), which outputs 64 hexadecimal characters. The game then maps a slice of those characters to an outcome — a dice roll, a crash multiplier, a mine layout. The mapping is published and deterministic: same inputs, same result, every time, on anyone’s computer.

Walkthrough: verifying one dice roll

Verification is a three-step loop — record the commitment, reveal the seed, recompute the result. Here is the whole thing for a typical dice game that rolls 0.00–99.99.

Step 1 — record the commitment. Before betting, open the fairness panel. The casino shows the hash of the active server seed, for example 9f3c…a1e4. Copy it somewhere. Set your own client seed — say my-roll-check-2026. Nonce resets to 0.

Step 2 — play, then reveal. You place ten bets; nonces 0 through 9 are consumed. Now click rotate seed. The casino retires the old server seed and, critically, reveals it in plain text while publishing the hash of the next one. Say the revealed seed is 4b8d21c7….

Step 3 — recompute. Two checks, either in the casino’s own verifier or an independent one:

  1. Check the commitment: SHA-256 the revealed seed 4b8d21c7…. It must equal the 9f3c…a1e4 hash you copied in step 1. If it does, this is provably the exact seed the casino locked in before you bet.
  2. Check the result: compute HMAC-SHA256(4b8d21c7…, "my-roll-check-2026:4") for your fifth bet. Take the first 8 hex characters, convert to a number, reduce it modulo 10,000, divide by 100. If the game showed you 52.19 for that bet, the math must produce 52.19. Repeat for any nonce you care about.

Both checks pass on every bet, or the casino is caught — there is no third possibility.

Why cheating becomes detectable

The hash commitment removes the casino’s only degree of freedom: it must choose its seed before knowing your bets, your client seed, or which results would hurt it. To rig a specific outcome after the fact, the operator would need a different server seed — but any different seed produces a different SHA-256 hash than the one it already published, and the mismatch is visible to anyone who copied the commitment. Finding a second seed that collides with the published hash is computationally infeasible; that’s the entire security assumption of SHA-256, the same one securing Bitcoin itself.

Note the precise shape of the guarantee: provably fair doesn’t stop a casino from attempting fraud — it makes any fraud provable by the victim, publicly, with math no regulator has to interpret. One documented mismatch is a reputational death sentence, which is why no serious operator tampers with a committed seed.

What provably fair does not cover

Provably fair applies to a casino’s in-house originals — the thousands of third-party slots in the same lobby run on a different trust model entirely. A Pragmatic Play or Hacksaw slot executes on the provider’s servers; the casino just embeds it. You can’t verify those spins because the casino never touches the RNG.

Third-party games rely instead on certified RNG: testing laboratories such as GLI (Gaming Laboratories International) and iTech Labs audit the provider’s random number generator and published RTP (return to player). That’s genuine, institutional-grade assurance — but it’s periodic auditing of a black box, not per-bet player verification.

Provably fair originals Certified third-party RNG
Typical games Dice, crash, mines, plinko, limbo Slots, most live-adjacent titles
Who runs the RNG The casino itself The game studio (Pragmatic, Hacksaw…)
Verified by You, per bet, cryptographically Audit labs (GLI, iTech Labs), periodically
When verifiable After seed rotation, any past bet Never directly by the player
Trust assumption SHA-256 collision resistance Lab independence + provider integrity
Catches Any tampering with committed seeds Systematic RNG/RTP deviation over samples
Typical house edge ~1% (often stated exactly) 2–8% (varies by title’s RTP)

Neither model is strictly better — they answer different questions. A casino strong in both (verifiable originals and reputable providers) is the ideal; our casino rankings flag which operators offer provably fair originals for exactly this reason.

The practical workflow at a real casino

In practice, verifying takes about two minutes and you don’t need to do it on every bet — spot-checking after each seed rotation is enough. The workflow that actually gets used:

  1. Open the fairness or “provably fair” section before playing an original.
  2. Set your own client seed — any string, changed to something the casino didn’t pick.
  3. Save or screenshot the current server seed hash.
  4. Play your session.
  5. Rotate the seed pair when done; the old server seed is revealed.
  6. Paste seed, client seed, and one or two nonces into the verifier and confirm the hash and the results both match.

If a casino advertises provably fair but hides the seed-rotation control, never reveals past seeds, or has no verifier and no documented algorithm, treat the label as decoration — the reveal step is what makes the whole system real.

Limits and honest caveats

Provably fair is the strongest fairness guarantee in online gambling, and almost nobody uses it — both halves of that sentence matter. The caveats worth knowing:

  • You must rotate your client seed. Playing forever on the casino-assigned default leaves a theoretical (if impractical) tailoring window open. Setting your own seed once costs ten seconds and closes it.
  • Verification is retrospective. You confirm past bets after rotation; you can’t pre-verify the next roll — by design, since predictable results would let you cheat.
  • Most players never check. The system’s power is partly herd immunity: because anyone can verify, casinos behave as if everyone does. But that only holds if some players actually do — be one of them at least once per casino.
  • It says nothing about payouts, bonuses, or withdrawals. A provably fair game at a casino that stalls cashouts is still a bad deal. Fairness is one subscore of six in our rating methodology for a reason.
  • Implementation bugs exist. The math is sound; a sloppy verifier page or an off-by-one nonce display is not unheard of. Independent open-source verifiers are the cross-check.

Verify one roll, once, at any casino you play originals on. Two minutes of arithmetic buys you something no license can: personal, mathematical certainty that the game you lost was the game you agreed to play.

18+ · Play responsibly
Gambling involves real financial risk, and crypto's volatility adds more. Never bet money you can't afford to lose, set deposit limits before you play, and treat every bonus as entertainment — not income. If gambling stops being fun, help is free and confidential:BeGambleAware,GamCare, or our responsible-gambling resources.

Frequently asked questions

What does provably fair actually prove?+

It proves the casino committed to its random seed before your bet and didn't change the result afterward. The published hash locks the server seed in place; after seed rotation you can recompute every outcome and confirm each one matches what was committed.

Do I need to be a programmer to verify a game?+

No. Most provably-fair casinos have a built-in verifier page, and open third-party verifiers exist for the common algorithms. You paste the revealed server seed, your client seed, and the nonce; the tool recomputes the result. Coding knowledge only matters if you want to audit the verifier itself.

Are slots at crypto casinos provably fair?+

Almost never. Third-party slots from providers like Pragmatic Play or Hacksaw run on the provider's servers with certified RNG, audited by labs such as GLI or iTech Labs. Provably fair typically covers only the casino's in-house originals — dice, crash, mines, plinko.

What happens if I never change my client seed?+

The math still works, but a default client seed weakens the guarantee: a casino could theoretically pre-generate a server seed that performs well against the default it assigned you. Setting your own client seed after the server seed hash is published closes that gap completely.

Can a provably fair game still have a house edge?+

Yes — fairness and edge are separate. Provably fair proves the result wasn't manipulated; it says nothing about the payout table. A dice game can be perfectly verifiable and still pay 99 on a 1-in-100 hit. Check the stated edge separately, usually 1–2% on originals.