Random Letter Generator
Generate one random letter or a batch — single, list, or spinning wheel. Filter by vowels, consonants, custom set, or multi-language alphabet. Cryptographically secure and free.
Click Generate to pick a letter.
Tip: press Space to generate, C to copy, R to clear history.
Settings
Excluded letters
Pool: 26 letters.
What it does
Three display modes
Single mode shows one giant letter — perfect for classrooms and game shows. List mode shows a batch as chips. Wheel mode spins for 1–2 seconds with sound and lands on a letter, ideal for "pick a letter" moments.
Vowels, consonants, custom set
Generate only vowels (with or without Y), only consonants (with or without Y), or define your own pool ("AEIOUSTRN") for word games like Boggle or Wordle warmups.
No-repeat & quantity up to 100
Generate up to 100 letters at once. Disable repeats for unique-letter draws — the tool caps quantity to your pool size and warns you instead of looping forever.
Weighted by English frequency
Toggle weighted mode and letters appear at their natural English rate — E, T, A often, Z and Q rarely. Useful for word-game practice and realistic frequency drills.
Multi-language alphabets
Switch to Spanish (with Ñ), French, German (Ä, Ö, Ü, ß), Greek (Α–Ω), or the NATO phonetic alphabet (Alpha, Bravo, Charlie…).
Excluded-letters grid
A–Z checkbox grid lets you remove specific letters — Q, X, Z for Scattergories, or any combination you want to skip.
Phonics hint for kids
Toggle phonics mode and every generated letter shows a sample word ("B — Bear", "M — Moon"). Off by default; built for early-reader classrooms.
Share-link & letter of the day
Copy a URL with your exact settings encoded so a colleague opens the same configuration. Use ?lod=YYYY-MM-DD to lock to a deterministic letter for that date — every classroom gets the same letter on the same day.
How to use Random Letter Generator
- 1Choose your options
In the settings panel, set quantity (1–100), case (upper/lower/mixed), letter set (A–Z, vowels, consonants, or custom), and whether repeats are allowed. Defaults give you one uppercase A–Z letter.
- 2Pick a display mode
Single mode is best for one big letter. List mode is best for batches. Wheel mode spins and lands — best for game-show moments and classroom "pick a letter" rituals.
- 3Click Generate (or press Space)
Hit the Generate button or tap Space when no input is focused. Wheel mode spins ~1.5s before revealing. Reduced-motion users get an instant result.
- 4Copy, regenerate, or share
Copy the result to clipboard with one click. Regenerate keeps the same settings and produces a new letter. Share copies a URL that loads your exact configuration on any device.
- 5Review the history strip
The last 10 letters of this session appear as chips below the result. Clear the history with the trash icon when you want a fresh start.
When to use this
Scattergories, Categories, and Boggle-style games
Open the /scattergories sub-page or exclude Q, X, Z manually. Set quantity 1, no-repeats off, single mode. Spin the wheel for a fair "letter of the round."
Classroom phonics and "letter of the day"
Switch to Single mode, enable phonics hint, optionally enable sound. Use the /classroom sub-page for a clean teacher-projector view. For consistency across the day, use ?lod=YYYY-MM-DD so every period gets the same letter.
Writing prompts and brainstorming
Generate a batch of 5–10 random letters in list mode. Each becomes the first letter of a character name, story location, or brainstorm seed.
Word-game practice with realistic frequency
Toggle weighted mode. Generate 50 letters in list mode. The distribution matches real English text — useful for practicing Wordle starting words or training a typing drill.
Mock data and test inputs for developers
Set quantity 20, mixed case, comma separator. Copy the resulting string straight into a test fixture or seed a placeholder username generator.
Common errors & fixes
- I asked for 30 unique letters but only got 26
- No-repeats mode caps quantity at the size of your pool. Standard A–Z has 26 letters. Either enable repeats, expand your pool (custom set, NATO alphabet, German with umlauts), or reduce quantity.
- My custom set produced no letters
- The custom-set field accepts only letters — whitespace and digits are stripped. Type the letters you want directly: "AEIOUSTRN". Duplicates within the set are deduplicated.
- Spacebar does not regenerate when I press it
- Spacebar only fires when no input is focused. Click anywhere outside a text or number input first. This is intentional so typing in the custom-set or quantity fields works normally.
- The wheel skips the spin and shows the letter immediately
- Your operating system has "reduce motion" enabled. The tool respects that preference for accessibility. Disable Reduce Motion in your OS to restore the spin animation.
Technical details
| Randomness source | crypto.getRandomValues() with rejection sampling — cryptographically secure and unbiased |
| Max quantity | 100 letters per batch |
| English alphabet pool | 26 letters (A–Z) |
| German alphabet pool | 30 letters (A–Z + Ä, Ö, Ü, ß) |
| Greek alphabet pool | 24 letters (Α–Ω) |
| NATO phonetic pool | 26 call-signs (Alpha, Bravo, … Zulu) |
| Persistence | localStorage (settings only — history is session-scoped) |
| Offline support | Works after first load — no server calls during generation |
Why E, T, A — English letter frequency in plain numbers
In a representative corpus of English prose, letters do not appear at equal rates. E shows up in roughly 12.7% of all letter tokens, T in 9.1%, A in 8.2%, O in 7.5%, I in 7.0%, N in 6.7%, S in 6.3%, H in 6.1%. Z, Q, X, and J each appear in less than 0.2% of tokens.
This matters in three places: cryptanalysis (frequency analysis cracks substitution ciphers in seconds), typography (the most-used letters get the most-optimized letterforms), and word games. Strong Scrabble openings favor common-letter draws; the 1-point tiles are exactly the eight letters above. Wordle solvers using "RAISE" or "ADIEU" as opening words are exploiting the same statistic — pack vowels and high-frequency consonants into the first guess and the remaining search space collapses.
The weighted toggle in this generator uses these exact percentages. With weighted mode on, a batch of 50 letters from this tool will look statistically like 50 letters drawn from a paragraph of English — useful for typing practice that builds real-world muscle memory rather than uniform-distribution drills.
Random letter games and activities — six classroom-ready ideas
**1. Letter of the Day (K–2 phonics).** Generate one letter at the start of class. Throughout the day, kids find that letter in books, draw objects starting with it, write it in different scripts. Use ?lod=YYYY-MM-DD so every class period gets the same letter.
**2. Scattergories (any age).** Roll a letter, set a 60-second timer. Players list one item per category (fruits, countries, animals, movies) starting with that letter. Score one point per unique answer. Use the /scattergories sub-page or exclude Q, X, Z manually for fairer rounds.
**3. Word Sprint (4–6 grade).** Generate three letters in list mode. Players have two minutes to write the longest English word using those three letters in order. Bonus points for words over 8 letters.
**4. Name That Theme (party).** Generate one letter, pick a theme (movies, songs, places). First player to shout a valid answer wins the round. Five letters, five rounds, highest score wins.
**5. Letter Improv (theater & creative writing).** Generate a letter. Write or improvise a 60-second monologue where every important word starts with that letter. Adds artificial constraint that forces creative word choice.
**6. Phonics Hunt (preschool).** Generate one letter with phonics hint enabled. Kids find five objects in the room that match the sample word's sound. Repeat throughout the week.
How browser randomness works — Math.random vs Web Crypto
JavaScript exposes two random number sources. Math.random() returns a pseudorandom float — fast, deterministic given the same seed, statistically uniform but reproducible if you knew the seed. Browsers seed it from system entropy at page load, so it is unpredictable in practice but not cryptographically secure. Most random-letter generators use Math.random().
This tool uses crypto.getRandomValues() instead. It draws directly from the operating system entropy pool — the same source that generates encryption keys and TLS session tokens. The output is cryptographically secure, meaning even an adversary who knows the algorithm cannot predict the next letter.
There is one subtle bias to watch for. The naive way to map a 32-bit random integer to a 0–25 range is `value % 26`. But 2^32 is not divisible by 26, so values 0–25 do not appear at exactly equal frequency. The bias is tiny (about 1 part in 165 million) but real. This generator uses **rejection sampling** — if a random integer falls into the unequal "tail" of the range, it is discarded and a new one is drawn. The result is provably uniform across the pool, regardless of pool size. For a coin flip or six-sided die the difference is invisible; for cryptographic pool sizes it would be exploitable. Either way, the math is correct here.
Frequently Asked Questions
Is this random letter generator truly random?
- It uses crypto.getRandomValues() — the browser's cryptographically secure random source — combined with rejection sampling to eliminate modulo bias. Every letter in your pool has exactly equal probability. This is the same mechanism browsers use to generate encryption keys, so yes, it is genuinely random for any practical purpose including games, classroom use, raffles, and statistical sampling.
How does the random letter generator work?
- When you click Generate, the tool builds a pool of allowed letters based on your settings (alphabet, vowels/consonants/custom, exclusions). It then asks the operating system for a cryptographically secure random number, scales it to the pool size using rejection sampling, and picks the letter at that index. Weighted mode multiplies each letter's pool weight by its English frequency before drawing. All of this runs in your browser — no server calls.
Can I generate random letters without repeats?
- Yes — toggle "Allow repeats" off in the settings panel. The tool will draw without replacement, so each letter in the result list is unique. If you request more letters than exist in your pool (e.g., 30 unique letters from a 26-letter alphabet), the tool caps the result at the pool size and shows a small warning chip.
Can I generate only vowels or only consonants?
- Yes. Switch the "Set" option to "Vowels only" or "Consonants only." There is also a Y toggle — Y is technically both, so you decide whether to include it. For a vowels-only or consonants-only experience with dedicated SEO content, visit /tools/random-letter-generator/vowels-only or /consonants-only.
Is this random letter generator free?
- Yes. Free, no signup, no rate limits, no ads above the fold. Works offline after the first page load. Runs entirely in your browser — your settings and history never leave your device.
Can I use this for Scattergories?
- Yes — and we built a dedicated /scattergories sub-page for it. The Scattergories preset excludes Q, X, and Z (the three letters house rules typically remove for fairness), sets quantity to 1, and disables repeats so a single round always picks a fresh letter. You can also customize the exclusions yourself with the A–Z grid in settings.
Does it include the letter Y?
- It depends on your filter. With "All letters" selected, Y is always in the pool. With "Vowels only" or "Consonants only," there is a separate Y toggle so you can decide — Y is a vowel in some words (rhythm, my) and a consonant in others (yellow, year). The default for vowels-only is "include Y"; for consonants-only it is "exclude Y" to avoid double-counting.
What is "letter of the day" mode?
- Add ?lod=YYYY-MM-DD to the URL (e.g., /tools/random-letter-generator?lod=2026-05-07). The tool deterministically picks one letter for that date and locks the display to it. Two teachers in different classrooms hitting the same URL get the same letter — useful for shared lesson plans or school-wide phonics rituals. The hash is reproducible across browsers and devices.
How do I share my settings with someone else?
- Click the Share button to copy a URL that encodes your current settings (case, set type, quantity, exclusions, mode, language, etc.) as a compact base64 parameter. When the recipient opens the link, the tool loads your configuration before the first render. Local storage is not involved — the URL is the source of truth.
Why does my custom set behave case-insensitively?
- When you type a custom set like "aBcDeF," the tool normalizes everything to uppercase internally so duplicates ("a" and "A") are deduplicated and no-repeat draws stay coherent. The case mode setting (upper/lower/mixed) then controls how the result is displayed — so you still get lowercase output if you ask for it.
Can I get random letters in Spanish, French, or German?
- Yes. Switch the language in settings. Spanish adds Ñ to the consonant pool. German adds Ä, Ö, Ü, and ß. French uses the standard 26 letters (accents are diacritics, not separate letters). Greek and the NATO phonetic alphabet (Alpha, Bravo, Charlie…) are also available. Phonics-hint and English-frequency weighting only apply when the language is set to English.
Related Tools
Random Number Generator
Generate random numbers in any range. Includes dice roller, coin flip, random name picker, and yes/no generator.
Name Picker
Spin a wheel to pick a random name. Save rosters, share wheels via URL, run raffles and classroom draws — no account needed.
Pictionary Word Generator
Random Pictionary words with easy/medium/hard difficulty, 10+ categories, hide-word presenter mode, built-in timer, and team scores. No signup.
Password Gen
Highly secure, random entropy generation.
Word Counter
Real-time character, word, and paragraph analysis.