← All tools

UUID Generator and Validator

Generate cryptographically secure UUID v4 values and validate UUID versions, variants, and raw bytes locally in your browser.

This tool runs entirely in your browser. Your input is never uploaded.

UUID v4 generator

Generate UUID v4 values with cryptographically secure browser randomness.

UUIDs are generated after the browser app mounts.

UUID validator

Validate a standard UUID and inspect its version, variant, and raw bytes.

What is a UUID?

A UUID, or Universally Unique Identifier, is a 128-bit value used to identify objects, records, or requests. GUID is commonly used as another name for the same format or concept. UUIDs are useful for database keys, request IDs, filenames, and client-side object identifiers.

How is UUID v4 generated?

Most UUID v4 bits come from random data. The version bits are fixed to 4, and the variant bits identify the RFC 4122 / RFC 9562 layout. This tool uses crypto.getRandomValues() instead of Math.random(), so generation does not depend on an ordinary pseudorandom function.

The probability of a UUID collision is extremely small, but it is not mathematically impossible. Production systems should still enforce a unique constraint and handle conflicts correctly.

Is a UUID a password?

No. A UUID is an identifier, not a password, access token, session key, or authentication credential. Even a UUID v4 generated with secure randomness does not give it authentication semantics.

UUID versions and variants

The validator recognizes version fields from UUID v1 through v8 and displays NCS, RFC 4122 / RFC 9562, Microsoft, and reserved variants. It checks the standard structure, version bits, and variant; it does not validate every semantic field inside a specific UUID version.

Common versions include:

  • v1: Contains time and node-related fields.
  • v4: Randomly generated for general-purpose identifiers.
  • v7: Time-ordered with random fields, useful for some database ordering scenarios.

Nil and Max UUIDs

The Nil UUID is all zeroes: 00000000-0000-0000-0000-000000000000. The Max UUID is all f characters: ffffffff-ffff-ffff-ffff-ffffffffffff. They are commonly used as placeholders, boundaries, or sentinel values rather than regular random identifiers.

Case and hyphens

Hexadecimal letter case does not change a UUID's value. The standard display format uses 8-4-4-4-12 groups with hyphens. This generator can change case, hyphens, and braces for display; the validator expects the standard hyphenated form and permits outer braces.

Privacy and security

UUIDs are generated and validated locally in your browser. They are never sent to a server or stored in the URL or local storage. Generated values exist only in the current page state.

Frequently asked questions

Why should I not use Math.random() for UUIDs?

Math.random() is not designed to provide cryptographically secure randomness. Its quality and implementation are engine-dependent. Use the Web Crypto API when low collision probability and unpredictability matter.

Is a UUID v4 absolutely unique?

No value is mathematically guaranteed to be unique. The random space is enormous and collisions are extraordinarily unlikely in normal use, but databases should still enforce uniqueness.

Should I choose UUID v1, v4, or v7?

Use v4 for general random identifiers, evaluate v7 when time ordering matters, and use v1 only when its time and node semantics are explicitly required because they may expose metadata.

Related tools

A growing collection of browser-only tools. Your data stays on your device whenever the browser can handle the task.