How to use the random string generator
- 1On Generate random strings, set the Length and How many strings.
- 2Pick a preset (Alphanumeric, Hex, Letters only…) or tick the character sets you want; add your own under Also use these characters.
- 3Tick Exclude look-alike characters if people will read or type the strings.
- 4Press Generate, then copy or download the list. To rearrange your own text instead, open Shuffle my text, paste it and press Shuffle text.
Alphanumeric, 10 characters, look-alikes excluded
Length 10 · How many strings 3 · Uppercase + Lowercase + Digits · Exclude look-alike characters
D5XFDSGVkx m28WrweEZX Wncy8J5Lp2
A real batch. The pool is 56 characters (62 minus I, l, 1, O, 0 and o), about 58 bits of randomness per string. Your output will differ.
Choosing character sets
Each ticked set is added to one pool, and every character of every string is drawn from that pool with equal chance:
| Set | Characters | Pool size |
|---|---|---|
| Uppercase | A–Z | 26 |
| Lowercase | a–z | 26 |
| Digits | 0–9 | 10 |
| Symbols | ! @ # $ % ^ & * ( ) - _ = + [ ] { } ; : , . ? / ~ | 25 |
Hex fills the custom field with 0–9 and a–f for hexadecimal IDs; Digits only makes numeric codes such as PINs. Anything typed under Also use these characters joins the pool once, so typing aab adds just a and b.
Length, quantity and uniqueness
The panel shows the pool size and the randomness per string: length × log2(pool size). A 16-character alphanumeric string has 16 × log2(62) ≈ 95 bits, and a 32-character hex string has 32 × 4 = 128 bits. No duplicate strings guarantees every string in the batch is different. With short lengths and small pools that can be impossible (there are only 100 two-digit codes), and the tool says so rather than returning fewer strings.
Excluding similar characters
In many fonts the capital I, lowercase l, digit 1 and the pipe | look alike, as do capital O, digit 0 and lowercase o. Exclude look-alike characters removes those seven characters from the pool. Use it for codes people copy by hand, such as voucher codes or guest Wi-Fi keys; skip it for strings only machines read, where a larger pool means more randomness per character.
Shuffling an existing string
Shuffle my text rearranges text you paste instead of generating new characters. All characters mixes every character (tick Keep spaces in place to keep the word lengths), Letters inside each word mixes letters but keeps words in order (“hello world” can become “lleho dwolr”), and Word order shuffles whole words. Shuffle each line separately keeps line breaks where they are, handy for lists. Accented letters and emoji stay intact because the text is split into whole characters, not code units. For puzzle-style scrambling that keeps first and last letters, use the word scrambler.
Random strings vs passwords vs UUIDs
All three should come from a cryptographically secure generator; this tool uses crypto.getRandomValues with rejection sampling, never Math.random. The difference is format. A password generator adds rules such as “at least one symbol”. A UUID generator produces the standard 36-character format (RFC 9562) that databases expect. For encryption keys, use the encryption key generator, which outputs exact key sizes in hex or Base64.
Is anything I enter stored?
This tool runs entirely in your browser. Your text is not uploaded to our servers.
