ULID generator

Generate timestamped ULIDs with optional monotonic batches

Options

Start with one ULID, then switch to batch mode when you need a sortable list.

Generation mode

Generate one ULID, or use batch mode to choose a count and enable monotonic sorting.

Timestamp mode

Use the current time or set a specific timestamp in Unix milliseconds.

Results

ULID values generated locally for the selected mode and timestamp.

Generate ULIDs locally in your browser for records, events, logs, fixtures, and distributed systems that need compact identifiers with time-sortable prefixes. Each value is created on this device and can be copied or downloaded without sending the batch to another service.

Why use ULIDs?

ULID stands for Universally Unique Lexicographically Sortable Identifier. It combines a 48-bit Unix millisecond timestamp with 80 bits of randomness, then encodes the result as a 26-character Crockford Base32 string. That shape makes ULIDs URL-safe, database-friendly, and naturally sortable by creation time.

Current or custom time

Use the current time for normal application records, import keys, and test data that should reflect when it was created. Switch to a custom timestamp when you need deterministic-looking samples, backfilled rows, replayed events, or fixtures that should sort around a specific moment.

Monotonic batches

When monotonic batch mode is enabled, IDs generated for the same millisecond increment their random segment so the batch remains lexicographically sorted from top to bottom. Disable it when you want each row to use a fresh random segment instead. Either mode keeps the timestamp visible in the first ten characters.

How to use

Choose single or batch generation, use the current time or enter a custom Unix millisecond, and optionally keep batch results monotonic. Results update automatically and can be copied, downloaded, or regenerated.