UUID Generator
Generate random UUIDs instantly — v1, v4, v7, and all 8 versions including UUIDv4, UUIDv7, GUID, and Nil. Bulk export, validate, and decode. Runs entirely in your browser — your random UUID generator with zero server calls.
Only need one version? Try the dedicated UUID v4 or UUID v7 generator.
The Basics
What is a UUID?
A UUID (Universally Unique Identifier), also called a GUID (Globally Unique Identifier) in Microsoft/.NET contexts, is a 128-bit number used to generate a unique, random ID for any resource — a database row, API object, session, or file — without any central authority handing out IDs. Any computer can independently generate a random UUID or random GUID and trust it will not collide with an identifier generated anywhere else.
Every UUID is 32 hexadecimal digits in an 8-4-4-4-12 pattern — 36 characters total:
RFC 4122 (2005) introduced versions 1–5. RFC 9562 (May 2024) superseded it and formally added v6, v7, and v8. You will also see the term GUID (Globally Unique Identifier) in Microsoft/.NET contexts — it is the same standard with a byte-order difference in some implementations.
Version Guide
Which UUID version should you use?
UUID v7 (UUIDv7) is now the recommended default for database primary keys — it embeds a millisecond Unix timestamp so IDs sort by creation time and index far more efficiently in a B-tree than a random ID. PostgreSQL 18 ships native uuidv7() support. UUID v4 (UUIDv4, uuid4) remains the right pick for opaque tokens, random IDs, and secrets where you do not want to expose creation time. Need a new GUID instead? Select v4 above — a GUID and a UUID v4 are the same 128-bit random identifier.
| Version | Based On | Time-Sortable | Best For | Status |
|---|---|---|---|---|
| v1 | Timestamp + MAC | Partially | Legacy distributed systems | Avoid (MAC leak) |
| v3 | Namespace + name (MD5) | No | Deterministic IDs, legacy | Use v5 instead |
| v4 | 122 bits random | No | Tokens, secrets, random IDs, GUIDs (UUIDv4, uuid4) | Recommended |
| v5 | Namespace + name (SHA-1) | No | Deterministic, reproducible IDs | Recommended |
| v6 | Reordered timestamp + random | Yes | v1 migration path | RFC 9562 |
| v7 | Unix ms timestamp + random | Yes | Database primary keys (UUIDv7, uuid7) | Recommended 2026 |
| v8 | Custom layout | Depends | Application-defined schemas | Experimental |
| Nil / Max | All-zero / all-F | — | Placeholders and testing | Special values |
v1–v5 defined in RFC 4122 (2005). v6, v7, and v8 defined in RFC 9562 (May 2024).
Use Cases
What are UUIDs used for?
UUIDs are the default unique ID generator solution anywhere a system needs collision-free random IDs without central coordination — the foundation of modern distributed software. A UUID is also the format behind every GUID, random ID, and randomly generated identifier across the web.
Database Primary Keys
Unique row identifiers that work across shards and replicas without a shared sequence generator.
API Resource IDs
REST and GraphQL object identifiers that do not expose sequential counts to clients.
Distributed Systems
Microservices and offline-first apps can generate IDs independently with no database round-trip.
Session Tracking
Session tokens, request IDs, and trace IDs across logs and distributed tracing systems.
File Naming
Collision-free names for uploads, generated assets, and object storage buckets.
Test & Mock Data
Collision-free placeholder IDs, random ID generator output for test suites, and database seed data.
Collision Probability
How unique is a UUID, really?
A UUID v4 has 122 bits of actual randomness. That gives roughly 5.3 × 10³⁶ possible values.
Practically speaking, treat v4 collisions as a non-event at any realistic scale. One important caveat: a UUID is not a cryptographic secret. It is built for uniqueness, not unguessability under attack. Never use a UUID alone as an auth token or password.
Developer Reference
Generate a UUID in your language
Every major language has a native implementation to get a UUID, create a random ID, or build a unique ID generator into your own app:
This Online UUID Generator Runs Entirely in Your Browser
Every UUID produced here is created client-side using your browser’s built-in crypto.getRandomValues(). Nothing is transmitted anywhere. No UUIDs are logged, stored, or sent to any server. No account required. Open your browser’s Network tab and check for yourself.
FAQ
Frequently asked questions
Explore More Tools
Related UUID & GUID Tools
Need something specific? Each tool below is purpose-built for a distinct use case — from GUID generation for .NET developers to bulk exports for database seeding.