UUID & ULID Generator Online
This free identifier generator creates random UUIDs and ULIDs in your browser — one at a time or in bulk. It supports version 4 (random) UUIDs, time-ordered version 7 UUIDs, ULIDs, and the special NIL UUID. These identifiers are the standard way to give database rows, API resources, distributed events, and uploaded files an identifier that is unique without any central coordination.
Randomness comes from your browser's cryptographically secure generator (crypto.randomUUID() and crypto.getRandomValues()), so the identifiers are standards-compliant and unpredictable. Nothing is generated on or sent to a server.
How to use UUID Generator
- Choose a version: v4 (random), v7 (time-ordered), ULID, or NIL.
- Set how many you need (up to 1000; NIL is capped at 100).
- Optionally format the output: uppercase, remove hyphens, or wrap each value in braces.
- Press Generate, then copy the results — one identifier per line.
What is a version 4 UUID?
A UUID is a 128-bit value written as 36 characters: 8-4-4-4-12 hexadecimal digits separated by hyphens. Version 4 UUIDs are generated from random data — 122 random bits plus 6 fixed version/variant bits. The chance of two independently generated v4 UUIDs colliding is so small (you would need to generate billions per second for decades) that they are treated as unique in practice.
3f2b8c1e-9d4a-4f6b-a1c2-7e8d90f1b234
Version 7 UUIDs and ULIDs (time-ordered)
Version 4 UUIDs are fully random, which makes them unguessable but scatters them randomly across a database index. Version 7 UUIDs and ULIDs instead begin with a millisecond timestamp, so identifiers generated later sort after earlier ones. This time-ordering keeps clustered indexes compact and makes the identifiers roughly sortable by creation time, while the remaining bits stay random for uniqueness.
A version 7 UUID uses the standard 36-character UUID format (RFC 9562) with a 48-bit timestamp; a ULID is a more compact 26-character string in Crockford Base32 that combines a 48-bit timestamp with 80 bits of randomness. Choose v7 when you need UUID compatibility, or ULID when you want a shorter, URL-friendly identifier.
v7: 01920a1e-7e40-7c9a-b3d2-8f4c1e5a6b7c ULID: 01J9V8Z9M0QK3RT7YB2C4D5E6F
Related terminology
- UUID / GUID
- Universally (or Globally) Unique Identifier — the same 128-bit format; GUID is Microsoft's name for it.
- Version 4
- The UUID variant generated purely from random numbers, as opposed to v1 (timestamp + MAC address) or v5 (name hashing).
- Collision
- Two generators producing the same identifier — astronomically unlikely with v4's 122 random bits.
- RFC 4122
- The specification that defines UUID formats, versions, and encoding.
- Version 7 / ULID
- Time-ordered identifiers whose leading bits encode a millisecond timestamp, so they sort by creation time. v7 is a UUID (RFC 9562); ULID is a 26-character Crockford Base32 string.
Frequently asked questions
- Are these UUIDs cryptographically random?
- Yes. The tool calls the browser's crypto.randomUUID(), which uses a cryptographically secure random number generator as required by the specification.
- Can two generated UUIDs ever be the same?
- In theory yes, in practice no — with 122 random bits, the probability of a duplicate is negligible even across billions of UUIDs. That is exactly why UUIDs exist.
- What is the difference between UUID v1 and v4?
- v1 embeds a timestamp and machine identifier (traceable but time-ordered); v4 is pure randomness (private and simple). v4 is the right default for most applications.
- Should I use UUIDs as database primary keys?
- They are excellent for distributed systems and public APIs because they cannot be guessed or enumerated. Random v4 keys can fragment clustered indexes at very high write volumes.
- What is the difference between UUID v7 and ULID?
- Both are time-ordered: they start with a millisecond timestamp and end in random bits, so they sort by creation time. A v7 UUID keeps the standard 36-character UUID format, while a ULID is a shorter 26-character Crockford Base32 string that is case-insensitive and URL-friendly.