UUID, ULID & Nano ID generator — offline
Cryptographically random identifiers generated on your device — never logged by any server.
Generate UUIDs offline, from your browser's own randomness
Identifiers generated by a website are identifiers that website has seen. For most throwaway uses that is harmless, but developers routinely generate IDs that become API keys, tenant identifiers, invitation tokens, or database primary keys in production — and those should not exist in a stranger's request log before they exist in your system.
Every value here comes from your browser's cryptographically secure random generator — crypto.randomUUID and crypto.getRandomValues — running on your device. There is no backend to log anything, and a Content-Security-Policy blocks third-party requests. Nobody else ever sees these values, and you can generate them with the network disconnected.
UUID v4 or v7: which to use
v4 is 122 bits of pure randomness. It is the safe default when an identifier must reveal nothing at all — no creation time, no ordering, no correlation between two IDs issued moments apart.
v7 (standardised in RFC 9562) begins with a millisecond timestamp and fills the rest with randomness. Because the leading bits increase over time, v7 values sort by creation order as plain strings. That is a significant practical advantage for database primary keys: random v4 keys scatter inserts across a B-tree index, fragmenting pages and hurting write performance, while time-ordered keys append near the end where the pages are already warm.
The trade-off is that a v7 identifier discloses roughly when it was created. Use v7 for internal primary keys, v4 for anything user-facing or security-sensitive.
ULID and Nano ID
- ULID — 26 characters in Crockford base32, also time-sortable. It is case-insensitive, avoids the letters that look like digits, and is noticeably friendlier than a UUID when a human has to read one aloud or type it from a screen.
- Nano ID — compact and URL-safe, the sensible pick for short links, public slugs, and anywhere a 36-character UUID would dominate the URL. Shorter means fewer random bits, so use it where the identifier is a lookup key rather than a secret.
Generate up to 1,000 at a time as a newline-separated list, which is what you want for seeding a test database or filling a fixture file. Related and equally local: password generator for secrets rather than identifiers, hash generator for deterministic fingerprints, and mock data generator for whole test records.
How to generate a UUID, ULID or Nano ID offline
- 1
Pick UUID v4/v7, sortable ULID, or compact Nano ID.
- 2
Choose how many you need (up to 1,000).
- 3
Generate and copy the list.
UUID / ULID / Nano ID — frequently asked questions
Are these UUIDs generated on a server?
No — they come from your browser's cryptographically secure random generator (crypto.randomUUID / getRandomValues). Nobody else ever sees them, which matters if you use them as secrets or database keys.
What's the difference between v4 and v7?
v4 is fully random. v7 (RFC 9562) starts with a millisecond timestamp, so IDs sort by creation time — friendlier for database indexes.
How many can I generate?
Up to 1,000 at a time, ready to copy as a newline-separated list.