Generate ULIDs – sortable unique identifiers
A ULID generator creates Universally Unique Lexicographically Sortable Identifiers: unique values that, unlike a purely random UUID, embed a timestamp and can therefore be sorted in chronological order. A ULID combines 48 bits of time with 80 bits of randomness, is 26 characters long and URL-safe. This tool produces them directly in the browser and is aimed at developers who need sortable keys without a separate timestamp index.
Common use cases
- Sortable records: Use ULIDs as primary keys whose order already reflects creation time, which is handy for logs and events.
- Distributed IDs without coordination: Generate low-collision, time-ordered identifiers across several services without maintaining a central sequence.
- Readable references: Use the compact Crockford Base32 form in URLs or file names without any special characters.
- Time-aware file names: Name uploads or exports so that they sort chronologically on their own.
How to create a ULID
- 1 Generate a new ULID based on the current time with one click.
- 2 Enable monotonic mode when you need strictly increasing values within the same millisecond.
- 3 Use the decoder to reveal the timestamp and random part of an existing ULID.
- 4 Copy individual values or generate a whole list at once.
Why ULIDs instead of UUIDs?
ULIDs combine the uniqueness of a UUID with the natural sortability of a timestamp. As a result, records can be ordered chronologically by their key alone, which eases the load on database indexes. This tool also shows the anatomy of each ID and supports monotonic mode and bulk generation. If you do not need chronological order and prefer maximum randomness, the UUID generator is the right alternative. Because the time part is openly visible, avoid ULIDs where the creation time must stay secret.