ULID & NanoID Generator
BetaGenerate ULIDs, 26-character time-sortable ids, or NanoIDs, short URL-safe ids with a custom alphabet and length. Batches of up to 100, crypto-random, in your browser. No signup.
- Free, no sign-up
- REST + MCP
- Updated
- Reviewed by Olgun Ozoktas
Options
A ULID is 26 Crockford base32 characters: 48 bits of millisecond time, then 80 random bits. IDs made in the same batch sort by creation time.
5 generated
How to generate a ULID or NanoID
-
Pick the id type
Choose ULID for time-sortable ids or NanoID for short URL-safe ids. A batch appears at once. -
Set the batch and the shape
Enter how many ids you need, up to 100. For NanoID, set the length and edit the alphabet if you need digits only or no look-alike letters. -
Generate again if needed
Click Generate again for a fresh batch. Each click draws new random bits. -
Copy the list
Click Copy all to put the ids on your clipboard, one per line, ready for a fixture file, a spreadsheet or a database seed.
Common use cases
Database primary keys
Short links and invite codes
Test fixtures
Log correlation
Why use a ULID or NanoID instead of a UUID?
The ULID & NanoID Generator makes the two ids developers reach for when a UUID does not fit. A ULID is 128 bits written as 26 Crockford base32 characters, a millisecond timestamp first and 80 random bits after, so ids sort by creation time as plain strings. A NanoID is short and URL-safe by default, with an alphabet and a length you choose, so it fits a share link or a coupon code.
Both come from the same modules that run behind the REST tools ulid-generate and nanoid-generate and the MCP tools ulid_generate and nanoid_generate, so a batch made here matches a batch an agent makes. The random bits come from the Web Crypto API on every surface.
For the standard 36-character form, the UUID Generator makes v4, v7, v1 and nil UUIDs; its v7 sorts by time like a ULID.
How it compares
Language libraries make these ids well, but a page is faster for a fixture file or a one-off code, and a batch of 100 is one click. Other online generators often make one id at a time, pin the NanoID alphabet, or use Math.random. This page makes batches, lets you edit the alphabet and length, uses crypto random on every surface, and exposes the same functions through a REST endpoint and an MCP server.
It does not implement the optional monotonic ULID mode, and it says so; two ids from the same millisecond are unordered between themselves.
Tips
- Lengthen a NanoID when you shrink its alphabet; the collision odds depend on both.
- Store ULIDs as text or as 16-byte binaries; both sort correctly, the binary form uses less space.
- Do not use a ULID as a secret: its first ten characters are the creation time.
- Use the REST tool to generate ids inside a script instead of copying from the page.
- For a 36-character standard id, the UUID Generator's v7 sorts by time like a ULID.