UUID generator · formatULID — a sortable identifier
A ULID is 26 Crockford Base32 characters: the first 10 are time in milliseconds, the other 16 are 80 random bits. Strings sort in creation order like UUID v7, and the alphabet without I, L, O and U survives being read aloud or copied by hand.
Generator ULID
the format is set — all settings and the checker are in the full generatorHow it is built: ULID
When to use it
- A key that is handy to sort by its own value — events, logs, queues.
- Where 36 UUID characters are too long but time inside is needed.
- If the database stores IDs in a uuid column, v7 is better: a ULID will not fit without conversion.
How it differs from its neighbours
Against UUID v7: they are built almost alike — 48 bits of time first, randomness after — but v7 is standardised in RFC 9562 while ULID is a separate spec. ULID is shorter to write (26 versus 36) and reads without letter confusion. Against NanoID: ULID sorts and reveals the creation time, NanoID does neither. Our generator is monotonic: a batch within one millisecond comes out ascending.
Format comparison
Frequently asked questions
Updated