Boneyard Tools

ULID Generator and Decoder

Generate ULIDs in your browser. A ULID is a 26-character, time-sortable identifier built from a 48-bit timestamp plus 80 random bits. Make a batch, copy it, or paste a ULID to read back the moment it was created.

How to generate and decode ULIDs

  1. Set how many ULIDs you need, from 1 up to 1000, and click Generate.
  2. Copy a single value or the whole list with one click.
  3. To inspect an existing ULID, paste it into the decoder to see its timestamp.

Examples

A single ULID

count: 1
01ARYZ6S410000000000000000

Decode a ULID to its timestamp

01ARYZ6S41XXXXXXXXXXXXXXXX
2016-07-30T22:36:16.385Z

Frequently asked questions

What is a ULID?

A ULID is a Universally Unique Lexicographically Sortable Identifier. It is 26 characters of Crockford base32: the first 10 encode a 48-bit millisecond timestamp and the last 16 encode 80 random bits.

ULID vs UUID: what is the difference?

Both are 128-bit unique IDs, but a ULID puts the creation time in its high bits, so ULIDs sort in time order as plain text. A UUID v4 is fully random with no ordering. ULIDs are also shorter (26 chars vs 36) and use a case-insensitive, URL-safe alphabet.

Why are ULIDs sortable?

The leading 48 bits are the millisecond timestamp, encoded most-significant-first. Because Crockford base32 keeps that ordering, sorting ULIDs as strings also sorts them by creation time, which is handy for database keys and logs.

What is Crockford base32 and why no I, L, O or U?

Crockford base32 uses the alphabet 0123456789ABCDEFGHJKMNPQRSTVWXYZ. It drops I, L, O and U to avoid confusion with 1, 0 and each other, which makes ULIDs easy to read aloud and type.

Can I turn a ULID back into a date?

Yes. The decoder reads the first 10 characters back into a millisecond timestamp and shows the matching ISO date and time. The random part is not reversible, since it carries no extra information.

Are the ULIDs random and secure?

The random section uses your device's cryptographic source through crypto.getRandomValues, so values are unpredictable and collisions are extremely unlikely. ULIDs are identifiers, not secrets, so do not use them as passwords or API keys.

Is anything sent to a server?

No. Every ULID is generated and decoded locally in your browser, so the values and timestamps never leave your device.

Related tools