ULID Generator
Sortable 26-character IDs with a time prefix.
About ULID Generator
A ULID generator that creates Universally Unique Lexicographically Sortable Identifiers in your browser, up to 1000 at once, and decodes any ULID's timestamp.
How to use
- A fresh ULID is shown when the page opens. Press Copy to take it, or New for another.
- In the Bulk panel enter how many you need (1 to 1000). The list updates as you type and has Copy and Download (
ulids.txt) buttons. - To find out when an existing ULID was made, paste it into Decode timestamp. The creation time appears as local time, ISO 8601 and Unix milliseconds.
What a ULID is
- 26 characters of Crockford Base32 (digits and uppercase letters without I, L, O and U), so it is URL-safe and unambiguous when read aloud.
- The first 10 characters encode a 48-bit Unix millisecond timestamp; the remaining 16 encode 80 random bits. That is 128 bits in total, the same size as a UUID.
- Because the timestamp comes first, sorting ULIDs as plain strings sorts them by creation time.
- The bulk list uses the monotonic variant, so IDs created in the same millisecond still sort in creation order. The single value uses plain
ulid(). - Decoding accepts lowercase input, ignores surrounding quotes and spaces, rejects anything that is not 26 Crockford Base32 characters, and only reads the timestamp; the random part has no meaning to recover.
Example
01ARZ3NDEKTSV4RRFFQ69G5FAV
→ Unix ms 1469922850259
→ ISO 8601 2016-07-30T23:54:10.259Z
Privacy
Generation and decoding run in the page. No request is made, and nothing is stored.
Frequently asked questions
- What is a ULID?
- A ULID (Universally Unique Lexicographically Sortable Identifier) is a 128-bit ID written as 26 Crockford Base32 characters: a 48-bit millisecond timestamp followed by 80 random bits. It is the same size as a UUID but sorts by creation time.
- What is the difference between a ULID and a UUID?
- Both are 128 bits. A ULID is 26 characters with no hyphens and sorts chronologically because its timestamp comes first; a UUID v4 is 36 characters and fully random. UUID v7 was later standardised to give UUIDs the same time-ordered property.
- How do I get the timestamp from a ULID?
- Decode the first 10 characters as Crockford Base32 to get the Unix time in milliseconds. For 01ARZ3NDEKTSV4RRFFQ69G5FAV that is 1469922850259, which is 2016-07-30T23:54:10.259Z.
- Why does a ULID not use the letters I, L, O and U?
- Crockford Base32 drops them to avoid confusion with 1 and 0 and to prevent accidental words. The alphabet is 0–9 and A–Z minus those four, giving 32 symbols that are case-insensitive to read.