Category
Random Pickers & Fair Draws
Pick a name, a country, a color, a winner — fair selection from any list.
A picker takes a set of options -- either your own list or a fixed real-world list -- and returns exactly one, fairly. That sounds simple, but 'fairly' is doing real work: it means every option in the set had a genuinely equal (or deliberately, transparently weighted) chance before the draw happened, not just a result that looks plausible after the fact.
This category groups fourteen tools that all solve some version of the same underlying problem -- pick one thing from a set -- but the sets themselves are wildly different: a list you type in yourself, a fixed list of real countries or animals, a full RGB color space, a pool where entries carry deliberately unequal odds, or just two custom-labeled options. Grouping them here is about the shared job (picking), not a shared mechanic, which is why the how-it-works explanation differs meaningfully tool to tool even within this one category.
If you already know which specific picker you need, jump straight to it below. If you're not sure which one fits your situation, the sections below group them by what kind of set you're actually picking from.
It's worth being upfront about the shared limitation across every fixed-list tool in this category: a curated list (countries, animals, emoji, letters) can only ever be as fair as the list itself is complete and unbiased -- the random draw guarantees equal odds within the list, but doesn't guarantee the list represents anything beyond what it explicitly contains.
Random Name Picker
Paste a list of names and pick one fairly — great for classrooms and raffles.
Random Country Picker
Pick a random country from all 195 — for travel dreaming or trivia.
Random Animal Picker
Get a random animal from a curated real-species list.
Random Color Picker
Generate a random color with hex, RGB, and HSL values.
Raffle & Giveaway Picker
Paste your entrant list and draw a fair, verifiable winner — built for streamers.
Straw Picker
Draw straws online — one short straw, picked fairly, no favorites.
Yes or No Picker
A fair coin-weighted yes/no decision, instantly.
This or That Picker
Can't decide between two options? Let true randomness choose.
Random Letter Generator
Pick a random letter A-Z — for games, name generators, or classroom drills.
Random Emoji Generator
Get a random emoji from the full standard set.
Weighted Random Picker
Give each entry its own odds — and see the exact probability table before you draw.
Random Sample From a List
Draw a fixed-size sample without replacement — for audits, spot checks, and surveys.
Random Subset Picker
Include each entry independently at probability p — the sample size is a random variable.
Prize Assignment Randomizer
Match a list of winners to a list of distinct prizes — one each, nobody doubled up.
Picking from a list you supply
Three tools here all start from a list you type or paste in, but each one is answering a different social question. The name picker keeps things simple: every line you enter is worth exactly one equal shot, which covers most everyday cases like cold-calling a roster or choosing which book a club reads next. The raffle picker exists for the messier real-world case where entries genuinely shouldn't be equal -- three entries for one person and one for another should mean three times the odds, not the same odds, which is exactly the situation a streamer running a follow-and-share giveaway runs into constantly.
The straw picker flips the framing entirely: rather than choosing a winner, it singles out the one person holding the short straw, which reads very differently to a group even though the underlying draw is just as fair. That framing is worth reaching for specifically when the outcome is something nobody's excited about -- chores, an inconvenient errand, the seat nobody wants -- rather than a prize someone's hoping to land. All three tools here still boil down to a fair index or ticket-pool draw under crypto.getRandomValues and rejection sampling; picking between them is really a question of whether your entries are equal, weighted, or set up as an elimination.
Picking from a fixed, real-world list
None of these four tools take anything you type -- each one draws instead from a reference list the site keeps and maintains internally. Country picks come from the complete UN roster, 195 member and observer states, treated as one flat pool where population and land area count for nothing at draw time. Animal picks work differently by necessity: there's no equivalent official master list of every species, so that tool leans on a hand-picked, deliberately varied cross-section instead of trying (and failing) to draw evenly across the roughly one million species known to science, most of which are unremarkable insects nobody's asking for.
A-through-Z gets treated as 26 equally likely outcomes on the letter generator, which is a conscious choice -- it would be easy to weight the draw toward common letters the way a Scrabble bag does, and this tool deliberately doesn't, because a fair pick and a linguistically realistic one are two different goals. The emoji generator works from a much bigger pool, several thousand entries pulled from the current Unicode emoji standard and expanded each time that standard grows. What ties all four of these fixed-list tools together isn't the size or subject of their lists, which vary enormously, but the same underlying promise: whatever's on the list, every entry gets an identical shot.
Generating rather than selecting: color
The random color picker is a slight outlier in this category: it doesn't pick from a pre-existing list at all. Instead, it draws three independent random byte values for the red, green, and blue channels, which together cover the full roughly 16.7-million-color RGB space. That's technically closer to the random number generator's mechanic than to a list-based picker's, but it lives here because the everyday use case -- 'give me a color' -- is a picking problem from the user's point of view, even if the underlying math is generative rather than selective.
Binary picks: exactly two options
The yes-no picker and this-or-that picker both reduce to the simplest possible fair draw on the whole site: a single random bit from crypto.getRandomValues, checked for even or odd, with no rejection sampling even needed because a 2-outcome split maps perfectly onto a random bit. The only difference between them is the label -- 'yes' and 'no' are fixed, while this-or-that lets you type your own two custom options. Both are exact, unweighted 50/50 splits regardless of phrasing, option order, or how emotionally loaded the choice feels to you.
If you need more than two options, none of the picker tools in this section fit -- the spinner wheel in the game-tools category, or the plain random name picker above, handle any number of entries instead.
Choosing the right picker for your situation
If you're drawing from your own list of people and every entry should have identical odds, start with the random name picker -- it's the fastest, simplest tool here. If some entrants should have more chances than others (extra raffle tickets, multiple giveaway entries), move to the raffle picker instead, since it's built specifically for weighted ticket pools rather than flat equal entries.
If the framing is 'someone loses' rather than 'someone wins' -- deciding who's stuck doing a chore, for instance -- the straw picker's elimination framing fits the social moment better than a plain name draw, even though the underlying math is nearly identical. For a fixed real-world set rather than your own list, pick based on the domain: countries for travel or geography, animals for creative prompts, letters or emoji for games and icebreakers, and the color picker whenever you just need 'a color' with no further constraints.
For anything reducible to exactly two options, skip straight to the binary tools -- yes-no for a fixed yes/no framing, this-or-that for your own two custom labels. Both are faster and simpler than building a two-entry list on the name picker or spinner wheel.
The math in plain language: why a random index isn't as simple as it sounds
Picking 'a random item from a list of N items' sounds like it should be a one-line operation, and conceptually it is: generate a random number from 0 to N-1, return the item at that position. The subtlety is in how that random number gets generated. A computer's basic building block for randomness is a random byte, which can be any of 256 possible values (0 through 255). If your list has, say, 7 items, and you naively compute byte-value-modulo-7, the math doesn't come out even: 256 divided by 7 is 36 remainder 4, which means the byte values 0 through 3 each map to one extra 'wrap-around' outcome that values 4 through 6 don't get -- a small but real bias toward the first few list positions.
Every picker on this site that draws from a list of arbitrary length -- the name picker, raffle picker, straw picker, country picker, animal picker, letter generator, and emoji generator -- uses rejection sampling to fix exactly this problem: draw a random byte, and if it would fall in that uneven leftover range, throw it away and draw again, repeating until a byte lands cleanly within a range that divides evenly by your list length. The result is a genuinely uniform draw regardless of how awkward your list's length happens to be, whether that's 7 names or 195 countries.
When the entries should not be equal
Everything above assumes one entry, one equal chance. The weighted picker exists for the situations where that is the wrong answer — raffle tickets bought in different quantities, a chore rota correcting for who did the bad job last month, a ballot weighting applicants who were unsuccessful in previous years. In all of those, an equal-chance draw would ignore information everyone agrees is relevant while claiming to be scrupulous about it.
The implementation is a cumulative-sum walk rather than the obvious alternative of repeating an entry in a flat list. Duplication works only for whole numbers, cannot express two and a half tickets without rescaling everything, and for weights in the thousands builds an array with as many elements as the total weight in order to make one draw. The cumulative walk uses a single random float and no allocation at all, which is why fractional and very large weights both work exactly.
Because weights are normalised, only their ratios matter: entries at 2, 3 and 5 behave identically to 20, 30 and 50, and identically to 0.2, 0.3 and 0.5. The practical consequence people trip over is that scaling every weight by the same factor changes nothing — to move the odds you have to change a ratio.
The odds table above the draw button is not decoration. Unequal odds are legitimate; unequal odds nobody announced are indistinguishable from a rigged draw, and the difference is entirely in whether the affected people saw the numbers first.
Drawing a set rather than a winner
Three tools that return several things rather than one, and they differ in a way that matters more than it sounds. The sample tool draws exactly n items without replacement using a partial Fisher-Yates pass, so the size is always what you asked for and no item can appear twice. It prints the sampling fraction, because a sample of ten from twelve and a sample of ten from ten thousand support entirely different sentences afterwards.
The subset picker gives every item an independent chance of inclusion, which makes the result size a random variable rather than a target. Fifty items at twenty percent averages ten survivors with a standard deviation of about 2.8, so seven and thirteen are both ordinary — and at ten items an empty result happens about one run in nine, which the tool reports rather than silently redrawing.
Those are two genuinely different models rather than two settings of one. Fixed-size sampling makes the items dependent: once nine of ten are chosen, the tenth is drawn from what remains. An independent pass makes each item's fate depend on nothing but its own draw, which is the correct model when inclusion is a per-item decision — a spot check where each unit independently passes or fails, a rollout where each user independently is or is not in the new experience.
The prize assignment randomizer solves a third problem: matching two different lists one-to-one. Shuffling both sides and pairing them positionally produces a uniformly random matching, and the one-to-one property is structural rather than a check performed afterwards — nobody can receive two prizes because the pairing walks two lists in step.
Frequently asked questions
Which picker should I use for a giveaway with follower and share bonuses?
The raffle picker -- it's specifically built for entrants holding different numbers of tickets, unlike the plain name picker which assumes every entry is equal.
Is any picker on this site weighted toward 'nicer' or more common results?
No -- every picker here, whether it draws from your list or a fixed internal list, gives every option in its set an equal share of the draw unless you explicitly add weight (like listing a name multiple times).
Can I combine two pickers, like narrowing with the country picker then picking a name?
Nothing stops you from running one picker's result through another tool manually, but there's no built-in chaining between tools.
Why does the country picker use a fixed list instead of letting me type countries in?
Because the whole appeal is drawing from the complete real set of 195 countries with guaranteed accuracy, rather than depending on you to type an exhaustive and correctly-spelled list yourself.
Do the fixed-list pickers (countries, animals, letters, emoji) ever get updated?
They're periodically reviewed and updated rather than live-fed in real time -- the country list tracks current UN membership, and the emoji list tracks new Unicode releases, but neither updates automatically the instant a change happens in the real world.
Is there a picker that lets me exclude certain results, like skipping a specific country or letter?
Not currently on any of the fixed-list pickers -- if a specific result isn't useful for your situation, the simplest workaround is to just draw again.
Why isn't there one universal 'pick anything' tool instead of ten separate pickers?
Because the fairness explanation and the underlying data genuinely differ tool to tool -- a list you supply, a fixed real-world list, and a generated RGB value all need different framing to explain honestly, which is easier to do well as separate, focused tools than as one tool trying to cover every case.
When should I use the weighted picker instead of the name picker?
Whenever the entries genuinely should not be equal — raffle tickets bought in different quantities, or a draw correcting for who was picked recently. The name picker assumes one entry, one equal chance.
Why not just paste a name in three times to give it three chances?
That works for whole numbers and nothing else. It cannot express two and a half tickets, and for large weights it builds an enormous list to make one draw.
What is the difference between the sample tool and the subset picker?
The sample tool returns exactly n items. The subset picker gives each item an independent chance, so the result size varies run to run and an empty result is possible.
Can two people receive the same prize in the assignment randomizer?
No. The pairing walks two shuffled lists in step, so the one-to-one property is structural rather than a check performed afterwards.