Provably Fair Explained
How to actually verify a result, not just trust the badge
"Provably fair" is one of the most-used terms in CS2 gambling and one of the least-understood — most players see the badge and trust it without ever actually checking a result. Here's what it actually means and how to verify it yourself.
The mechanism
Before a round starts, the site generates a server seed — a random string it keeps hidden — and shows you its hash, which is a one-way scrambled version that can't be reversed to reveal the original seed. You can also set your own client seed, which the site combines with the server seed and a nonce (a number that increments with each bet) to generate the round's outcome. Because you control the client seed, and the server seed's hash is committed before the round starts, the site can't quietly change the outcome after seeing your bet — it's mathematically locked in before either side knows what will happen.
After the round resolves, the site reveals the original, unhashed server seed. At this point you can do two things: run that seed through the same hash function the site uses and confirm it matches the hash you were shown before the round (proving the seed wasn't swapped), and independently recompute the round's outcome using the published algorithm to confirm it matches what you were shown (proving the result wasn't altered).
Why it matters
Without a system like this, you have no way to know whether a given result was generated fairly or adjusted after you placed a bet — you're simply trusting the operator's word. A site publishing verifiable seeds is giving up the technical ability to quietly rig outcomes in its favour, which is the entire point of the system. It doesn't mean every provably fair site is automatically trustworthy in every other respect (withdrawal reliability, support quality, and licensing still matter separately), but it does remove one specific and significant category of risk.
How to actually check it
Most sites have a dedicated "fairness" or "provably fair" page with a built-in verification tool — you paste in the revealed server seed, your client seed, and the relevant nonce, and it independently recomputes the result. Some sites also publish the algorithm itself so technically-minded players can verify using their own code rather than trusting the site's own verification tool, which is the more rigorous approach if you're inclined to check it that way.
A worked example, conceptually
Say a site shows you a server seed hash before a roulette round — a string that reveals nothing about the actual seed behind it. You set your client seed to something you choose. The round resolves, landing on black. The site then reveals the original server seed. You take that seed, run it through the same hash function the site used, and confirm it produces the exact hash you were shown before the round — proving the seed wasn't swapped after the fact. Then you feed the revealed server seed, your client seed, and the round's nonce into the site's published algorithm (or a third-party verifier) and confirm it independently produces "black" as the result. If both checks pass, the round was provably fair. If either fails, something is wrong.
Related reading
For the broader context on why licensing and fairness both matter, see how CS2 gambling works, or our how we test page for how we factor fairness verification into our own site rankings.
Bottom line
This is exactly the kind of practical detail that's easy to skip and expensive to get wrong once real skins or money are involved. We keep this guide updated as sites change their processes and terms, re-checking periodically rather than publishing it once and leaving it stale — if something here stops matching what you see on an actual site, that's worth flagging rather than assuming the guide is still current.
For the full picture of how we approach every page on this site, not just this one, see our how we test methodology — it covers licensing checks, our own deposit and withdrawal testing, and how we factor community reputation into every recommendation we make.
If you're comparing multiple sites rather than just researching the topic generally, our individual promo code pages and head-to-head comparison pages go into the specific differences between operators — this guide is deliberately about the general mechanics that apply across all of them, not any one site in particular.
As with everything in this niche, the terms and specifics can shift — an operator can change a policy, a threshold, or a process at any time, and a page like this reflects what's true as of its last update rather than a permanent guarantee. When in doubt, cross-check against the specific site's own current terms before relying on anything here for a decision involving real money or items.
FAQ
Does provably fair mean a site can't have a house edge?
No — the house edge is a designed part of the game itself (for example, green paying more than red on roulette but landing far less often than the raw odds would suggest). Provably fair only proves the specific result wasn't manipulated after your bet was placed, not that the game is edge-free.
What if a site won't show me the server seed?
That's a significant red flag. Every site we recommend on Ratios.gg exposes seed verification somewhere in the game interface or on a dedicated fairness page.
Can I change my client seed?
Yes, on virtually every provably fair site — this is usually done in account or fairness settings, and changing it regularly is a reasonable habit if you want extra assurance you're not being served predictable results.
Do I need to manually verify every round I play?
No — most players check occasionally as a trust exercise rather than every single round. The point is that verification is possible and the mechanism is sound, not that you need to run it constantly.
Are third-party provably fair verifier tools trustworthy?
Reputable third-party verifiers that publish their own source code are generally safe to use since you can inspect exactly what they're calculating, but running a site's own built-in verifier is simpler for most players and achieves the same result.