A few months ago we started asking ourselves: what would a lottery look like if you removed all the trust?
No random number generators controlled by operators. No black-box draws. No "take our word for it." Just Bitcoin.
So we built The Daily Thunder.
How it works
Every 100 Bitcoin blocks, a draw happens. The winning 8-digit number is derived from the block hash of the draw block. Nobody picks it, nobody can manipulate it, nobody even knows it until Bitcoin mines that block.
How we do it:
Remove all letters (a-f), keeping only digits (0-9)
Take the last 8 digits as the winning number
Match the numbers from the right side
Example: Block hash
00000000000000000000a2169fd41c2589f17ac39ae0d31f85af (4) (3) (0) (0) bb (0) (9) (1) ee (1)
Results in: 43000911
Players pick their own 8-digit numbers and pay 1 sat per number over Lightning. When the draw block hits, we match digits right-to-left against the block hash result. Match the last digit, you win. Match more, you win bigger. All 8? You take 55% of the entire prize pool.
The 7-tier prize structure
8 digits matched: 55% of the pot
7 digits: 20%
6 digits: 10%
5 digits: 5%
4 digits: 4%
3 digits: 2%
2 digits: 1%
No winners? The entire pot rolls forward to the next round. Nothing gets skimmed.
We only take a 14% fee when payouts happen. If nobody wins, we make nothing. That keeps our incentives aligned with the players.
Payouts are automatic
Winners get paid directly to their Lightning address. No claiming process, no withdrawal requests, no KYC. The system resolves the draw, matches the numbers, and sends the sats. Usually within minutes of the block being mined.
Everything is public
Every round, every bet, every payout, it's all on our public /activity page. You can verify which block was used for the draw, see the hash, check the derived number, and confirm who won and how much they received.
Today we have 280 rounds completed. 1,211,179 sats paid out. Running since block 909,801.
We're not asking you to trust us. We're asking you to check.
What's next
We recently added partner widgets, if you run a Bitcoin-focused site, you can embed a branded version of the game and earn a commission every time your audience plays. The attribution is permanent: once a player comes through your widget, you earn on them forever.
If you're curious: https://playtdt.com
We're happy to answer any questions in the comments.
Using Bitcoin blockchain data as a source of randomness for trustless lotteries is an elegant approach to extracting unbiased entropy from a decentralized system. The security of this method depends on the unpredictability and immutability of Bitcoin block hashes, which are proven robust from a proof-of-work perspective.
One challenge though is the intrinsic delay and deterministic nature of block times, which may limit lottery cadence or create some predictability in outcomes if the number of participants grows very large. Still, leveraging Bitcoin for randomness is a clever way to combine transparency, censorship resistance, and decentralization.
This is a great example of how Bitcoin is not just digital gold, but a foundational layer for innovative cryptoeconomic applications beyond simple payments.
Thank you for the thoughtful breakdown! You're right that block hash unpredictability is the backbone of our trustless randomness, no oracle, no middleman, just Bitcoin. On the cadence challenge, we've designed the lottery rounds around block times with intention, keeping it simple and verifiable by anyone. Bitcoin as the foundational layer is the whole philosophy for oir platform. Glad to see others who get it. 🤝
Looks like "Mining level 2" - where you have to guess a valid hash (read number) to get block (read draw) reward
Exactly. The whole game is built on mining culture, block hashes are the source of truth, and players are basically betting on the output of proof of work. You got it.
At first I didn't get an idea about 100 blocks. You set it to hit a draw once a day, innit?
What if activity will be increased, do you consider to lower this limit to 10 or even 1 block?
The draw is roughly every 16-17 hours. We'd keep this version at 100 blocks. As activity increases, the longer window lets the prize pool build up, which means bigger payouts for winners. For a 10 or 1 block game there are many challenges, some blocks get mined within 1 minute, and sometimes blocks get mined 2 or even 3 consecutively which makes it difficult to manage game rounds.
It's reasonable, blocks sometimes are mined one by one
Indeed, thank you for your questions 🤝
14%!!!???!!!
Great question! For context, Powerball takes ~50% off the top, then winners face 37% federal tax plus state taxes, most winners keep less than 35 cents on the dollar. Our 14% stays fully transparent and alligned with the participant's incentives. We think that's the fairest lottery model out there, but we're always open to feedback on how to improve.
how do i know you are not cheating? what if you put bids after the 100th block is mined and claim the reward yourself?
Fair question. The betting window closes at block 97 of each round, 3 blocks before the draw. Once that block is reached, no more bets are accepted. The draw block hasn't been mined yet at that point, so nobody, including us, knows what the winning number will be.
You can verify this yourself: playtdt.com/live-bets shows every bet placed in the current round in real time, so you can confirm nothing comes in after the cutoff. And every completed round's block height, block hash, and derived winning number are public at playtdt.com/stats, check any of them against a block explorer.
Only a 14% fee? Does this mean that if you get two digits you pay 14% in fees of the 1% payout?
Good question! Yes, exactly. The 14% only applies when there's a payout. So if you match 2 digits you win Tier 7 (1% of the prize pool) , say, 500 sats, you'd receive 430 sats. If nobody wins in a round, zero fees are taken and the entire pot rolls forward to the next round. We don't make money unless players win.