UUID Generator & Analyzer
Generate, validate, decode, analyze, compare, and understand UUIDs instantly. Full support for v1, v3, v4, v5, v6, v7, v8 plus ULID, NanoID, KSUID, Snowflake and CUID2 — with a built-in database ID advisor, performance benchmarks and language-specific code (Java, Spring Boot, JPA, Kotlin, JS/TS, Python, Go, Rust, C#, PHP).
RFC 9562 compliant
Crypto-secure
100% Free
Runs in your browser
550e8400-e29b-41d4-a716-446655440000
Quick definition. A UUID (Universally Unique Identifier) is a 128-bit value standardised by RFC 9562 that can be generated on any machine without coordination, with a collision probability so low it is treated as zero in practice. UUID v4 is fully random; UUID v7 prepends a Unix-millisecond timestamp so values sort chronologically and index efficiently in B-tree databases. For new systems, prefer UUID v7 as a primary key, UUID v4 for opaque public identifiers, and v3 / v5 when an ID must be deterministically derived from a name.
UUID Generator
—
Bulk UUID Generator
Click Generate to produce a batch.
—
Validator, Decoder & Timestamp Extractor
Valid
Version 7
Variant RFC 9562
Decoded fields
Bit layout
Format converter
UUID Comparator
—
Collision Probability
—
Entropy Analyzer
—
Distribution
—
Performance Analyzer
Insert performance, index locality and storage cost for the most common 128-bit identifier choices. Lower latency and tighter indexes win.
| Identifier | Size | Sortable | B-tree locality | Insert speed (relative) | Notes |
|---|---|---|---|---|---|
| UUID v4 | 128-bit | No | Poor (random) | 1.0× | Index fragmentation under write load |
| UUID v7 | 128-bit | Yes (ms) | Excellent | 2.8–4.2× | Drop-in replacement for v4 in PostgreSQL/MySQL |
| ULID | 128-bit / 26 char | Yes (ms) | Excellent | 2.6–3.8× | Crockford Base32, URL-safe |
| KSUID | 160-bit / 27 char | Yes (s) | Excellent | 2.5× | Larger, second-resolution timestamp |
| Snowflake | 64-bit | Yes (ms) | Excellent | 4.5× | Requires worker-id coordination |
| NanoID (21) | ~126-bit / 21 char | No | Poor | 1.1× | Smallest URL-safe random ID |
| CUID2 | ~24 char | No | Poor | 0.9× | Designed to resist enumeration |
Runs 100,000 generations of each format.
Format & Case Converter
Batch Processor & Search
—
Database ID Advisor
Pick a database and workload to get a recommendation.
Distributed ID Comparison
| Feature | UUID v4 | UUID v7 | ULID | KSUID | Snowflake | NanoID | CUID2 |
|---|---|---|---|---|---|---|---|
| Bits | 128 | 128 | 128 | 160 | 64 | ~126 | ~144 |
| String length | 36 | 36 | 26 | 27 | ≤19 | 21 | 24 |
| Time-ordered | No | Yes (ms) | Yes (ms) | Yes (s) | Yes (ms) | No | No |
| Sortable | No | Yes | Yes | Yes | Yes | No | No |
| URL-safe | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
| Coordination | None | None | None | None | Worker-id | None | None |
| RFC / Spec | RFC 9562 | RFC 9562 | ulid/spec | segmentio | ai/nanoid | paralleldrive/cuid2 | |
| Recommended for | Public opaque IDs | DB primary key | DB primary key | Event logs | Distributed services | Short URLs | Anti-enumeration |
ULID, NanoID, KSUID, Snowflake, CUID2
01JYABCD123XYZ...
Code for every stack
—
Saved History
Saved UUIDs appear here. Use the ★ Save button after generating.