Decision Maker

Share:

Pick one option randomly from a list. Optional per-option weighting via "Option | 3" syntax.

RT-FUN-006 · Fun & Misc

Decision Maker Tool

Advertisement
After results · AD-W1 Responsive · Post-tool — peak engagement

How to use the decision maker

List your options

One option per line in the textarea. The tool ships with a sample list (lunch venues) — clear it and type or paste your own choices. There's no limit on count or length.

Optionally weight them

Tick "Use weighted picks" and add a pipe and a number after any option to bias it — e.g. Pizza | 3 makes that option three times more likely than a bare line. Weights can be integers or decimals.

Click "Pick one"

The tool selects an option using your browser's secure entropy source (crypto.getRandomValues). The pick pulses into the dark card with the selected text. Click again to pick a different (or sometimes the same) option.

Review the recent-picks list

Your last 10 picks are listed below the result card. Useful when running several "best of N" rounds or just to remember what came up. Clear with the secondary button.

Advertisement
After how-to · AD-W2 Responsive

Random picks — when they're useful and when they aren't

A random pick is the right tool when (a) two or more options feel roughly equivalent and (b) you'd rather decide quickly than perfectly. "Where do we eat lunch?" is the canonical Singapore use case — a list of 4-6 hawker centres or food courts where any choice is fine but the act of choosing burns five minutes of group debate. A weighted pick is the right escalation when you do care more about one option but want to leave some chance for the others — e.g. weighting the closest hawker centre 3:1 against the further ones biases toward convenience without locking it in.

What weighting actually does

Behind the scenes the tool sums the weights, generates an unbiased random number in [0, total), and walks the list adding weights until the cumulative total exceeds the random number. That position is the pick. Two options with weights 1 and 3 will select the second option three times as often as the first, on average — but in a single pick you might still get the "less likely" choice. That's the point: weighted randomness is biased, not deterministic. If you want one specific option to always win, you don't want a decision maker, you want a choice.

Why crypto.getRandomValues over Math.random

JavaScript's standard Math.random() uses a pseudorandom generator seeded from the clock — fine for casual use but predictable if you can observe a few outputs. window.crypto.getRandomValues() draws from the OS entropy source (the same one TLS session keys use) and gives genuinely unguessable bits. For most users the difference is invisible; for anyone who cares about the principle of "actually fair" picks, it matters. The tool also applies rejection sampling to avoid modulo bias — a subtle effect where a naive random & n tilts toward smaller numbers by a few parts per million.

ASEAN decision-making culture

Random picks have local flavours across Southeast Asia. Indonesian and Malaysian groups often use suit (the local rock-paper-scissors gesture) for two-person ties rather than coins. Singaporean office groups frequently rotate the "decision burden" — the person who picked last gets to pick again. Filipino families use the "unahan" (first one to say it wins) for trivial things like the last piece of food. Thai office groups gravitate toward seniority-based decisions; using a random tool to override that hierarchy can feel novel. Vietnamese groups often blend democracy and randomness — vote first to narrow the list, then random-pick the final option from the top few.

When NOT to use a decision maker

Three contexts where random picks are the wrong tool: (1) decisions with reversibility cost — if you'd hate to undo the choice, that's a signal it isn't actually 50/50 and a random pick will frustrate you; (2) decisions involving other people's preferences you don't know — you'd be randomising on incomplete information; (3) decisions you've already made but don't want to admit — the tool will sometimes pick the "wrong" answer and you'll over-ride it, which means you knew the answer the whole time. Use the tool to escape mild deliberation paralysis. Don't use it to outsource real thinking.

10 facts about randomness and decision-making

01

Buridan's ass — a 14th-century philosophy thought experiment about a donkey starving between two identical hay bales — is the original "decision paralysis" problem. The named donkey doesn't actually appear in Buridan's text.

02

Steven Levitt's 2016 study had 20,000 people on the fence about a major life change flip a coin and commit to the result. Six months later, those who'd flipped "yes / change" reported being significantly happier.

03

Singapore's chimping (chimpanzee-naming) — the playful first-to-shout decides — has been documented as a kindergarten tradition in local schools since the 1980s.

04

The "Sortition" method — selecting public officials by lot — was Athenian democracy's default for non-strategic offices. Modern juries are the only surviving version in most countries.

05

Reservoir Sampling (a 1985 algorithm) is the mathematical way to pick one item randomly from a stream of unknown length. The decision maker uses a simpler O(n) walk because we know the list size up front.

06

The Greek word kleros meant both "lottery" and "inheritance" — random allocation of land between heirs was the ancient default before primogeniture took over.

07

Choice overload research (Iyengar & Lepper, 2000) showed that shoppers presented with 24 jam varieties were 10× less likely to buy than those presented with 6. Random-picking from a long list works for the same reason.

08

The "Monty Hall" problem (1990 column controversy) demonstrated that humans systematically misjudge conditional probability — switching doors in the puzzle wins 2/3 of the time, not 1/2.

09

Rejection sampling — the technique this tool uses for modulo-bias-free random integers — was published by John von Neumann in 1951 in a paper titled "Various techniques used in connection with random digits".

10

The Thai siam si oracle — four numbered sticks shaken from a bamboo cup — has been a Buddhist temple decision aid for at least 600 years. The probabilities aren't uniform; longer sticks fall out first.

Frequently asked questions

Yes — unweighted picks use crypto.getRandomValues() with rejection sampling, the cleanest way to draw an unbiased integer in a range. Weighted picks use a cumulative-weight walk, also unbiased relative to the declared weights.
Append a pipe and a number. Pizza | 3 makes that option three times more likely than a bare line. Sushi | 0.5 halves its probability. Tick "Use weighted picks" or the syntax is parsed but treated as plain options.
Not currently — refresh and the list resets to the sample. Browser local-storage persistence is on the roadmap; for now, paste in from a note-app or screenshot the list.
The whole line including | 3 is treated as the option name — so Pizza | 3 becomes a single option literally named "Pizza | 3". Tick the checkbox to actually parse the weight.
No practical limit — the parse + walk are O(n) and work on lists of thousands without lag. Display-wise, options longer than ~80 characters wrap awkwardly in the result card.
Just for visual tidiness. The history isn't used in the picking logic at all — each click is statistically independent, no memory of past picks.
No export buttons currently. Most users just screenshot the result card or copy the text manually. Easier than adding a download button most users wouldn't use.
Yes — with 5 options the chance of two identical picks in a row is 1/5 = 20%. With 2 options it's 50%. This is correct behaviour; truly random outputs include duplicates more often than people expect.
It's a tool, not advice. For everyday "where do we eat?" decisions, perfect. For "should I quit my job?" — see the Levitt study cited in the fun-facts above; coin-flipping major decisions has been studied and the results are interesting.
You could. Math.random() is fine for most casual use. This tool uses crypto.getRandomValues() instead because it draws from the OS entropy source — the same one TLS uses — which guarantees outputs are genuinely unpredictable, not just statistically random.

Related News

You may be interested in these recent stories from our newsroom.

No related news yet for this tool. Our editorial team publishes new pieces every week.

Browse all news →
Advertisement
Pre-footer · AD-W3 728 × 90

75 more free tools

Calculators, converters, security tools — no signup.