NanoID & ULID Generator

Generate batches of NanoID or ULID identifiers in your browser, with an adjustable NanoID length and copy buttons for the whole list or each ID.

Loading tool…

NanoID & ULID GeneratorThis generator creates random, collision-resistant string IDs without any server round-trip. Pick NanoID for short, URL-safe random keys or ULID for lexicographically sortable, timestamp-prefixed IDs, set how many you want, and read them straight from the output block. Everything runs entirely in your browser using the cryptographic randomness already built into your device, so no identifier you generate is ever uploaded or logged.

What is NanoID & ULID Generator?

A NanoID and ULID generator is a developer tool that produces unique string identifiers on demand. NanoID is a tiny, URL-friendly random ID (21 characters by default) that is a popular, shorter alternative to UUIDs for primary keys, short links, and tokens. ULID is a 26-character identifier whose leading bits encode the creation time, so a list of ULIDs sorts naturally in the order it was created — handy for database keys, log lines, and event streams. Backend engineers, database designers, and API authors use this widget to grab a quick batch of test IDs, seed fixtures, or generate real keys to paste into code. Choose the kind with the Segmented control, set the count, tune the NanoID size, and hit Generate to make a fresh batch; copy the whole list at once or any single line.

How to use NanoID & ULID Generator

  1. Open the settings panel and choose NanoID or ULID with the Kind toggle.
  2. Set Count to how many identifiers you want, from 1 up to 100.
  3. For NanoID, adjust Size to set the character length (2 to 64); for ULID the length is fixed at 26.
  4. Press Generate to create a fresh batch — the output and per-row list update automatically.
  5. Click Copy in the Output header to copy every ID, or the copy icon on any row to grab just that one.
  6. Press Generate again whenever you need a new, different set of IDs.

Examples

A single default NanoID

Input

Kind: NanoID, Count: 1, Size: 21

Output

V1StGXR8_Z5jdHi6B-myT

A short NanoID for a slug or code

Input

Kind: NanoID, Count: 1, Size: 8

Output

Uakgb_J5

A time-sortable ULID

Input

Kind: ULID, Count: 1

Output

01ARZ3NDEKTSV4RRFFQ69G5FAV

Frequently asked questions

What is the difference between NanoID and ULID?
NanoID is a compact, fully random URL-safe string with a length you choose, great when you just need a unique key and want it short. ULID is 26 characters where the first part is the creation timestamp, so ULIDs are sortable by time and stay roughly ordered as you create them. Use NanoID for short links and tokens; use ULID when chronological ordering of keys matters.
How long is a NanoID, and how unique is it?
The default NanoID is 21 characters, which gives a collision probability comparable to a UUID v4. You can shorten it down to 2 or extend it to 64 with the Size control; shorter IDs are easier to read but collide sooner, so keep keys that must stay unique at a generous length.
Can I generate many IDs at once?
Yes. Set Count to anything from 1 to 100 and press Generate. The whole batch appears in the output block; use the Copy button in the header to copy them all as newline-separated lines, or the copy icon on a single row to take just that ID.
Are the IDs cryptographically random?
NanoID uses the browser's crypto random source, and ULID's random component does too, so the identifiers are unpredictable and suitable for tokens. ULID's leading timestamp is, by design, derived from the current time and is therefore not secret.
Is anything sent to a server?
No. Every ID is generated locally in your browser and nothing is uploaded, stored, or logged on our side. You can safely generate keys for private or internal systems offline.

Related tools