Fair and random Instagram giveaway winner selection
We've all seen it all too often: Giveaways where the winner isn't chosen fairly. Yuck! This unethical behavior breaches our trust and makes us question all other giveaways we participate in.
We address this by making it easy to build trust with ethical giveaways where valid winners are chosen fairly.
We do this by validating giveaway entrants against the specified entry criteria and choosing a winner with a truly random algorithm. Let's learn more about how it works.
How random winners are chosen fairly
When it comes time to select a winner, we use the Mersenne Twister, which is a random number generator (to be specific, a deterministic random bit generator). It is called this because its period length is chosen to be a Mersenne prime.
We use this random method for a few key reasons:
- This method passes numerous tests for statistical randomness, including the Diehard tests and most of the TestU01 tests.
- This method has an extremely long period of 2^19937 − 1. While a long period is not a guarantee of quality in a random number generator, short periods, such as the 2^32 common in many older software packages, can be problematic.
- It is k-distributed to 32-bit accuracy for every 1 ≤ k ≤ 623.
- This method generally creates random numbers faster than true random methods. A study found that the Mersenne Twister creates 64-bit floating-point random numbers approximately twenty times faster than the hardware-implemented, processor-based RDRAND instruction set.
- This method is permissively-licensed and patent-free, which allows us to use it in the Instagram giveaway picker at no charge to keep the app free for you!
But what if the app freezes or some other situation?
Sometimes things happen like the app freezing during the drawing that might make you wonder if all entries were counted. We can assure you that they were because we built the app to be fault-tolerant in that way.
The winner drawing process and the UI component (the app) are separate processes. That is, the winner selection happens server-side, not on your phone, which means any freeze or similar issue wouldn't impact it. Further, it randomly selects entries then validates them. It does not go in order, meaning any username that is validated was randomly selected.
The result is that you can be confident that with any giveaway where the winner is selected by this app the winner was chosen in a secure, truly random way with no undue influence.