Giveaway Winner Proof

The usual proof of a giveaway winner is a screen recording of a wheel spinning. It convinces nobody who was not already convinced, because a rigged tool produces exactly the same video. Real proof has to be checkable by the person doubting you. SpinOfLuck publishes a permanent verification page for every draw: the complete entry list, each participant's odds and ticket range, the random seed, the algorithm, and a one-click button that recomputes the winner in the sceptic's own browser. Alongside it you get a PDF certificate with a QR code, and a public JSON record anyone can build their own verifier against. That is evidence someone can act on rather than a video they have to trust.

Why use this wheel

  • Permanent verification link — never changes, safe to paste into any thread
  • Sceptics press one button and recompute the winner on their own device
  • PDF certificate with the full entry list, seed, algorithm and a QR code
  • Entry list shows every participant's weight, ticket count and ticket range
  • Public JSON record so third parties can write an independent verifier
  • Completed draws are immutable — the evidence cannot be edited, even by us
  • Export the entry list as CSV for sponsors, auditors or your own records

Common uses

  • Answering "this is rigged". Reply with the verification link instead of an argument. It shows the entry list, the sealed commitment made before entries closed, and a button that lets the accuser recompute the winner themselves.
  • Sponsor and agency reporting. Attach the PDF certificate to your campaign report. It carries the draw ID, timestamps in UTC, the complete entry list with weights, the seed and the verification hash in one document.
  • Proving a winner was contacted fairly. When a prize goes unclaimed and you draw a replacement, publish both draws. The timeline on each page shows exactly when it was created, closed and drawn.
  • Platform and promotion compliance. Some platforms and jurisdictions expect prize promotions to keep records of how winners were selected. A permanent URL plus a downloadable certificate is a cleaner record than a folder of screenshots.
  • Community trust after a bad draw. If a previous giveaway damaged trust, a verifiable draw is the fastest way to rebuild it — the audience stops needing to believe you and starts being able to check.

In-depth guide

Why the usual proof fails

Ask a creator to prove a giveaway was fair and you will usually get one of three things: a screen recording of a spinning wheel, a screenshot of a winner popup, or a list of entrant names posted after the fact. None of them establish what they are meant to.

A recording shows a tool producing an output. It says nothing about whether the tool was weighted, because a weighted tool animates identically. A screenshot is weaker still — it can be edited in a minute. And an entry list posted after the winner is announced is the weakest of all, because by then it can be curated to match the result.

The common flaw is that all three ask the doubter to trust something: the tool, the image, or your account of what happened. Anyone already suspicious has no reason to. Evidence only works when the person who doubts you can check it without your cooperation.

What checkable proof looks like

Checkable proof has a specific shape. The claim must be pinned down before the outcome is known, the inputs must be published in full, and the path from inputs to outcome must be something anyone can retrace.

For a giveaway that means: seal the random seed and publish its hash while entries are still open; freeze and hash the entry list when entries close; then reveal the seed and derive the winner by a documented procedure. Each of those leaves a value on a public page that can be recomputed later. The seed must hash to the commitment. The list must hash to what was frozen. The algorithm, run on those two, must produce the announced winner.

If any published value is altered afterwards, at least one of those recomputations stops matching, and the page reports a failure rather than a green tick. That is the difference between evidence and assertion: the failure mode is visible to the audience, not just to you.

Handing the proof over

Different audiences want the evidence in different forms, so a draw produces three.

The verification link is for the public argument. It is permanent, it opens on any device, and the button that matters — "Verify in my browser" — takes one tap and reports plainly whether the winner reproduces. Put it in the announcement itself rather than in a reply, because the people who most need it are the least likely to scroll.

The PDF certificate is for the formal record: sponsors, agencies, an internal compliance file. It is a single attachable document containing the entry list, the seed and the result, with a QR code back to the live page. The CSV export of the entry list is for anyone who wants to work with the data directly.

The JSON record is for the sceptic who trusts none of the above. It is the same data the page renders, served from a public endpoint, and the algorithm is documented so an independent verifier can be built from scratch. A proof that only works inside our own website would be a weaker proof.

Publish before, not after

The single most common way to weaken a verifiable draw is to leave the publishing until the end. If the commit hash first appears in the same post as the winner, an audience has no way to know it was not generated afterwards — the cryptography is intact, but the evidence that the seed predates the entry list is gone.

So post the commit hash while entries are open. In a livestream, drop it in chat before you say "entries closing in five minutes". In a comment giveaway, edit it into the original post. It does not need explaining at the time; it needs to be timestamped somewhere your audience can see.

Do the same with the public seed if you use one. Say which source you will take it from — a specific blockchain's next block, a named lottery result — before the draw rather than after. A public seed chosen once the outcome is known adds nothing, and an audience that spots the difference will trust the whole exercise less.

How to use giveaway winner proof

  1. Publish the commitment before you close entries. Open the draw and post the commit hash to your audience while entries are still open. This is the step that makes everything afterwards meaningful — proof published only at the end is much weaker.
  2. Close entries with the final list. Paste the participant list. Closing hashes and freezes it, so the list on the verification page is provably the one the draw ran on.
  3. Draw and collect your link. Run the draw. You immediately get a permanent verification URL and a PDF certificate.
  4. Post the link with the announcement. Put the verification link in the announcement itself, not in a reply. Anyone who doubts the result can open it and press "Verify in my browser".
  5. Keep the certificate for your records. Download the PDF and store it with your campaign files. It stays valid permanently and the QR code leads back to the live page.

Frequently asked questions

Why isn't a screenshot or screen recording enough proof?
Because it only shows that a tool produced a name — not that the tool was fair. A rigged picker produces an identical-looking recording, and anyone determined to doubt you knows that. A recording also cannot show what the entry list was before the draw, which is where most real manipulation would happen. Proof has to be something the sceptic can independently check, not something they have to watch and believe.
What exactly can someone verify on the link?
Eight things, each recomputed rather than asserted: that the published entry list matches the hash committed when entries closed; that every weight is published; that the timestamps are present and in order; that the seed was revealed; that the revealed seed matches the commitment made before entries closed; that the final seed was derived correctly; that re-running the algorithm reproduces exactly the published winner and ticket numbers; and that the overall record hash matches the record. Every one runs in the visitor's own browser.
What's in the PDF certificate?
The draw ID and title, all timestamps in UTC, the winner or winners, the complete entry list with each participant's entries, weight, ticket count and ticket range, the commit hash, the revealed seed, the public seed if one was used, the final seed, every round's random number and winning ticket, the overall verification hash, the pass or fail state of each check, and a QR code linking back to the live page.
Can I edit or delete the record if I made a mistake?
No, and that is deliberate — evidence you can edit is not evidence. A completed draw is immutable at the database level; the security rules reject every write to a completed record, including from us. If you make a mistake, run a new draw and publish both. The timeline on each page makes the sequence clear.
Do I have to make my entrants' names public?
No. Privacy mode replaces every name with an anonymous ID before anything is stored, so the published record shows anon-0001 instead of a real person. The odds, the ticket ranges and the result are exactly as verifiable — only you hold the mapping. Use it for anything involving minors, customer data, or entrants who did not consent to being listed publicly.
Can someone verify without visiting SpinOfLuck?
Yes, and that is the strongest form of the proof. The full record is available as JSON at a public, CORS-enabled endpoint, and the algorithm is documented in full. Reproducing a draw needs nothing but a SHA-256 implementation — no special library, no random number generator — so a sceptic can write their own verifier in any language and never trust our page at all.
How long does the verification link stay up?
Permanently. The URL contains the draw ID and never changes, so it is safe to paste into an announcement post, a sponsor report or a terms page that will be read years later.

Free random spinner from SpinOfLuck, with no signup and no ads, running entirely in your browser.