Generate, validate, and decode UUIDs (v1, v4, v5, v7). Support for all modern UUID versions, bulk generation, timestamp extraction, namespace-based generation, and multiple export formats. 100% client-side processing with zero rate limits.
The most comprehensive UUID tool available: Generate all modern UUID versions (v1, v4, v5, v7), validate existing UUIDs, decode timestamps, and export in multiple formats. Perfect for developers working with distributed systems, databases, APIs, and microservices. 100% client-side processing with zero rate limits.
UUID v4 (Random) - Recommended for Most Use Cases
Cryptographically secure random UUIDs. Best for general-purpose unique identifiers where sortability isn't required. Uses Web Crypto API for high-quality randomness. No timestamp or MAC address information embedded.
UUID v7 (Time-Sortable) - Modern Standard for Databases
Combines timestamp with random data for sortable UUIDs. Recommended by RFC 9562 as the modern replacement for v1. Better database indexing performance than v4, privacy-friendly (no MAC address). Perfect for database primary keys that benefit from time-ordering.
UUID v1 (Timestamp-Based) - Legacy Support
Classic time-ordered UUIDs containing timestamp and MAC address (simulated for privacy). Use when you need compatibility with systems expecting v1 UUIDs. Consider v7 for new implementations.
UUID v5 (Namespace SHA-1) - Deterministic Generation
Generate the same UUID from the same namespace + name combination. Uses SHA-1 hashing for reproducibility. Perfect for creating consistent IDs across systems. Supports DNS, URL, OID, and X.500 namespaces.
Nil UUID - Special Zero Value
The standard null UUID (all zeros): 00000000-0000-0000-0000-000000000000. Use as a placeholder or default value in databases and APIs.
Generate UUIDs (Tab 1)
Decode & Validate UUIDs (Tab 2)
Keyboard Shortcuts
Database Primary Keys - Use v7 for New Systems
For new database schemas, use UUID v7 for primary keys. They're time-sortable for better index performance while maintaining uniqueness across distributed systems. Each microservice can generate its own IDs without coordination. For legacy systems, v1 provides compatibility. Avoid v4 for high-volume tables where index locality matters.
API Tokens and Session IDs - Use v4
Generate unpredictable session identifiers and API tokens using UUID v4. The random nature prevents guessing attacks. Perfect for authentication tokens, API keys, and session management. Store the UUID as the identifier and never expose without proper authentication.
Deterministic IDs Across Systems - Use v5
When you need the same ID for the same resource across multiple systems, use UUID v5. For example, generate consistent user IDs from email addresses: namespace=URL, [email protected]. This ensures the same input always produces the same UUID across all systems.
Event Tracking and Debugging - Use v1 or v7 with Decoder
Use timestamp-based UUIDs (v1 or v7) for event IDs, then use the decoder to extract creation timestamps during debugging. This helps trace when events occurred without storing separate timestamps.
Idempotency Keys - Use v4
Use random UUIDs as idempotency keys in API requests to prevent duplicate operations. If a client retries with the same UUID, your server can detect it's the same operation. Critical for payment systems and transactions.
Q: Which UUID version should I use?
A: Use UUID v7 for database primary keys (time-sortable, modern standard), v4 for API tokens and session IDs (random, unpredictable), v5 for deterministic IDs that must be consistent across systems, v1 for legacy compatibility, and Nil for null/default values. Most new applications should default to v7 for databases and v4 for everything else.
Q: What's UUID v7 and why is it better than v1?
A: UUID v7 is the modern replacement for v1, recommended by RFC 9562. Both are time-sortable, but v7 uses random data instead of MAC addresses for better privacy. v7 provides better database index locality (faster queries) while being privacy-friendly. Use v7 for new systems; only use v1 if you need legacy compatibility.
Q: How do I generate the same UUID every time (deterministic)?
A: Use UUID v5 with a namespace and name. The same namespace + name combination always produces the same UUID. For example, to generate a user ID from an email: select "URL" namespace, enter "[email protected]" as the name. Every system that generates a v5 UUID with these inputs will get the same result.
Q: How unique are UUIDs? Can they collide?
A: UUIDs have 128-bit identifiers (2^128 = 340 undecillion possibilities). Collision probability is astronomically low—essentially zero for practical purposes. Even generating a billion UUIDs per second for 85 years, collision chance is less than 1 in a billion. You can safely assume UUIDs are unique.
Q: What's the difference between UUID and GUID?
A: They're the same thing. GUID (Globally Unique Identifier) is Microsoft's term for UUID (Universally Unique Identifier). Both follow RFC 4122 specification and have identical structure. The terms are interchangeable.
Q: Can I extract the timestamp from a UUID?
A: Yes, for UUID v1 and v7 only. Use the "Decode & Validate" tab to extract creation timestamps from time-based UUIDs. v4 and v5 UUIDs don't contain timestamp information.
Q: Should I use UUIDs as database primary keys?
A: For distributed systems and microservices, yes—use UUID v7. For single-database applications with high write volume, sequential integers may be faster. Modern databases handle UUID indexes efficiently. Use BINARY(16) storage for best performance (saves 20 bytes vs CHAR(36)).
Q: What's the UUID format structure?
A: Standard format: xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx (8-4-4-4-12 hex digits). M indicates version (1, 4, 5, or 7). N indicates variant (RFC 4122 = 8, 9, A, or B). Total: 128 bits = 16 bytes = 32 hex digits + 4 hyphens = 36 characters.
UUID v4: All bits random except version (4) and variant. Cryptographically secure via Web Crypto API.
UUID v7: 48-bit timestamp (milliseconds) + random data. Time-sortable for database indexes.
UUID v1: 60-bit timestamp (100-nanosecond intervals since 1582) + clock sequence + random node.
UUID v5: SHA-1 hash of namespace UUID + name. Deterministic and reproducible.