Security · Generator

Password Generator

Generate cryptographically secure, random passwords. Customize length, character sets, and options. Completely private — passwords are generated in your browser and never leave your device.

Generator Settings
Bulk Generate
History

How to Use This Generator

Everything you can do and how to get the most secure password for your use case.

1
Set Your Length
Drag the slider or click a preset (8, 12, 16, 20, 24, 32, 64). For most accounts, 16 characters is the sweet spot. For high-value accounts like your email or password manager master password, use 24+ characters.
2
Choose Character Sets
Toggle uppercase, lowercase, numbers, and symbols on or off. More sets = larger pool = harder to crack. At least one character from each enabled set is guaranteed in every generated password.
3
Apply Options
Exclude ambiguous characters (O, 0, l, 1, I) if you need to read or type the password manually. Enable no-duplicates or no-sequential for extra constraints. Exclude specific characters your site disallows.
4
Check Strength
The strength bar and chips show how strong your password is and why. The entropy (in bits) tells you how many guesses it would take to crack — aim for 60+ bits for standard accounts, 80+ for critical ones.
5
Copy and Use
Click Copy or click the password itself to copy it. Use Hide to keep the password off your screen when others might be watching. Paste directly into your password manager or website field.
6
Bulk Generate
Need multiple passwords at once? Expand Bulk Generate, set a count (up to 100), and generate a full list using your current settings. Copy all to clipboard with one click — useful for creating test accounts or API keys.

What Makes This Generator Different

🔐
Web Crypto API
Uses crypto.getRandomValues() — the browser's cryptographically secure RNG, not the predictable Math.random(). The same source used in TLS and encryption.
🚫
Zero Data Transmission
Your password is generated locally and never sent anywhere. No server, no logs, no analytics on your passwords. What happens in your browser stays in your browser.
📊
Entropy Analysis
Real-time entropy score in bits. Entropy = log₂(pool_size^length). You can see exactly how your settings translate to actual cryptographic strength.
Charset Guarantee
At least one character from every enabled set is guaranteed — so if you enable symbols, you always get at least one symbol. No "technically valid" passwords missing required character types.
📋
Bulk Generation
Generate up to 100 passwords at once using your current settings. Useful for seeding test data, generating one-time codes, or creating multiple account passwords in one go.
🕐
Password History
The last 20 generated passwords are stored locally in your browser session. Restore any previous password or copy it again if you need it — helpful when switching between options.
👁️
Blur / Hide Mode
Toggle the password display to blur the text — useful when generating passwords in public, over screen share, or any time someone else might see your screen.
⚙️
Fine-Grained Control
Exclude specific characters your target site doesn't allow. No-duplicates and no-sequential modes for environments with strict password policies.

Frequently Asked Questions

Yes, as long as the tool generates the password locally using a cryptographically secure source of randomness and never transmits it. This generator uses the Web Crypto API (crypto.getRandomValues) which is standardized, cryptographically secure, and runs entirely in your browser. The password is never sent to any server, stored in a database, or logged anywhere. You can verify this by turning off your internet connection before generating — it still works because everything happens locally.

A weak password is short, uses only common characters, follows predictable patterns (like "Password1!"), or appears in breach databases. A strong password is long, random, uses a wide character set, and has no connection to anything about you. The key insight is that length matters more than complexity — a 20-character lowercase password is harder to crack than an 8-character password with special characters. The strongest passwords combine both: long AND diverse character sets.

Yes, absolutely. When a website gets breached, attackers use the leaked passwords in "credential stuffing" attacks on other sites — trying the same email/password on hundreds of other services automatically. If you reuse passwords, one breach compromises multiple accounts. The practical solution is to use a password manager (Bitwarden, 1Password, KeePass) to store a unique strong password for every account. Generate one here, save it in your manager, and move on. You only need to remember one master password.

Ambiguous characters (O, 0, l, 1, I) look similar in many fonts and are easy to confuse when reading a password printed on paper, written on a sticky note, or shown in a screen share. If you need to communicate a password verbally or write it down, enabling "Exclude ambiguous" means you'll never have to say "that's the number one, not lowercase L." For passwords stored in a password manager that you'll always copy-paste, this setting doesn't matter.

Entropy (in bits) measures how many random possibilities your password has. Higher entropy = more guesses required = harder to crack. The formula is: entropy = length × log₂(pool_size). For example, 16 characters from a pool of 94 (upper + lower + digits + symbols) gives about 105 bits of entropy. General guidelines: 40 bits = weak, 60 bits = acceptable, 80 bits = strong, 100+ bits = very strong. Modern computers can attempt billions of guesses per second against hashed passwords, so 60+ bits is the practical minimum for anything important.

No-duplicates mode reduces the entropy slightly because it constrains the possibility space — each character can only appear once. For long passwords this effect is negligible, but for short passwords it can meaningfully weaken the password. For example, a 16-character password from a 94-character pool with no duplicates has slightly fewer possible combinations than one with duplicates allowed. Only use no-duplicates if you have a specific policy requirement — it's not a security improvement.

1. Copy it immediately with the Copy button. 2. Paste it directly into a password manager (Bitwarden, 1Password, KeePass, etc.) — don't type it somewhere else first. 3. Use it on the target website. 4. Never write it on paper or in a plaintext file. If you must write it down, store it in a physically secure location. Never send a password over email, SMS, or chat. If you accidentally share it, change it immediately.

Yes. Set the length to 32, 48, or 64 characters, enable all character sets (or just lowercase + digits for URL-safe tokens), and generate. The Web Crypto API source makes this suitable for generating application secrets, session tokens, API keys, salt values, and other security-sensitive strings. For hex-format tokens specifically, you can limit to digits + a-f characters by enabling only lowercase and digits, then excluding g-z. For base64-compatible secrets, all alphanumeric characters plus + and / work well.

Related Tools

View all →