Security & Encoding

UUID Generator

Generate UUID v4 and v7 values in bulk, choose the formatting, then copy or download the list. Everything runs in your browser — the values are created on your device and are never sent anywhere.

Runs in your browser v1.0.0

Generator options

Generate between 1 and 1000 UUIDs at a time.

v4 is fully random; v7 starts with a timestamp, which sorts roughly by creation time.

Formatting

Formatting only changes how the values are written out. Turn hyphens off for a single 32-character string, or add braces for systems that expect {…}.

UUIDs

0 UUIDs


            

Inspect a UUID

optional

Paste any UUID to check its version, variant and, for version 7, the encoded timestamp.

How it works

Version 4 UUIDs are 122 random bits drawn from your browser’s crypto.getRandomValues(). Version 7 UUIDs begin with a 48-bit millisecond timestamp followed by random bits. The version and variant nibbles are always set according to RFC 9562, so every value is a well-formed UUID. If the secure random source is unavailable the tool falls back to Math.random() and says so. Nothing is uploaded and no request is made.

Practical uses

Generate UUID version 4 (random) and version 7 (time-ordered) values in bulk, and inspect an existing UUID's version and variant.

Common ways to use it

  • Create a batch of random identifiers for test fixtures or seed data.
  • Produce a single random UUID for a record that needs a unique key.
  • Check an existing UUID's version and, for version 7, the encoded timestamp.

Version and variant bits (injected zero bytes)

Input

Version: v4
Random source: 16 zero bytes

Output

v4 00000000-0000-4000-8000-000000000000
v7 00000000-0001-7000-8000-000000000000

Verified with the tool's generate functions using zero bytes. Real output is random, but every v4 is 8-4-4-4-12 lower-case hex with version nibble 4 and a variant nibble in 8, 9, a or b, and every v7 uses version nibble 7.

Options that matter

  • Version — v4 (122 random bits) or v7 (a 48-bit millisecond timestamp followed by random bits).
  • How many — from 1 to 1000 values per run; out-of-range values are clamped.
  • Uppercase — write the hex digits as capitals.
  • Hyphens — keep the 8-4-4-4-12 grouping or output one 32-character string.
  • Braces — wrap each value in { }.

Things to keep in mind

  • Values use crypto.getRandomValues() when it is available; if it is not, the page warns that it has fallen back to Math.random(), which is weaker.
  • Changing the formatting toggles rewrites the existing values; the underlying identifiers only change when you generate again.
  • The inspector reports version, variant and a version 7 timestamp; it does not prove a value was ever issued or is unique.
  • Version 7 timestamps are millisecond precision, and like all UUIDs they are identifiers, not secrets.