Random ULID Generator

Generate Universally Unique Lexicographically Sortable Identifiers.

Configuration

Ensures strict ordering for the same timestamp by incrementing the random component.

Single ULID

Click generate to start

Bulk Generation

Batch Mode

About ULID Generator

A ULID (Universally Unique Lexicographically Sortable Identifier) is a 128-bit identifier encoded as a 26-character Crockford Base32 string. It’s designed to sort by time (lexicographic order matches creation order in typical usage), which makes it a strong choice for log-style records, time-ordered events, and append-heavy database tables.

How ULID works

  • It combines a 48-bit timestamp (milliseconds since Unix epoch) and 80 bits of randomness.
  • This structure allows values generated later to sort after values generated earlier.

JavaScript / TypeScript examples

Using the ulid package:

import { ulid, monotonicFactory } from "ulid";

// normal ULID
const id1: string = ulid();

// monotonic ULIDs
const mono = monotonicFactory();
const a: string = mono();
const b: string = mono(); // guaranteed > a

console.log({ id1, a, b });

When to choose ULID

  • Databases where ordering helps (append-heavy tables, time-series-ish rows)
  • Event/log identifiers where “newer sorts after older” is useful
  • Systems that must generate IDs offline without central coordination

Looking for a sortable random number generator or uuid generator alternative? Our ULID generator provides time-ordered unique identifiers. It functions as a robust random generator and random object generator when you need IDs that sort natively. Better than a basic google random number generator or generic random nr scripts for ordered data.

Message sent successfully.