Lottery Number Generator
Generate quick-pick style random number lines for popular lottery formats or build a custom draw. Every number is generated locally with cryptographically strong browser randomness.
Choose a Format
Draw Settings
Your Numbers
Recent Generations
Browser-based generation: preset loading, range validation, exclusions, Web Crypto random selection, duplicate-line checks, sorting, history, copying, and theme handling are performed locally in this page. Your generated number lines are not submitted to a Utiliverse processing server. The last five generation batches are stored only in this browser's localStorage. The page itself still loads interface and advertising resources from external providers.
How the Lottery Number Generator Works
The generator creates quick-pick style combinations by drawing numbers without replacement from the selected pool. That means a main number cannot appear twice in the same main-number set. If a game uses a separate bonus ball or Lucky Star pool, those values are drawn independently from that second range.
Random values come from the browser's Web Crypto API. The tool uses rejection sampling rather than a simple modulo operation so every integer in the requested range has an equal chance of selection. The numbers are generated locally in your browser and are not sent to a server.
Popular Lottery Presets
The included presets reflect the published game matrices checked in September 2026: Powerball uses five numbers from 1–69 plus one Powerball from 1–26; Mega Millions uses five from 1–70 plus a Mega Ball from 1–24; EuroMillions uses five from 1–50 plus two Lucky Stars from 1–12; UK Lotto uses six from 1–59; Lotto 6/49 uses six from 1–49; and Lotto America uses five from 1–52 plus a Star Ball from 1–10.
Lottery rules can change. Before using a preset on an actual ticket, confirm the current game format with the official lottery in your jurisdiction.
Tool implementation reviewed: October 3, 2026. The preset values shown on this page are embedded convenience settings and should still be checked against the official operator before play.
Random Numbers Do Not Predict Lottery Results
A random number generator is useful for creating combinations without choosing them manually, but it does not identify "hot," "cold," overdue, lucky, or more likely future numbers. In a fair draw, past results do not make one valid combination inherently more likely than another valid combination in the next independent drawing.
Sorting numbers, excluding personally disliked numbers, generating multiple lines, or choosing a particular visual pattern does not improve the probability of any individual line. Those options are included for convenience and personal preference only.
Generation Methodology, Randomness, and Important Limits
The generator validates the selected ranges, builds an eligible number pool, and then uses the browser's Web Crypto API to select values. Main numbers are drawn without replacement, so a main number cannot repeat inside one line. Bonus numbers are drawn from a separate pool and are also unique within that bonus set.
crypto.getRandomValues() supplies 32-bit values. Rejection sampling removes modulo bias before an index is chosen.Worked example: main-number exclusions
Custom main range:
1–10
Main picks:
5
Excluded:
4, 7
Eligible main pool:
1, 2, 3, 5, 6, 8, 9, 10
The generator draws 5 unique values
from those 8 eligible numbers.
Worked example: separate bonus pool
Main pool:
1–5, choose 2
Bonus pool:
1–3, choose 1
Possible line:
Main: 1, 4
Bonus: 1
This is valid because the main and bonus
pools are generated independently.
Web Crypto does not predict lottery results
The random source is designed to generate unbiased values from the configured pool. It does not analyze past drawings, identify hot or cold numbers, forecast future results, or make one valid lottery combination more likely than another in a fair independent draw.
Rejection sampling avoids modulo bias
The randomBelow() helper draws an unsigned 32-bit value and rejects values above the largest even multiple of the requested range size. The remaining value is reduced with modulo only after that rejection step, giving each possible array index equal probability.
Unique numbers use a partial Fisher–Yates shuffle
The tool builds the eligible integer pool, then swaps a randomly selected remaining value into each required position. It stops after the requested count rather than shuffling the entire pool, which is efficient while still preventing duplicates inside that pool.
Main and bonus pools are independent
A number can legally appear once in the main set and also once in the bonus set if the configured ranges overlap. The implementation prevents duplicates within each individual pool, not across the two different pools.
Exclusions apply only to main numbers
The exclusion field is parsed with commas, spaces, or semicolons and applied only when building the main pool. It does not remove matching values from the bonus pool. Exclusions are a preference feature and do not improve the odds of the remaining combinations.
Editing preset values changes the tool to Custom Draw
If you manually change the main count/range, bonus count/range, or bonus-enabled setting while a named preset is active, the interface switches to Custom Draw. This prevents the page from implying that your modified settings still match the named lottery preset.
Custom ranges have explicit limits
The main count must be 1–20 and the bonus count 1–10. Each number range can span at most 1,000,000 integer values, and batch size must be 1–50 lines. The main range must contain enough non-excluded values to satisfy the requested main count.
Duplicate-line avoidance is retry-based
With Avoid duplicate lines enabled, the generator stores a key made from the complete main and bonus number arrays and retries exact duplicates. The attempt ceiling is max(500, line count × 50). If the current settings allow too few distinct combinations, the tool returns the unique lines it found and shows a warning instead of looping indefinitely.
Sorting changes display order only
When Sort each line is enabled, main and bonus values are sorted numerically after they are drawn. Sorting does not change which values were selected or the probability of the line.
Recent history is browser-local and intentionally limited
The tool stores up to five recent batches under utiliverse-lottery-generator-history-v1. Each saved batch keeps at most the first 10 generated lines, while the history panel displays up to three of those lines plus a “more lines” summary. Clearing history removes that localStorage entry.
Preset matrices can change over time
The named presets are convenience settings embedded in this version of the page. Lottery operators can change game matrices, bonus ranges, drawing rules, or game names. Before using a generated line on an actual ticket, verify the current rules with the official lottery operator.
Common mistakes
- Assuming random or cryptographic means predictive.
- Expecting excluded main numbers to be removed from the bonus pool too.
- Assuming the same numeric value cannot appear in both main and bonus pools.
- Editing a named preset but continuing to treat it as the official game matrix.
- Requesting more unique lines than the configured combination space can easily provide.
Related Utiliverse Tools
Last reviewed: October 3, 2026 · Preset loading, validation limits, main-number exclusions, Web Crypto rejection sampling, partial Fisher–Yates drawing, independent bonus pool behavior, sorting, duplicate-line retry ceiling, history localStorage, copy behavior, and theme handling reviewed against the current implementation.
Lottery Number Generator FAQ
Can this tool predict winning lottery numbers?
No. The generator produces random quick-pick style combinations. It cannot predict a future lottery result or improve the underlying odds of a valid line.
How random are the generated numbers?
The tool uses the browser Web Crypto API together with rejection sampling to produce unbiased random integers, then samples without replacement within each number pool.
Can I generate multiple lottery tickets at once?
Yes. Enter between 1 and 50 lines. Each line is generated independently, and the optional duplicate-line setting retries if the exact same complete line appears within the batch.
Can I create my own lottery format?
Yes. Choose Custom Draw and specify the number of main picks, the lowest and highest values, and an optional separate bonus-number range.
Does excluding certain numbers improve my chances?
No. The exclusion field is only a convenience for personal preferences. Excluding numbers does not make the remaining valid combinations more likely to be drawn.
Are my generated lines saved?
The tool keeps only the five most recent generated batches in local browser storage. You can clear that history at any time.
Can the same number appear as both a main number and a bonus number?
Yes, if the main and bonus ranges overlap. They are separate pools, so uniqueness is enforced within each pool rather than across both pools together.
Do exclusions also remove numbers from the bonus pool?
No. The exclusion field applies only to the main-number pool in the current implementation.
What happens if there are not enough distinct lines for my batch?
With duplicate-line avoidance enabled, the generator retries exact duplicate lines up to a fixed attempt ceiling. If it cannot reach the requested count, it returns the unique lines found and shows a warning.
Does sorting a line change its odds?
No. Sorting only changes the displayed order of the numbers after selection.
How much history is stored?
The tool keeps up to five recent batches, stores at most 10 lines per batch, and displays up to three saved lines from each batch in the history panel.