Don't trust us — check the math. Every roll on WTF $1 Dice can be reproduced from public data, and this guide shows exactly how.
Before you place a single bet, we commit to a secret server seed by publishing its SHA-256 hash. You control a client seed we can't predict, and every roll uses an incrementing nonce. Because the server seed is fixed before your client seed exists, neither side can bias a result — and once the server seed is revealed, anyone can recompute every roll it produced.
Open the fairness panel on the dice page. Copy the value labelled server seed hash. This is SHA256(server_seed), published before any of your rolls.
In the same panel, set the client seed to anything you like — a random string you generated is best. The server seed was already fixed, so we cannot adapt to your choice.
Every roll shows its nonce (0, 1, 2, …). The triple (server_seed, client_seed, nonce) fully determines that roll's result — nothing else is involved.
Click rotate seed. The old server seed is revealed in plain text and a new hashed one takes over for future rolls. Past rolls are now fully verifiable.
First confirm the reveal is honest: SHA256(server_seed) must equal the hash from step 1. Then recompute any roll:
const crypto = require('crypto');
function diceResult(serverSeed, clientSeed, nonce) {
const digest = crypto.createHmac('sha256', serverSeed)
.update(`${clientSeed}:${nonce}`)
.digest('hex');
// First 8 hex chars -> 32-bit integer -> uniform roll in 0.00 .. 99.99
const n = parseInt(digest.slice(0, 8), 16);
return (n % 10000) / 100;
}
console.log(diceResult('revealed-server-seed', 'your-client-seed', 0));
If the output matches the roll you saw on screen — for every nonce — the game was fair. If it ever didn't match, you'd have cryptographic proof of tampering.
Fun mode gives you a $1,000 virtual balance on the same provably-fair engine (its own seed chain, same math). Create an account, flip the Fun toggle, and walk through this guide with virtual bets before playing for real from $1.
Related: How WTF $1 works · Plinko RTP explained
🔞 18+ only. Please gamble responsibly.