UUID / ULID
Generate v4, v7, and ULIDs — or paste any id to decode it.
Generate v4, v7, and ULIDs — or paste any id to decode it.
UUID v1, v6, v7, ULIDs, and snowflakes all embed a creation timestamp; v4 alone is fully random. The decoder recognizes each format, extracts the version and variant bits, and converts embedded timestamps to readable dates — including v1's Gregorian 100-nanosecond clock and the snowflake's epoch-relative milliseconds. Useful for answering "when was this record actually created?" from nothing but its id.
Generation and decoding both run in your browser with CSPRNG randomness. Ids from production systems can be pasted without them leaving the page.
v7 for database primary keys: its leading timestamp keeps inserts roughly ordered, which B-tree indexes love. v4 when you want no information leakage at all — it is pure randomness, revealing nothing about when or where it was made.
Same idea as UUIDv7 — 48-bit timestamp plus randomness — but encoded as 26 Crockford base32 characters: shorter, case-insensitive, lexicographically sortable as a plain string.
Snowflake ids (Twitter/X, Discord, and many internal systems) pack a millisecond timestamp, worker id, and sequence counter into 64 bits. The timestamp is relative to a service-specific epoch, so the decoder shows the creation time under both well-known epochs.
Randomness comes from crypto.getRandomValues, the browser’s CSPRNG — and generation happens locally, so no service sees or logs the ids you mint here.