This tool runs entirely in your browser. No data is sent to any server.

UUID Generator Online — Generate UUID v4 Free, No Server

Works offline No server calls No account GDPR-safe

Single UUID

————————-————-4———-————-————————

Bulk Generate

What Is a UUID?

A UUID (Universally Unique Identifier) is a 128-bit value formatted as 32 hexadecimal digits in the pattern 8-4-4-4-12 — for example, 550e8400-e29b-41d4-a716-446655440000. The standard defines several versions; this tool generates version 4 (v4), which uses cryptographically random numbers for all 122 of its bits (the remaining 6 bits encode the version and variant).

UUID Versions

  • v1 — Time-based, derived from the current timestamp and the machine's MAC address. Sortable but exposes system information.
  • v3 / v5 — Namespace-based, generated deterministically by hashing a name within a namespace (MD5 for v3, SHA-1 for v5).
  • v4 — Randomly generated. No predictable pattern, no system information. The most widely used version.
  • v7 — Newer standard combining a millisecond Unix timestamp prefix with random bits, giving time-sortable random IDs.

Common Use Cases

  • Database primary keys — UUIDs allow records to be created on any server or client without coordination, making them ideal for distributed systems.
  • API request IDs — Attaching a UUID to each request enables end-to-end request tracing across microservices.
  • File upload names — Renaming uploaded files to UUIDs prevents path traversal and name collision issues.
  • Session tokens — Temporary tokens for email verification, password resets, and invite links.

Why UUIDs Over Auto-Increment IDs?

Sequential integer IDs expose information about your data volume (how many users you have, how many orders were placed). They also prevent safe offline record creation and complicate database sharding. UUID v4 reveals none of this — the IDs are opaque, non-guessable, and collision-resistant (the probability of generating the same UUID twice is astronomically small: roughly 1 in 5.3 × 1036).

UUID Format Breakdown

The 32 hex characters are grouped as xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx where 4 is fixed (version 4) and y is one of 8, 9, a, or b (the RFC 4122 variant bits). The remaining 122 bits are random.

UUID in PHP and Laravel

PHP and Laravel have built-in UUID support:

  • Str::uuid() — Laravel helper that returns a UUID v4 string using ramsey/uuid under the hood
  • Str::orderedUuid() — Generates a time-ordered UUID (similar to v7) optimised for database index performance
  • $table->uuid('id')->primary() — Eloquent migration to use UUID as a primary key
  • HasUuids trait — Add to any Eloquent model to automatically assign UUID primary keys on creation

In PHP without Laravel: bin2hex(random_bytes(16)) gives 32 random hex bytes — format them into UUID structure manually, or use the ramsey/uuid package directly.

Privacy & How It Works

UUIDs are generated using crypto.randomUUID() — the browser's native cryptographically secure random source. On older browsers it falls back to crypto.getRandomValues(). No network request is made at any point.

  • No server calls — UUIDs are generated entirely in your browser. Nothing is transmitted.
  • Works offline — Once the page loads, disconnect from the internet and it keeps working.
  • GDPR-safe — No data is collected, stored, or processed on any server.
Built by TuringComplete
Check out our open-source developer tools.
Explore Tools