Back to home

ULID Generator

Create time-sortable ULIDs for logs, databases, and event IDs, then decode existing ULIDs to inspect their embedded timestamp.

Coding Waiting for result
Report issue

Sortable ID

Generate 26-character IDs that sort by time

A ULID stores time in the first 10 characters and randomness in the last 16, so simple string sorting keeps approximate creation order.

First ULID

-

Generated

0

Decoded time

-

Sorting behavior

Monotonic

Generate ULIDs

Generation and validation run in your browser.

Generated output

Press Generate to create ULIDs.

Inspect a ULID

Valid ULID

Decoded time

ISO

2024-06-22T06:03:37.895Z

Local

6/22/2024, 6:03:37 AM

Time part

01J0Z8P2H7

Random part

Y9M7N4S6T8V2W3X4

Structure

Choose current time or a custom timestamp.
Increase the count for a batch.
Turn on monotonic ordering when many IDs share one millisecond.
Paste an existing ULID to decode its embedded time.

Result workspace

Save this result, compare previous runs, or share a report.

How ULID works

A ULID is a 26-character Crockford Base32 identifier made from a 48-bit timestamp and 80 bits of randomness. The time prefix makes it friendly for lexical sorting.

Usage notes

  • First 10 characters: millisecond timestamp.
  • Last 16 characters: random entropy to reduce collisions.
  • ULIDs are case-insensitive but commonly displayed uppercase.

Frequently asked questions

Is ULID better than UUID?expand_more

Not always. ULID is convenient when time sorting and log tracing matter, while UUID remains broadly familiar.

Can I read the creation time from a ULID?expand_more

Yes. The first 10 characters encode a millisecond timestamp.

Can ULID be used as a security token?expand_more

It is useful as an identifier, but sensitive authentication tokens need a dedicated security policy.

Keep exploring

More tools to try next

Jump into related tools from the same category and popular picks across Gogotem.

View all tools arrow_forward