Stake Keno verifier

This Stake Keno verifier recomputes a draw from the revealed server seed, your client seed and the bet's nonce, in your browser, using the construction Stake publishes: HMAC-SHA256(server seed, "clientSeed:nonce:cursor") read as floats, ten floats for Keno. Stake publishes 99% RTP for Keno (checked 2026-09-23). With the example inputs below the draw comes out as drawn 6, 11, 16, 17, 21, 23, 27, 31, 32, 35; press “Load example values” and Verify to reproduce it.

Disclosure: VerifyRoll is sponsored by Craze, a competitor of Stake. Figures here are computed or taken from what operators publish, dated; nothing is estimated.

Loading verifier…

How a Stake Keno draw is derived

How a Stake-scheme Keno draw picks 10 of 40 numbers using floats and selection without replacement, and why payout tables are operator-specific.

  1. Start with 40 positions numbered 0 to 39 (shown to players as 1 to 40).
  2. For each of the 10 draws, take the next float and compute floor(float × positions remaining). Remove the chosen position.
  3. Ten floats fit in two HMAC rounds: eight from cursor 0, two from cursor 1.
for i in 1 … 10:  idx = floor(float_i × |remaining|);  drawn_i = remaining[idx] + 1;  remaining.splice(idx, 1)

Full derivation, payout rule and every operator's figure on the Keno maths page.

Stake's published RTP for Keno

99%, a house edge of 1%, as published by Stake and checked 2026-09-23. The draw is uniform over all 10-of-40 combinations (there are 847,660,528 of them). The edge is in the payout table, which is set by the operator and differs by risk level. The verifier proves the draw; it cannot see the RTP. Read the figure in the game's own info panel and compare it with this one.

Worked example

Computed on the server by the same function the verifier runs. The seed pair is the site's example, at nonce 7 on this page; it is not from a real Stake round.

inputsStake scheme
server seed
2b4d2f1a7c9e0f3b8a6d5c4e3f2a1b0c9d8e7f6a5b4c3d2e1f0a9b8c7d6e5f4a
client seed
verifyroll
nonce
7
derivation2 hmac rounds
  1. HMAC-SHA256(server seed, “verifyroll:7:0”)
    81727d41db6b44706ddfd681ab9cd0124cc482392adbbdda8ac8ac626566bf1a
  2. HMAC-SHA256(server seed, “verifyroll:7:1”)
    c2c07f6bc3f0feddd98e7bd8b9e1bb233dfcbb5b6f96e9deb6d585c6cf3f461f
  3. Floats (10): 0.50565322 0.85710552 0.42919675 0.67036152 0.29987348 0.16741549 0.54212453 0.39609904 0.76074978 0.76539605
  4. pick 1: floor(0.50565322 × 40) = 20 → tile 20
  5. pick 2: floor(0.85710552 × 39) = 33 → tile 34
  6. pick 3: floor(0.42919675 × 38) = 16 → tile 16
  7. pick 4: floor(0.67036152 × 37) = 24 → tile 26
  8. pick 5: floor(0.29987348 × 36) = 10 → tile 10
  9. pick 6: floor(0.16741549 × 35) = 5 → tile 5
  10. pick 7: floor(0.54212453 × 34) = 18 → tile 22
  11. pick 8: floor(0.39609904 × 33) = 13 → tile 15
  12. pick 9: floor(0.76074978 × 32) = 24 → tile 31
  13. pick 10: floor(0.76539605 × 31) = 23 → tile 30

result

drawn 6, 11, 16, 17, 21, 23, 27, 31, 32, 35

Open the verifier pre-filled with these values

Questions

What do I paste to verify a Stake Keno draw?
The revealed server seed, your client seed and the bet's nonce, plus the server seed hash that was shown before play if you want the commitment checked. Keno consumes ten floats from the HMAC output.
What RTP does Stake publish for Keno?
99%, a house edge of 1%, as published by Stake and checked 2026-09-23. The draw is uniform over all 10-of-40 combinations (there are 847,660,528 of them). The edge is in the payout table, which is set by the operator and differs by risk level.
Are the drawn numbers sorted in the game?
The game shows them sorted; the verifier shows the draw order first because that is what the floats produce, then the sorted set.
Why is there no Keno calculator here?
The hit probabilities are plain hypergeometric arithmetic, but without a payout table there is nothing honest to compute an RTP from. When operators publish tables in a stable form we will add one.

Next

last reviewed 2026-09-27 · derivation as implemented in @craze/fairness

Sponsored

Craze publishes RTP on every game and runs its own provably fair Originals.

VerifyRoll is sponsored by Craze, a crypto casino that shows its working: RTP on every game, crypto in and out, and terms you can read.

  • Crypto-only: 20+ coins; deposit fees absorbed in most cases
  • Provably fair originals, 2,000+ slots, 40+ live dealers
  • Start with a verified email; $10 minimum withdrawal
  • Craze Rewards: 25% of the house edge back from your first bet

From Craze's published terms, checked 2026-09-27. Full terms at Craze.

Create your Craze account

18+. Gambling involves risk. Terms and verification apply. Only where Craze may lawfully serve you.