Password Generator

Create a strong, random password — generated locally in your browser, never transmitted anywhere.

Why Use a Password Generator?

Most people vastly underestimate how vulnerable their passwords are. A password like "Summer2024!" might feel complex, but it follows a pattern — capitalised first letter, common word, year, exclamation mark — that modern cracking software can guess in seconds. The same applies to names of pets, family members, birthdays, and sports teams. Even substituting letters with numbers (p@ssw0rd) is no longer effective, as these patterns are well-known to attackers.

A truly secure password is one that is generated randomly using cryptographic randomness, is long enough to be computationally infeasible to guess, and is unique — not reused across other accounts. Our password generator does all three automatically, and because it runs entirely in your browser, the password is never sent to any server or stored anywhere.

How This Password Generator Works

The generator uses your browser's built-in crypto.getRandomValues() function — the same cryptographically secure random number generator used by financial applications and security software. This is fundamentally different from the basic Math.random() function built into JavaScript, which produces pseudorandom numbers that are predictable. Cryptographic randomness is genuinely unpredictable, making passwords generated this way resistant to statistical attacks.

Your character pool is assembled from the character types you select — uppercase, lowercase, numbers, and symbols — and each character position is filled independently using a randomly selected value from that pool. No pattern, no sequence, no predictability.

Understanding the Strength Meter

The strength indicator measures entropy — a mathematical measure of unpredictability expressed in bits. Entropy is calculated as: length × log₂(pool size). A pool of 26 lowercase letters has log₂(26) ≈ 4.7 bits per character. Adding uppercase (52 letters) gives 5.7 bits per character. Adding numbers (62 characters) gives 5.95 bits. Adding symbols (94 characters) gives 6.55 bits per character.

The strength thresholds used here are: under 40 bits is Weak (vulnerable to modern attack), 40–60 bits is Fair (reasonable for low-risk accounts), 60–80 bits is Strong (appropriate for most purposes), and over 80 bits is Very Strong (appropriate for high-value accounts and long-term use). A 16-character password using all character types reaches approximately 105 bits — well into the Very Strong range.

How Long Should Your Password Be?

Length is the single most important factor in password strength. Each additional character exponentially increases the number of possible combinations an attacker must try. Modern computers can test billions of passwords per second against stolen password databases. Against online login systems, which limit attempts, even a shorter password is relatively safe — but for protecting encrypted files or password manager vaults, maximum length is recommended.

For most accounts, 16 characters with mixed case, numbers, and symbols provides excellent protection. For your password manager master password — the one that protects everything else — use 20 or more characters. The maximum length of 64 characters in this tool is effectively impossible to crack with any foreseeable computing technology.

Frequently Asked Questions

Is it safe to use an online password generator?

This generator is safe to use because it runs entirely in your browser — your generated password is never sent to any server. You can verify this by turning off your internet connection after the page loads and generating a new password — it works completely offline. The code is visible in your browser's developer tools for anyone who wants to inspect it.

Should I use the same password on multiple sites?

Never. If one website you use suffers a data breach — and breaches are extremely common — attackers will immediately try your leaked password on other major sites. This practice, called credential stuffing, is responsible for a huge proportion of account compromises. Generate a unique password for every account you have.

How do I remember all these passwords?

You don't — you use a password manager. Applications like Bitwarden (free and open source), 1Password, or the password manager built into your browser encrypt and store all your passwords behind a single strong master password that only you know. You only need to remember one password to access all the others securely.

What are the ambiguous characters to exclude?

The characters l (lowercase L), 1 (number one), I (uppercase i), O (uppercase o), and 0 (zero) look very similar in many fonts, making them easy to confuse when reading or typing a password manually. If you will need to type your password by hand — for example, into a TV or gaming console — excluding these reduces transcription errors without significantly reducing security.

What about passphrases instead of random passwords?

A passphrase is a sequence of random words — for example, "correct horse battery staple." Long passphrases can have high entropy while being more memorable than random character strings. A 4-word passphrase from a 2,000-word list has approximately 44 bits of entropy — reasonable but not exceptional. For accounts that support very long passwords and where memorability matters, a 5–6 word passphrase is a solid choice. For most purposes, a 16+ character random password is both stronger and equally manageable when stored in a password manager.

Password Security Best Practices

Use a unique, randomly generated password for every account. Store passwords in a password manager rather than in a notebook, text file, or browser without a master password. Enable two-factor authentication (2FA) wherever possible — this means even a stolen password cannot access your account without a second verification step. Change passwords immediately if you suspect a breach or receive a notification that your credentials appeared in a data leak. Check haveibeenpwned.com to see if your email has been found in any known data breaches.