For fun only — not certified for legally binding draws.

Lucky picks.
Built fairly.

A lottery numbers generator for Powerball, Mega Millions, EuroMillions, UK Lotto, Saturday Lotto, Oz Lotto, Australian Powerball, or any custom format. Multiple lines per click, sorted ascending, bonus balls in red. Cryptographically random under the hood.

Cryptographic RNG No replacement within line Shareable URL
Press generate to draw your numbers.
Lines & custom format

About this generator

Picking lottery numbers has two camps. Camp A picks birthdays, anniversaries, and door numbers — meaningful numbers, almost always under 31, almost always clustered in the lower half of the grid. Camp B grabs whatever the cashier's terminal spits out as a Quick Pick. Camp A is sentimental and shares prizes far more often when they win, because a million other people also picked their birthdays. Camp B is statistically better, but trusts the terminal.

Important: these picks are for personal entertainment only. They are not legally binding, not notarized, and not certified for any regulated draw, audit, or sweepstakes. If you run a lottery, raffle, or anything with legal weight, use a notarized provider like random.org.

This tool is a third option. It uses your browser's crypto.getRandomValues — the same source banks and password managers rely on — with rejection sampling, so every number in the pool has the exact same chance of coming up. There's no terminal to trust, no patterns to fall into, no clustering toward birthdays. Within a single line, numbers are drawn without replacement (just like a real lottery), and bonus balls come from a separate pool with their own range.

Eight formats are built in. Powerball (5 of 69 + 1 of 26), Mega Millions (5 of 70 + 1 of 25), EuroMillions (5 of 50 + 2 of 12), UK Lotto (6 of 59), the three big Australian games — Saturday Lotto (6 of 45), Oz Lotto (7 of 47), and Australian Powerball (7 of 35 + 1 Powerball of 20) — and Custom for any other format — Lotto Max, Set for Life, your office pool's quirky rules, anything with a main pool and an optional bonus pool. The presets switch the disabled fields automatically; the Generate button knows the difference.

What people actually use it for: weekly draws where they don't want to think about it, office lottery pools where a shareable URL keeps everyone honest, gift surprise picks on birthdays and gag tickets, and statistical demos where a teacher needs a fair draw on the projector. None of these require certified randomness — for everything else, see the callout. If you want fully editable fair draws (any range, no replacement, with weights), the Number Generator covers it.

What people use it for

Five places this tool earns its keep.

Weekly draws

One bookmark, your preferred preset, generate a fresh line every Friday before the cutoff. The URL keeps the format so you don't have to reset it each week.

Office pools

Pool organizers send the same URL to ten coworkers. Everyone lands on the same preset, gets their own picks, screenshots, hands in. No ambiguity about who picked what.

Gift surprise tickets

Buying a lottery ticket as a stocking stuffer or birthday gag? Pick the numbers here so they feel chosen, not pulled from a register tape. Photo of the screen + the ticket = better gift.

Classroom demos

Probability lessons, statistics workshops, "what are the odds" demos. Project the page, generate twenty lines, count overlaps — instant lesson on why combinations are large.

Avoiding shared prizes

If you're going to play, pick numbers no one else picks. Random picks above 31 reduce the chance of splitting jackpots — won't change your odds, will change your share if you win.

Custom formats

Set for Life, Lotto Max, Lotto 6/49, the bingo at your retirement community. The Custom mode handles any "N of M, plus K of L" format you can describe. Saturday Lotto, Oz Lotto, and Australian Powerball have their own presets.

How it works

The picking

For each line, we build an array [1..max] for the main pool, then run Fisher-Yates partial shuffle backed by crypto.getRandomValues with rejection sampling. We swap the first k positions with random later positions, then take the first k as our draw — that's drawing without replacement, mathematically equivalent to a physical machine that doesn't put the ball back.

The bonus pool

If the format has a bonus pool, we repeat the same partial shuffle on a fresh [1..bonusMax] array. Bonus numbers are drawn independently of the main numbers — a Powerball drawing of 7 doesn't prevent a main 7, just like in the real game.

Why rejection sampling matters

A naïve random % N would slightly favor lower numbers when N doesn't divide evenly into 2³². Across thousands of plays, that bias becomes visible. We discard out-of-range draws and re-roll, so every number in the pool is exactly 1/N probable. The math is overkill for one ticket and table-stakes for honest software.

State & sharing

Preset, line count, and any custom config live in the URL query string and mirror to localStorage. Loading the URL anywhere recreates the exact format. The last 10 line-batches are kept locally so you can compare.

Drop this generator anywhere.

Lottery blogs, classroom probability lessons, office pool pages — paste one line of HTML and the tool just works. Preset travels through the URL.

Embed docs →
<iframe src="https://randomgen.net/lottery/embed/"
  width="100%" height="480"
  loading="lazy"></iframe>

Common questions

Can I use these numbers to play a real lottery?

You can fill in your ticket with these numbers, sure — that's what most people do. But the picks themselves are not legally certified random. For most home use that's fine. For anything legally binding (operator-side draws, regulated sweepstakes, statutory audits), use a notarized provider like random.org.

Which lottery formats are built in?

Powerball (5 of 69 + 1 of 26), Mega Millions (5 of 70 + 1 of 25), EuroMillions (5 of 50 + 2 of 12), UK Lotto (6 of 59), Saturday Lotto (6 of 45), Oz Lotto (7 of 47), Australian Powerball (7 of 35 + 1 of 20), and Custom where you set main count, main max, bonus count, and bonus max yourself. Switch presets and the disabled fields update. For the Australian games you only pick the main numbers — the supplementary balls are drawn by the lottery from the same barrel, not chosen by you, so the generator leaves them out.

Are duplicate numbers possible within one line?

No. Real lotteries draw without replacement (a ball comes out and stays out), so we do the same. Within the main pool and within the bonus pool, every number in one line is unique. Across lines, repeats are allowed because real draws are independent — line 2 doesn't know what line 1 picked.

Why are bonus numbers shown differently?

In Powerball, Mega Millions, and EuroMillions the bonus ball is drawn from a separate pool with different odds. We tint the bonus circle in red so you can copy your ticket onto a slip without confusing the columns. UK Lotto has no bonus, so all six balls are styled the same.

Are these numbers more likely to win?

No. No method increases your odds of winning a fairly run lottery — that's the definition of a fair draw. What this tool does is save you from picking the same patterns most people pick (birthdays under 31, the lower half of the grid, "lucky" sequences). If you do win with random numbers, you're statistically less likely to split the jackpot with someone else who picked the same pattern.

Can I share a specific lotto setup?

Yes. The page URL captures the preset and any custom config. Send the link to family or office pool members and everyone lands on the same setup. Hit Generate and the picks are fresh — the format stays.

Is there a daily limit?

No. You can generate any number of lines as many times as you want. Each generation costs nothing on our side and takes microseconds in your browser. If you want a thousand lines for a statistical demo, set the line count to 20 and click Generate fifty times — or email [email protected] for a bulk endpoint.

Can I include or exclude specific numbers?

Yes. Open the settings panel and type numbers into Always include to force them onto every line — a birthday, a lucky 7 — and into Never include to keep them out of the draw entirely. The rest of each line is drawn at random from whatever's left, so the odds stay uniform across the remaining numbers. Both lists apply to the main numbers, accept commas or spaces, ignore anything outside the format's range, and are saved in the share URL.