Random Name Picker

Randomize any list instantly. Perfect for giveaways, classroom draws, and raffles. Powered by the Fisher-Yates shuffle algorithm for mathematically fair results.

Enter Names

Paste or type one name per line. Any blank lines are ignored automatically.

Total Entries: 0

Settings

Remove Winner After Draw When enabled, the selected winner is removed from the list so they cannot win a second round. Ideal for multi-round giveaways where each person wins only once.
Awaiting Draw
Your winner appears here

Draw History

  • No draws yet. Winners appear here.

Add Your Names

Paste or type your participant list into the text box - one name per line. The entry counter updates live.

Configure the Draw

Toggle "Remove Winner" on to run multi-round giveaways where each person can only win once.

Draw a Winner

Hit the big button. A slot-machine animation builds suspense before revealing your randomly selected winner.

Repeat or Reset

Run as many rounds as you need. The draw history panel tracks every winner so you stay organized.

Privacy First

All name shuffling and random draws take place entirely within your local web browser. Your participant lists and giveaway data are never uploaded, stored, or transmitted to external servers.

The Ultimate Guide to Random Number Generation and Fair Giveaways

Whether you are a teacher, streamer, event host, or marketing professional, understanding how random selection actually works helps you run draws your audience will trust. Below we answer the most important questions in plain language.

Fairness in a random draw comes down to one guarantee: every participant must have an equal probability of being selected. This tool achieves that guarantee through two mechanisms working together.

First, the list of names is shuffled using the Fisher-Yates algorithm (explained in detail below) before any selection is made. This produces a completely randomized ordering of all entries. The winner is then drawn from that pre-shuffled array, meaning the pick is never influenced by the original input order - whether you entered names alphabetically, by date of entry, or at random.

Second, the tool uses JavaScript's built-in Math.random() function as its source of randomness. This is a Pseudorandom Number Generator (PRNG) - a software algorithm that produces a sequence of numbers so statistically unpredictable that they are indistinguishable from true randomness for everyday use cases like giveaways, classroom draws, and raffles. The result: every participant has exactly a 1-in-N chance, where N is the total number of entries in your list.

The Fisher-Yates Shuffle Algorithm (also called the Knuth Shuffle after computer scientist Donald Knuth) is the gold standard method for randomly reordering a list. It was originally described by Ronald Fisher and Frank Yates in 1938 and was formalized for computers by Knuth in 1969.

Here is how it works in plain language: the algorithm starts at the last item in the list and swaps it with a randomly chosen item from anywhere in the list (including itself). It then moves to the second-to-last item and does the same thing, but now only considering the portion of the list that has not been finalized yet. This continues down to the first item. The result is a perfectly uniform shuffle - every possible ordering of the list is equally likely.

Why does this matter? A naive approach - sorting the array using Math.random() as a comparator - is actually mathematically biased. It does not produce uniform results because sorting algorithms make assumptions about comparisons (like transitivity) that random outputs violate. The Fisher-Yates method makes no such assumptions, giving every arrangement exactly equal probability. For a giveaway with 500 participants, this difference is the gap between a defensible, fair process and one that quietly favors certain names.

True randomness requires a physical, unpredictable source - like radioactive decay, atmospheric noise, or quantum events. Hardware devices and services like random.org use these physical phenomena. By definition, no computer program running pure mathematical instructions can be truly random, because math is deterministic.

Pseudorandomness is what almost all software uses, including this tool. A Pseudorandom Number Generator (PRNG) is a mathematical formula that takes a starting value (called a "seed") and produces a long sequence of numbers that look statistically random - passing all standard statistical tests for uniformity and unpredictability. JavaScript's Math.random() is seeded by the system clock and other environmental entropy at the moment it is called, making its output practically impossible to predict or reproduce.

For giveaways, raffles, classroom name pickers, and team assignments, pseudorandomness is entirely sufficient and universally accepted. The distinction matters primarily in cryptography and scientific simulation - contexts where an adversary might try to exploit the predictability of a known seed. For picking a winner from your subscriber list, pseudorandom is exactly what you need, and it is exactly what this tool delivers.

Most online tools work by sending your data to a remote server, processing it there, and returning the result. This means your participant list - which may contain real names belonging to students, customers, or subscribers - travels over the internet and is processed by hardware you do not control. Each transmission is a potential exposure point, and many server-side services retain logs of submitted data by default.

This tool uses Client-Side Execution: every calculation - the array parsing, the Fisher-Yates shuffle, the animation, the winner selection - runs inside your own web browser on your own device. Your list of names is never sent anywhere. It exists only in your browser's memory for the duration of your session and is discarded the moment you close the tab. This architecture is not just a marketing claim - you can verify it yourself by opening your browser's Network tab in Developer Tools while using the tool. You will see zero outbound data requests triggered by the draw.

For teachers handling student names, this means FERPA-conscious operation without any paperwork. For marketers running subscriber giveaways, it means your customer list never touches a third-party server. For streamers picking viewer winners, it means your audience list stays private. Client-side tools like this one represent a meaningful privacy improvement over server-dependent alternatives, and that distinction is worth understanding before you paste sensitive names into any online utility.

Running a giveaway that your audience genuinely trusts requires more than just picking a random name - it requires a transparent process they can follow. Here are the practices that professional streamers, marketers, and teachers rely on.

Screen-share the draw live. The most powerful trust signal is letting your audience watch the draw happen in real time. Because this tool's Winner Display uses large, bold typography, it is designed to be clearly readable even when projected onto a classroom screen or shared via a livestream. Run the tool while screen-sharing and your audience sees the same result you see, simultaneously.

Announce the entry rules before the draw, not after. State clearly who is eligible (e.g., "all comments posted before noon," "all verified subscribers") before you pull the list. Changing eligibility rules after a winner is drawn is the fastest way to lose audience trust, regardless of how fairly the technical draw was conducted.

Keep a screenshot of the full list. Before pressing Draw, take a screenshot of the complete name list in the input box. If a winner disputes the result or a follower asks for verification, you have a record of exactly who was entered. Pair this with the Draw History panel, which logs every winner from the current session, and you have a clean audit trail for multi-round draws.

Use the "Remove Winner" toggle for multi-round events. If you are running several rounds of prizes, enabling this setting guarantees each person can win a maximum of one prize - a critical fairness requirement for most formal giveaway regulations. This tool enforces it automatically by removing the winner from the entry pool after each successful draw.