Skip to main content

Verify this draw

Win a Jellycat Plushie Bundle Of Your Choice #3 was drawn on 10 Aug 2026. The winner was Samantha J. from Helensburgh with ticket #60.

Method

Verified auto-draw

Tickets in the draw

196

Winning ticket

#60

Winner's odds

1 in 20

In plain English

Before entries closed, we locked in a secret number and published a “fingerprint” of it (a one-way SHA-256 code) that proves we couldn’t change it later. After entries closed, that number, mixed with a public source of randomness that nobody controls, picked the winning ticket. So the result couldn’t be set in advance or predicted by anyone. The steps further down let you re-run it and land on the same ticket yourself.

How this draw is provable

Before entries closed we published a commitment: a one-way fingerprint (SHA-256) of a secret random seed. After the draw we revealed the seed. Because the commitment was public before entries closed, the seed could not have been changed afterwards to draw a particular ticket.

The draw also folds in a public randomness beacon (drand, the League of Entropy) whose value is only published after entries close. Anyone can re-fetch the exact beacon round below and confirm the same value went into the draw.

Commitment (published before entries closed)
6309c49b2f47a3e3e9a6b9b7be379a8420d1f707dd9df662c68dd883ec82fba2
Revealed seed (published after the draw)
177eb3c189e39c7830faf16c991bb675bf7320f18fb721a5748f509d29cc93b4
Beacon round (emitted after close) & its public value
Round 6,365,307 on the drand chain 8990e7a9aaed2ffed73dbd7092123d6f289930540d7651336225dc172e51b2ce
2920d6c8e8cfca3de31b2f5265d5b121262dbf8461956f88c5ad7ae93d4a9e69
Re-fetch it: curl https://api.drand.sh/8990e7a9aaed2ffed73dbd7092123d6f289930540d7651336225dc172e51b2ce/public/6365307

Check it yourself

1. The seed matches the commitment

Run SHA-256 on the revealed seed - it equals the commitment above. For example, in a terminal:

printf '%s' '177eb3c189e39c7830faf16c991bb675bf7320f18fb721a5748f509d29cc93b4' | sha256sum

2. The seed and the beacon draw the winning ticket number

The 196 ticket numbers that went into this draw are lined up in ascending order; the locked-in seed mixed with the post-close beacon value shown above (both are in the $msg below) picks one. The seed was committed before entries closed, and the public beacon that decides the winner didn't exist until after - so the result couldn't be set in advance or predicted. Sort the numbers in play (their fingerprint is below, and the full set is in the entrants list) and recompute - you'll get ticket #60:

$seed    = '177eb3c189e39c7830faf16c991bb675bf7320f18fb721a5748f509d29cc93b4';
$tickets = [ /* the 196 ticket numbers in the draw, sorted ascending */ ];
$total   = count($tickets);
$msg     = 'draw:019fc929-45e0-7376-9e95-79e912ac35d1:'.$total.':2920d6c8e8cfca3de31b2f5265d5b121262dbf8461956f88c5ad7ae93d4a9e69';   // note: the trailing value is the drand beacon above
$span    = 1 << 60;                        // 60-bit space
$limit   = intdiv($span, $total) * $total; // reject above this to remove bias
$i = 0;
do {
    $n = (int) hexdec(substr(hash_hmac('sha256', $msg.':'.$i, $seed), 0, 15));
    $i++;
} while ($n >= $limit);
echo $tickets[$n % $total];                 // => winning ticket #60

3. Ticket #60 belongs to the winner

That ticket number is held by exactly one entry - Samantha J. from Helensburgh. We publish a fingerprint of every ticket number in the draw, so the set of numbers can't be altered after the fact, and we hold the full list in our tamper-evident audit trail, available to the Advertising Standards Authority on request.

Ticket-numbers fingerprint
5c87d57da89b6201d37d8260893b986d90f6286acbb28ce67988e7253c05c9e2

How ticket numbers are assigned

This competition has a fixed set of 294 tickets, and on this draw you choose your own ticket number when you enter, from the numbers still available. They aren’t handed out one after another in entry order. Your number is fixed the instant you buy, timestamped, and independently verifiable there and then.

Whichever number you pick doesn’t decide anything on its own. The winner is picked at the draw (shown above), from a secret value committed before entries closed and a public randomness beacon that didn’t exist until after they closed, so the number you chose can’t affect who wins. Every number that’s taken appears in the competition’s entrants list, so the numbers in play are public and can’t be quietly changed later.

You can see them: every entry and its ticket number is listed on the competition’s entrants page.

See how all our draws work on our fairness & security page, or back to all winners.

?