UUID v4 Generator (Random)
Generate RFC 4122 compliant UUID v4 identifiers in your browser. 122 bits of cryptographic entropy — safe for database keys, idempotency tokens, and public URLs.
Click Generate to create UUIDs
Cryptographically random, 122 bits of entropy. The safe default.
About UUID v4
UUID version 4 is a 128-bit identifier with 122 bits of pure random data. This generator calls crypto.randomUUID() directly (falling back to crypto.getRandomValues on older browsers), so every byte comes from your operating system's cryptographically secure random source — the same pool TLS keys and password managers draw from. Nothing weaker, no Math.random fallback. Why v4 is the pragmatic default for nearly every use case: the collision probability after generating 2.7 × 10^18 UUIDs is still under one-in-a-billion. You will run out of storage before you run out of v4 space. Unlike auto-increment integers, a v4 UUID leaks nothing about creation order, total row count, or generator identity — safe to expose in URLs, APIs, and share links. Independent services can mint v4 IDs concurrently without coordination, which is why every major distributed system defaults to it. The output format is lowercase, hyphenated, and strictly RFC 4122-compliant: the 13th character is always 4 (the version nibble) and the 17th is always 8, 9, a, or b (the variant marker). Pipes cleanly into Postgres uuid columns (via gen_random_uuid or your app layer), Node.js crypto APIs, .NET Guid parsers, and every UUID library that validates version bits.
Features
- Generate cryptographically random UUID v4 identifiers
- Create single or bulk UUIDs at once
- Copy individual or all UUIDs to clipboard
- Compliant with RFC 4122 standard
How to Use
- Click "Generate" to create a new UUID
- Set the quantity for bulk generation
- Click any UUID to copy it to your clipboard
- Use the generated UUIDs in your applications
Frequently Asked Questions
When should I use v4 over v7?
Use v4 when you need opaque, non-time-ordered IDs — magic links, session tokens, public resource IDs where you don't want to leak creation order. Use v7 when inserting many rows into an indexed column and database insert performance matters.
Is Math.random() good enough for UUID v4?
No. Math.random() is a PRNG with limited state and predictable output — not cryptographically secure. An attacker who sees a few of your "UUIDs" can predict the next ones. Always use crypto.randomUUID() or crypto.getRandomValues(), which pull from the OS CSPRNG.
Can two services generate the same v4 UUID?
Mathematically possible but astronomically unlikely. With 122 random bits, you'd need to generate ~2.7 × 10^18 UUIDs globally before the birthday paradox pushes collision probability past 50%. Every service can mint IDs without coordinating — that's the whole point.
Does a v4 UUID reveal anything about my system?
No — that's its main advantage over sequential integers or UUID v1. v4 contains no timestamp, no MAC address, no generator identity. Perfect for public-facing IDs where you don't want to leak traffic volume, creation patterns, or which server minted the ID.
Other UUID Generator variants
UUID v7
Generate RFC 9562 UUID v7 identifiers. Time-ordered UUIDs that keep database b-tree indexes tight and make bulk inserts much faster than v4.
UUID v1
Generate RFC 4122 version 1 UUIDs: Gregorian 100-ns timestamp plus random node ID. For legacy systems, Cassandra TIMEUUIDs, and older Windows COM code.
Nil UUID
The nil UUID, all zeros. A spec-defined sentinel for UUID-shaped placeholder values — never confused with a real generated UUID.
GUID (Microsoft)
Generate GUIDs in Microsoft format — uppercase UUID v4 wrapped in braces. For .NET Guid parsers, SQL Server, registry entries, and Windows tooling.