18+ Must be 18 or older to gamble. BeGambleAware.org We are an affiliate. Clicking links may earn us a commission.
Home  /  Tools  /  Dice roller

Virtual dice roller

Fair server-side dice: pick the count and the die, every submit is a fresh independent roll

Choose your dice and roll. Each throw is generated server-side with a cryptographic random source — no roll depends on the one before.

Your roll

Choose how many dice and how many sides. Every submit rolls fresh dice on the server.

1 to 10 dice per roll.
From the d4 up to the d20.
Reset
No JavaScript required. No JavaScript required. The dice are rolled server-side with a cryptographic random source.
How the math works

Fair dice, honestly rolled

Each die is an independent uniform draw: every face has exactly the same chance on every throw, and no streak changes the next roll. The expected total is the number of dice times the average face, (sides + 1) / 2 — for two six-sided dice, 7.

That independence is the same property certified RNGs bring to casino games — and the same reason no betting pattern can outguess the next outcome, here or at a table.

# independent uniform rolls
roll = random_int(1, sides) × dice
expected_total = dice × (sides + 1) ÷ 2

Methodology

Each die is an independent draw from a uniform distribution via PHP's random_int (CSPRNG). The expected total is dice × (sides + 1) / 2 — the same independence property certified casino RNGs are audited for.