Free & Private Online Browser Utility

UUID Generator

A UUID (Universally Unique Identifier) is a 128-bit label used to identify records, sessions, and resources without a central authority. This tool generates four identifier types entirely in your browser. UUID v4 uses crypto.randomUUID(), which is backed by the operating system CSPRNG and produces identifiers in the 8-4-4-4-12 hex format defined by RFC 4122. UUID v7 is a newer format that embeds a millisecond Unix timestamp in the first 48 bits followed by random bytes, making identifiers sortable by creation time while retaining uniqueness. ULID (Universally Unique Lexicographically Sortable Identifier) encodes 48 bits of millisecond time and 80 bits of randomness in 26 Crockford Base32 characters; it sorts correctly as a plain string. NanoID produces a 21-character identifier from a 64-character alphabet using crypto.getRandomValues for the random source, giving approximately 126 bits of entropy in a compact URL-safe string. No example output is shown because every generation call produces a different value by design. The tool generates between 1 and 50 identifiers per run and offers lowercase, uppercase, brace-wrapped, and no-hyphen formatting options.

How to use

  1. Step 1: Select Identifier Type and Count

    Choose UUID v4, UUID v7, ULID, or NanoID from the format tabs. Use the count buttons (1, 5, 10, 25, or 50) to control how many identifiers are generated in one batch.

  2. Step 2: Generate and Review

    Click Generate or use the refresh icon. Each identifier is listed in its own row so you can read and verify it.

  3. Step 3: Copy or Download

    Click the copy icon next to any individual identifier, or use Copy All to copy the entire batch to the clipboard. Download .txt saves all identifiers as a plain text file.

Options explained

UUID Version

Selects the identifier algorithm. v4 is purely random. v7 is time-sorted and random. ULID is lexicographically sortable Base32. NanoID is a compact URL-safe string.

When to use: Use v4 for database primary keys where insertion order does not matter. Use v7 or ULID for append-heavy tables where time-ordering improves index performance.

Format Options

Applies lowercase (default), UPPERCASE, brace-wrapped ({uuid}), or no-hyphen output formatting to the generated identifiers.

When to use: Use no-hyphen when inserting into systems that store UUIDs as 32-character hex strings without separators.

Batch Count

Generates 1, 5, 10, 25, or 50 identifiers in a single click.

When to use: Use batch generation when seeding test databases or populating fixture files.

Worked example

Input: Generate 1 UUID v4

Output: (output is random and differs on every generation — no fixed example shown)

UUID v4 output changes on every call because it is drawn from a cryptographically secure random source.

Tips & limits

  • UUID v7 and ULID both include a timestamp prefix, so generated batches sort chronologically when compared as strings. UUID v4 has no time component and does not sort by generation time.
  • NanoID at 21 characters has roughly the same collision probability as UUID v4 at 36 characters but is shorter and URL-safe without further encoding.
  • All four formats use crypto.getRandomValues or crypto.randomUUID for the random portion, which is provided by the browser's operating system entropy source.

Common problems

crypto.randomUUID is undefined in an older browser

crypto.randomUUID was added to all major browsers in 2021. Update to a current browser version to use UUID v4 generation.

Generated UUIDs look identical across a batch

This should not occur. If it does, force-refresh the page to reset any cached state.

Frequently Asked Questions (FAQ)

What is the difference between UUID v4 and UUID v7?

UUID v4 is 122 bits of random data with no embedded metadata. UUID v7 encodes 48 bits of Unix milliseconds in the first segment, making it monotonically increasing within a millisecond window. This improves B-tree index locality in databases that insert in time order.

Is UUID v4 safe to use as a database primary key?

Yes, with one consideration. The random layout of v4 UUIDs causes scattered inserts in B-tree indexes, which can reduce write performance at high throughput. UUID v7 or ULID avoids this by making the key time-sortable.

What random source does this tool use?

All generated identifiers use crypto.randomUUID() or crypto.getRandomValues(), both backed by the browser's CSPRNG from the operating system. Output is not seeded from Math.random.

Does the tool send generated identifiers to a server?

No. Generation runs entirely in browser RAM. No identifiers or inputs are transmitted over the network.

Files never leave your device; calculations and transformations happen locally.

Last reviewed: 2026-10-18 · Build: deb3bc0