Random Password Generator
Generate a secure random password with a custom length and character set.
Select at least one character type.
Usage examples
Creating a strong password for a new account
Not sure what password to use when signing up? Instantly generate one 16+ characters long that includes uppercase, lowercase, numbers, and symbols.
Avoiding confusing characters when copying by hand
Need to write down or read out a Wi-Fi password? Turn on "Exclude ambiguous characters" to skip easily-confused characters like I, l, 1, O, and 0.
Matching a site's specific password policy
Site doesn't allow symbols or has a length limit? Adjust the length slider and toggle character types to match that site's requirements.
Frequently asked questions
Is the generated password sent to a server or saved anywhere?
No. It's generated entirely in your browser, never sent to a server, and disappears when you leave or reload the page. For security, it's not stored anywhere — not even in local storage.
How is the randomness generated?
Instead of the regular Math.random(), it uses your browser's cryptographically secure random number generator, crypto.getRandomValues().
Are all the character types I select guaranteed to appear?
Yes. As long as the length allows it, at least one character from each selected type (uppercase, lowercase, numbers, symbols) is included, and the order is then shuffled randomly.
How is the strength indicator calculated?
It estimates the password's information entropy (in bits) based on its length and the number of character types used, then shows it as Weak/Fair/Strong/Very strong. Actual security also depends on other factors, like a service's login attempt limits.