Free Password Generator — Secure & Private
Generate strong, secure passwords for any account — from 4 to 128 characters with full control over character types, ambiguous character exclusion, and custom blocked characters. Every password is built client-side using the Web Crypto API's crypto.getRandomValues(), so nothing ever leaves your browser.
Password requirements
Why use our Password Generator?
Every password here is built by the Web Crypto API's crypto.getRandomValues(), which samples characters from a pool constructed from your selected options — uppercase, lowercase, digits, and symbols. Unlike Math.random()-based generators, crypto.getRandomValues() draws entropy from the operating system's hardware-backed entropy pool, making each character selection genuinely unpredictable. The sampling algorithm also guarantees that no enabled character set is accidentally excluded from the output, giving you both cryptographic strength and policy compliance in a single click.
Cryptographically secure: Uses crypto.getRandomValues() — the same Web Crypto API standard browsers use for TLS key generation — ensuring every character is drawn from a genuine hardware-backed entropy source, not a clock-seeded algorithm.
100% private and local: Your passwords are generated entirely within your browser using JavaScript and never transmitted to any server, logged, or stored — making it safe to generate credentials for banking, email, and other sensitive accounts.
Fully customizable output: Control length from 4 to 128 characters, toggle uppercase, lowercase, numbers, and symbols, exclude ambiguous characters like 0/O/l/1/I, or block specific characters your target site rejects.
Passphrase mode with custom word pools: Generate memorable, high-entropy passphrases using a random word-selection algorithm — optionally from your own word list — with configurable separators, capitalization, and an appended number.
Live strength meter with entropy readout: See entropy bits (length × log₂ charset size) and a strength rating update in real time as you adjust settings, so you always know exactly how resistant your password is to brute-force attacks.
How to Generate a Strong Password
Choose your length: use the slider or number input — we recommend at least 16 characters for everyday accounts and 24+ for banking or email.
Select your character types: enabling uppercase, lowercase, numbers, and symbols each multiplies the search space, dramatically increasing the password's resistance to attack.
Click Generate: to instantly create a new cryptographically random password with your current settings — repeat as many times as you like.
Click Copy: to save the password to your clipboard, then paste it directly into your new account registration form or password manager.