ULID & NanoID Generator
Generates time-sortable ULIDs and short, URL-friendly NanoIDs in bulk. Both use the browser's cryptographic random source. If you need a standard-format identifier instead, try the UUID Generator as well.
🔒 Runs in your browser · Your data is never sent to a server
Notes
- A ULID is a 10-character timestamp (milliseconds) followed by 16 random characters. IDs from one run share the same timestamp and increment the random part by one, so they stay in order when sorted.
- A ULID contains its creation time in plain form. Do not use it where the creation time should stay private.
- The shorter a NanoID is, the more likely collisions become. If you shorten the length or alphabet, make sure you still have enough uniqueness.
- For passwords or authentication tokens, use a dedicated tool such as the Password Generator, where you can check character types and strength.
Glossary
ULID
Short for Universally Unique Lexicographically Sortable Identifier. A 26-character ID made of a timestamp and random data; sorting as strings gives creation order, which suits database primary keys.
NanoID
A random ID built only from URL-safe characters. The default is 21 characters, and both the length and the alphabet can be customized.
Crockford Base32
The alphabet used by ULID: 32 characters made of digits and uppercase letters, excluding the easily confused I, L, O, and U.
FAQ
How is a ULID different from a UUID?
A v4 UUID is fully random, while a ULID starts with a timestamp, so sorting the strings gives creation order. It is also shorter (26 characters vs 36), and tends to keep database indexes more efficient when used as a primary key.
Can the creation time be read from a ULID?
Yes. The first 10 characters encode the creation time in milliseconds, so anyone can decode it. Avoid ULIDs where the creation time should stay private.
What length should a NanoID be?
The default of 21 characters from a 64-character alphabet has collision resistance comparable to a v4 UUID. Shorter IDs collide more often, so confirm the length is enough for the number of IDs you need before changing it.
Can I use non-ASCII characters or emoji in the alphabet?
Yes. You can specify 2 to 256 distinct characters, and characters outside the BMP such as emoji count as one character. They may be harder to handle in URLs or databases, though.
Share this page
