ID generator
Generate UUID v4, nanoid, or ULID strings. Pick how many, copy the list, check collision odds.
Generator
Output
Collision probability
UUID v4 has 122 random bits (6 bits are fixed for version and variant). That is about 5.3 × 1036 possible values.
You would need to generate billions of IDs per second for trillions of years before a 1% collision chance. In practice, collisions are not something you plan around.
nanoid uses a 64-character alphabet. At size, each ID has bits of entropy.
At that rate, ~1% collision probability after (birthday-bound approximation).
ULIDs are 128-bit: 48 bits of millisecond timestamp + 80 bits of randomness. They sort lexicographically by creation time.
This generator increments the random part when two IDs are created in the same millisecond (monotonic within a session), matching the spec's intent for single-process generation.
About this tool
Three ID styles developers reach for constantly. UUID v4 is built into modern browsers via crypto.randomUUID(). nanoid is shorter and URL-friendly when you need compact tokens in URLs or logs. ULID adds a timestamp prefix so IDs sort by creation time in databases.
Reach for UUID when you want a standard everyone recognizes. Tune nanoid size if you generate many IDs per hour — the collision panel estimates when duplicates become plausible. ULIDs help when insert order should match creation order without a separate created_at column.
All generation uses crypto.getRandomValues in your browser. Nothing is sent anywhere.