What does the ULID Generator and Timestamp Inspector do?
Use this tool when you need a browser utility that creates sortable 128-bit identifiers with a 48-bit millisecond timestamp and 80 random bits. It accepts a requested count from 1 to 100 or a ULID to inspect and returns Crockford Base32 ULIDs and decoded creation timestamps. Results are deterministic for the same input except where cryptographic randomness, current time, or a live provider response is part of the task.
ULID favors sortable identifiers
Choose ULID when lexicographic sorting by approximate creation time is useful. Choose UUID v4 for a widely supported opaque random identifier, or a database-native sequence when centralized ordering is acceptable.
How do you use it?
- Choose a count from 1 to 100 and select Generate.
- Copy the 26-character Crockford Base32 values in the order produced.
- Paste any ULID into Inspect ULID to validate it and read its embedded millisecond timestamp.
Worked example
Inspect the canonical ULID example
Input
01ARZ3NDEKTSV4RRFFQ69G5FAVOutput
Status: Valid
Timestamp: 2016-07-30T23:54:10.259Z
Random bits: 80The first ten characters encode a 48-bit Unix-millisecond timestamp; the remaining sixteen encode 80 random bits.
Common errors and fixes
| Symptom | Likely cause | Fix |
|---|---|---|
| A 26-character value is marked invalid. | It contains excluded Crockford characters such as I, L, O, or U, or its first character would overflow 128 bits. | Use the ULID alphabet and require the first character to be 0 through 7. |
| Generated values reveal when records were created. | Time ordering is an intentional ULID property. | Choose UUID v4 when exposing approximate creation time is undesirable. |
Important behavior of ULID Generator
Time ordering reveals approximate creation time; choose UUID v4 when that disclosure is unwanted.
Standards and implementation references
- ULID specification (opens in a new tab)Defines the 128-bit layout, Crockford Base32 encoding, timestamp, and randomness fields.
- MDN — Crypto.getRandomValues() (opens in a new tab)Documents the cryptographic random-byte source used by the generator.
Frequently asked questions about ULID Generator
Does the ULID Generator upload my input?
No. Processing runs in the current browser tab, and the page does not send tool input to a KitLumi processing endpoint.
What input does the ULID Generator accept?
It accepts a requested count from 1 to 100 or a ULID to inspect. The workspace checks the input and reports malformed or unsupported values before it produces a result.
What does the ULID Generator produce?
It produces Crockford Base32 ULIDs and decoded creation timestamps. Copy and download controls appear when the output format supports them.
What limitation should I know?
Time ordering reveals approximate creation time; choose UUID v4 when that disclosure is unwanted.
What changed?
Added Cryptographic random bits, Sortable identifier output, Bulk generation, Timestamp inspection, responsive controls, explicit runtime disclosure, and tested browser output.