UUID Generator
Generate UUID v1, v3, v4, v5, v7, NIL, MAX, and ULID in your browser. Bulk-generate up to 10,000 at once.
A UUID is a 128-bit identifier, usually written as 32 hex digits with dashes. The standard (RFC 9562) defines several versions for different needs; this generator covers all the commonly-used ones plus ULID.
v4 is pure randomness — the default for primary keys and tokens. v7 is time-ordered: each ID starts with a millisecond timestamp, so they sort chronologically and behave well as database index keys. v1 is the legacy time-based form. v3 (MD5) and v5 (SHA-1) hash a namespace + name to produce deterministic UUIDs — handy when the same input should always map to the same ID. NIL and MAX are sentinel values (all zeros and all ones). ULID is an alternative spec: 26 Crockford-base32 characters, also time-ordered, and URL-safe without dashes.
All random values come from your browser's cryptographically secure random source — the same one used for TLS — so they're safe for security tokens and database keys. Everything is generated locally; nothing is sent over the network. Bulk-generate up to 10,000 at once.
Example
Input
1 (v4) Output
550e8400-e29b-41d4-a716-446655440000 Frequently asked questions
Which version should I use for database primary keys?
v7. The timestamp prefix means new IDs sort to the end of the index, avoiding the page-split storm that v4 causes on B-tree indexes. If you can't use v7, ULID has the same property in a shorter form.
Are these UUIDs safe to use for security tokens?
Yes. v4 and the random parts of v1, v7, and ULID all come from the browser's cryptographically secure random source — the same one used for TLS keys.
When should I use v3 or v5 (name-based)?
When you need a deterministic UUID: the same namespace + name always produces the same ID. Common uses are deriving stable IDs from URLs, file paths, or external system identifiers. Prefer v5 (SHA-1) over v3 (MD5) for new code.
What is the NIL / MAX UUID for?
NIL (all zeros) and MAX (all ones) are reserved sentinel values. Use them as 'unset' or 'unknown' placeholders in systems where null is awkward — never as real IDs.
ULID vs UUID v7 — what's the difference?
Both are 128-bit time-ordered identifiers with a millisecond timestamp prefix. UUID v7 uses the standard 36-character hex-dashed form; ULID uses a 26-character Crockford-base32 form (case-insensitive, no ambiguous I/L/O/U). Pick v7 if you need RFC compatibility, ULID if you want a shorter URL-safe representation.