Generate ULIDs: 26-character IDs made of a millisecond timestamp and 80 random bits in Crockford Base32. Create up to 10,000 at once, in increasing order. ULIDs sort by creation time as plain strings and fit in the same 128 bits as a UUID.
ULID stands for Universally Unique Lexicographically Sortable Identifier. Like a UUID it is 128 bits long, but it is written as 26 characters in Crockford's Base32 instead of 36 hex characters with hyphens. The first 48 bits are a Unix timestamp in milliseconds and the remaining 80 bits are random, so ULIDs sorted as text are also sorted by the time they were created.
ulid.txt, or view them full screen with the buttons in the corner.ulid library) 01KDVDNA00 HQ9SFE6DP2TZQMCK
|----------| |----------------|
Timestamp Randomness
10 chars 16 chars
48 bits 80 bits
The timestamp 01KDVDNA00 above is 2026-01-01 00:00:00 UTC. Three ULIDs generated in the same millisecond look like this:
01M40TQZ01HQ9SFE6DP2TZQMCK
01M40TQZ01HQ9SFE6DP2TZQMCM
01M40TQZ01HQ9SFE6DP2TZQMCN
Crockford's Base32 uses the digits 0-9 and the letters A-Z except I, L, O and U, which avoids characters that are easy to confuse. ULIDs are output in uppercase.
Both combine a millisecond timestamp with random bits and sort by time. Choose ULID if you want a shorter, URL-friendly string; choose UUID v7 if your database, API or tooling expects the standard UUID format.
Yes. Both are 128 bits, so a ULID can be converted to the 16-byte binary form and stored as a UUID. This tool outputs the Base32 text form only; it does not convert between the two.
The 48-bit timestamp lasts until the year 10889.
No. They are generated in your browser and never uploaded.