Random Letter Generator: Case, Vowels & Unique Characters
Generate letters from an explicitly chosen alphabet
This generator selects characters from English uppercase and lowercase alphabet pools. Use it for invented labels, spelling activities or small synthetic samples. Choose the pool, count, duplicate rule and separator, then inspect the generated sequence. It does not generate words, apply English letter-frequency weights, accept a custom alphabet or provide a reproducible seed.
A worked example: create a set of vowel tiles
- Set Letter count to 5 and turn off Lowercase letters, leaving Uppercase letters enabled.
- Choose Vowels (AEIOU) and turn off Allow duplicates. The pool now contains five characters.
- Choose Space as the separator and click Generate letters. The output contains A, E, I, O and U exactly once each, in a randomly selected order. Any permutation of those five vowels is an acceptable result.
- Try count 6 with duplicates still disabled. The tool reports that six unique characters cannot be drawn from a five-character pool and hides the previous result.
- Enable duplicates and generate again to allow repeats. Repetition is permitted, but a repeat is not guaranteed in every batch.
For a lowercase consonant sample, disable uppercase, enable lowercase and choose Consonants. Every output character belongs to bcdfghjklmnpqrstvwxyz. This tool treats Y as a consonant; it does not model how Y is used in a particular word.
Pool size, duplicate rules and formatting
All letters provides 26 uppercase, 26 lowercase or 52 mixed-case characters. Vowels provides AEIOU and/or aeiou, so its pool contains five or ten characters. Consonants provides 21 characters per case, or 42 when both cases are enabled.
With duplicates disabled, characters are sampled without replacement. A and a count as distinct characters, so a mixed-case unique batch can contain both. With duplicates enabled, each selection can repeat a previous character. All selections use the same pool rather than an English-frequency distribution.
None joins characters directly; Space adds one space; Comma adds comma-space; New line adds LF. Custom separator accepts up to twenty UTF-16 characters, including an empty separator. A separator changes layout rather than the number of selected characters. For example, three lowercase selections with || between them could display a||m||z; the letters can vary on each generation.
Controls and invalid inputs
The initial default generates ten mixed-case letters separated by spaces with duplicates allowed. Later setting changes hide the old result; click Generate letters for the new configuration. Clear result removes the current sequence while keeping settings. There is no automatically saved history, and reloading returns to defaults.
Letter count must be an integer from 1 to 5,000. Values outside that range, an empty count, or disabling both letter cases produce an error rather than a silently adjusted count. Unique mode also requires the requested count to fit the chosen pool.
The complete formatted output is limited to 100,000 UTF-16 characters. A long custom separator can hit that bound before the 5,000-letter limit; shorten the separator or reduce count. Errors hide old output and copying is unavailable until a valid batch is generated.
Randomness and processing
The feature uses the browser's Web Crypto random source with rejection sampling to avoid incomplete-bucket index bias. It reports random-source failures and does not fall back to Math.random. A later batch may contain the same letters or the same complete sequence; fresh generation does not guarantee a visibly different result.
This is a letter-sequence utility rather than an assessment of password strength, a source of encryption keys or an audited lottery. A five-vowel pool has only five choices per selection regardless of how unpredictable the browser's random source is. Choose a tool and procedure appropriate to the actual task.
Generation and formatting run in your browser without a SimplyUtils generation API. Advertising, analytics and extensions have separate access and privacy considerations. The output is not saved as history, but copying places it on the clipboard, which has separate retention rules.
See MDN's Crypto.getRandomValues reference for the underlying random source, or use List Randomizer to reorder a list you supply.
Guide published by SimplyUtils. View our publishing information and contact details.