Random String Generator
Generate random strings of any length from the character sets you choose — lowercase, uppercase, digits and symbols. Free, instant and private: every string is created in your browser using cryptographic randomness and never leaves your device.
Leave empty to use the character sets above. If you type characters here, strings are drawn only from exactly those characters.
How to use the random string generator
- Set the length and quantity. Choose how many characters each string should have and how many strings you want to generate at once.
- Pick your character sets. Turn on lowercase, uppercase, digits and symbols as needed, or paste an exact set of characters into the custom field to control every allowed character.
- Generate and copy. Press Generate strings to create the list, then copy everything to your clipboard or download it as a text file.
About this tool
This free random string generator produces unpredictable sequences of characters for a wide range of jobs: strong passwords and passphrase parts, API keys, session tokens, database salts, random file names, coupon and voucher codes, unique test and mock data, and placeholder identifiers for development. You control the exact alphabet — mix letters, numbers and punctuation, exclude look-alike characters that are easy to misread, or supply your own custom character set for full control over the output.
Every string is built with your browser's cryptographically secure random number generator (crypto.getRandomValues) using rejection sampling, so each character is drawn with an even, unbiased probability. Nothing is uploaded, logged or stored: the generation happens entirely on your device, the tool works offline once loaded, and your strings disappear as soon as you close or reload the page.
Frequently asked questions
Are the generated strings cryptographically secure?
Yes. Characters are chosen with crypto.getRandomValues, the same secure generator browsers use for cryptography, combined with rejection sampling to remove modulo bias. That makes the output suitable for passwords, tokens and keys, unlike Math.random(), which is not designed for security.
Can I use this to create passwords?
Absolutely. Turn on the character sets you want, keep "include at least one of each selected set" enabled so the string always contains a mix, and pick a length of 16 or more. The entropy readout shows roughly how many bits of randomness each string contains — higher is harder to guess.
What does "exclude ambiguous characters" do?
It removes characters that look alike in many fonts — the digit 0 and letter O, the digit 1 and letters l and I. Excluding them makes strings easier to read aloud, type by hand or print without mistakes, which is helpful for codes people copy manually.
Is any of this sent to a server?
No. The entire tool runs locally in your browser with JavaScript. Your generated strings are never transmitted, saved or seen by anyone else, so it is safe for secrets and confidential values.