Passphrase Generator
SecurityGenerate strong, memorable passphrases from a curated word list. Customise word count, separator, and capitalisation — browser-based, no sign-up required.
Reviewed by the thecalcu.com team · Last updated June 17, 2026
What is a Passphrase?
A Passphrase Generator creates a sequence of random words drawn from a curated word bank and joins them with a separator of your choice, producing credentials like anchor-raven-maple-frost-62 that are both long enough to be strong and structured enough to be memorable. Unlike a conventional password where every character is independently random, a passphrase groups randomness into recognisable word chunks that the human memory is far better at retaining.
The idea was popularised by XKCD comic 936 ("correct horse battery staple"), which illustrated that four random words are simultaneously easier to remember and mathematically harder to brute-force than a short mixed-character string. The key word is random, passphrases only work when the words are chosen by a truly random process, not by a person. Humans gravitate toward words from a narrow vocabulary slice (pets, places, films) and combine them in predictable ways, which undermines security. This generator eliminates that bias by drawing each word from a 256-word bank using the cryptographically secure crypto.getRandomValues() API.
Each word in the bank contributes exactly 8 bits of entropy, a clean measure based on the 256-word pool size (log₂(256) = 8). A 4-word passphrase therefore provides 32 bits; a 5-word passphrase provides 40 bits; a 6-word passphrase provides 48 bits. Appending the optional 2-digit random number adds a further 6.5 bits. For high-value credentials such as a password manager master key, choose 6 or more words.
For random character-dense credentials such as API keys or system passwords, the Password Generator remains the right tool. For unique technical identifiers, the UUID Generator is more appropriate. A passphrase is specifically designed for credentials a person needs to type or recall directly.
Why Use a Passphrase Generator?
The recurring problem with strong passwords is that the strength comes at the cost of memorability: a 16-character random string is powerful but requires a password manager or significant memorisation effort. Passphrases solve this by trading character density for word-level length, four to six common words are far easier to hold in memory than sixteen random characters, yet the overall entropy is comparable or higher once the word count is sufficient.
The other problem passphrases solve is the "memorable but weak" password people end up creating when forced to choose something they can type: a pet's name, a birth year, a film title with an exclamation mark. These all fall into the patterns that dictionary attacks and credential-stuffing tools target first. A randomly generated passphrase has none of those patterns because no person chose the words.
Who Should Use This Generator?
Anyone setting a password manager master key, the one password that has no safety net if forgotten, benefits most from a passphrase. It needs to be remembered under pressure and never written down in an insecure place; a four-to-six word phrase is far more memorable than a random character string. Developers setting up SSH keys, database access credentials, or VPN passwords where memorability matters use passphrases to avoid pasting the credential into every session. Non-technical users who find character-dense passwords too hard to remember gain real security without needing to manage a password manager for every account.
For all other account passwords that will be stored in a manager and never typed manually, the Password Generator is the right tool, save the passphrase approach for the credentials that need to live in human memory.
What Insights Does the Passphrase Generator Give You?
Four controls let you tune the output for any site's password rules:
Number of Words determines the core entropy. Each word contributes 8 bits (drawn from a 256-word bank): 4 words = 32 bits, 5 words = 40 bits, 6 words = 48 bits. Increase the count whenever a site allows long passwords.
Separator controls the character between words. Hyphen and dot are universally accepted; space works on most modern systems but some older ones reject it; underscore is common in technical contexts; none produces a single compound string that is harder to type but denser.
Capitalise Each Word title-cases each word, satisfying "must contain uppercase" requirements and making word boundaries visually clearer when no separator is used.
Append a Random Number adds a two-digit number (10–99, drawn with crypto.getRandomValues) after the last word, satisfying "must contain a number" requirements and adding 6.5 bits of additional entropy.
How to use this Passphrase calculator
- Set Number of Words to the word count you need, 4 for quick accounts, 6 or more for a master password.
- Choose a Separator from the dropdown that matches the rules of the site or system you're signing up for.
- Toggle Capitalise Each Word on if the site requires at least one uppercase letter.
- Toggle Append a Random Number on (it is on by default) if the site requires a digit.
- Click Generate, the passphrase appears immediately in the Generated Passphrase output box.
- Click the copy button to copy the passphrase to your clipboard in one click.
- Paste it into the password field and save it in your password manager before closing the tab.
Formula & Methodology
The generator maintains a curated bank of 256 common English words, nouns and adjectives, 4–8 characters each, chosen for memorability and unambiguous pronunciation. The bank size of 256 = 2⁸ gives a clean 8 bits of entropy per word, making strength calculations straightforward. Word selection: each word is drawn usingcrypto.getRandomValues()to fill aUint32Array. Rejection sampling is applied, any value outside the largest multiple of 256 that fits in a 32-bit integer is discarded and resampled, eliminating the modulo bias that would otherwise make certain words marginally more likely than others. Number selection: the optional two-digit number (10–99) is drawn with the same rejection-sampling approach over the range [10, 99], contributinglog₂(90) ≈ 6.5additional bits of entropy. Full entropy table (with number appended): | Words | Entropy (words only) | Entropy (+ number) | |---|---|---| | 3 | 24 bits | ~30.5 bits | | 4 | 32 bits | ~38.5 bits | | 5 | 40 bits | ~46.5 bits | | 6 | 48 bits | ~54.5 bits | | 7 | 56 bits | ~62.5 bits | All generation runs entirely in your browser, nothing is transmitted to any server at any point.
Frequently Asked Questions