UUID Generator
Generate random (v4) or time-ordered (v7) UUIDs, one or thousands at a time. They're built in your browser from a cryptographically secure random source — nothing is generated on or sent to a server.
🔒 Generated locally — nothing is uploadedRelated tools
A UUID (universally unique identifier), also called a GUID, is a 128-bit value written as 32 hex digits in the pattern 8-4-4-4-12. Its whole point is that you can generate one anywhere, at any time, without coordinating with a central server and still be safe assuming it will never collide with another.
UUID v4 — random
Version 4 is 122 random bits (6 bits are fixed to mark the version and variant). This generator fills them from crypto.getRandomValues(), the browser's cryptographically secure RNG — the same source used for encryption keys — so the values are not predictable and not seeded from the clock. v4 is the right default for almost everything: API keys' companions, idempotency keys, correlation IDs, test fixtures.
UUID v7 — time-ordered
Version 7 puts a 48-bit millisecond Unix timestamp in the first half of the value and fills the rest with randomness. Because the timestamp is big-endian and comes first, v7 UUIDs sort chronologically as plain strings. That makes them a much better fit than v4 for database primary keys: new rows are appended near the end of the index instead of scattered through it, which keeps B-tree inserts cheap and range scans by creation time possible. The trade-off is that a v7 value reveals roughly when it was created.
The Nil UUID
The Nil UUID is all zeros: 00000000-0000-0000-0000-000000000000. It's a defined constant used as a placeholder or "no value" sentinel where a real UUID is expected but none applies yet.
Name-based UUIDs: v3 and v5
Versions 3 and 5 aren't random at all — they're deterministic, generated from a namespace UUID plus a name string (an MD5 hash for v3, SHA-1 for v5). Feed the same namespace and name in twice and you get the exact same UUID back both times. That makes them useful for turning an existing identifier — a URL, an email address, a filename — into a stable UUID for deduplication, without needing to look anything up or coordinate with another system: anyone hashing the same input with the same namespace arrives at the same result independently. This tool only generates v4 and v7 since those cover the vast majority of everyday needs (a fresh, unpredictable identifier); v3/v5 are worth knowing about specifically for the case where you need the same input to always map to the same UUID.
Frequently asked questions
Are these UUIDs generated on a server?
No. Generation happens entirely in your browser using its built-in secure random number generator. Nothing is requested from or sent to a server — you can generate offline.
Can two of these ever collide?
For v4, the probability is negligible: you would need to generate on the order of a billion UUIDs per second for about 85 years to reach a 50% chance of a single collision. v7 collisions require two values in the same millisecond with the same 74 random bits — also negligible.
What's the difference between a UUID and a GUID?
None in practice. "GUID" is Microsoft's name for the same 128-bit identifier. Some Microsoft tooling formats it in braces ({…}) and sometimes uppercase, which is why those options are here.
Why is there no v1?
Version 1 embeds the machine's MAC address and a high-resolution timestamp, which leaks hardware identity and isn't reproducible in a browser sandbox. v7 gives you the useful part (time ordering) without the MAC address, so it's the better modern choice.
Are UUIDs safe to use in URLs?
Yes for v4 — a random v4 UUID reveals nothing about when or how it was created, so it's a reasonable public identifier for a resource URL. A v7 UUID does encode its creation time, which is usually harmless but worth knowing if you specifically don't want that timing exposed publicly.
Why not just use auto-incrementing integers as IDs?
Sequential integers leak information (a competitor can estimate how many orders or users you have by watching the numbers climb) and can't be generated safely by two independent systems at once without coordination. A UUID needs no central counter and no coordination — any client or server can mint one on its own and it will not collide with one generated anywhere else.