Skip to main content

Free UUID Generator

Generate version 4 UUIDs instantly. Bulk generate up to 50 at once. Cryptographically secure — your data never leaves the browser.

Works offline once loaded

Click Generate to create UUIDs

UUID v4 uses 122 random bits — the chance of a collision between two UUIDs is astronomically small.

Generated with crypto.getRandomValues — cryptographically secure, never sent to a server.

Common uses

  • Generate UUIDs for Database Primary KeysCreate UUID v4 values to use as primary keys in PostgreSQL, MySQL, MongoDB, and other databases.
  • Generate API Keys and TokensCreate unique, random identifiers for API keys, session tokens, and secret references.
  • Generate Test IDs for Software TestingCreate batches of unique IDs for test fixtures, mock data, and automated test suites.
  • Generate React and Frontend Component KeysCreate stable unique keys for React lists, dynamic form fields, and component instances.
  • Generate Tracking and Correlation IDsCreate unique correlation IDs for distributed tracing, log correlation, and event tracking.

How It Works

UUID generation runs entirely in the browser using the Web Crypto API's crypto.getRandomValues — no library dependency, no server call. The tool implements both RFC 4122 v4 and RFC 9562 v7 from scratch using hand-written bit manipulation, so nothing leaves your machine.

  1. 1
    Choose version and options
    Select UUIDv4 (pure random), UUIDv7 (timestamp-prefixed and lexicographically sortable), NIL (all zeros), or MAX (all 0xf). Set how many to generate (1–50) and whether to uppercase or wrap in curly braces for languages like C#.
  2. 2
    crypto.getRandomValues fills 16 bytes
    For v4 and v7, the browser's cryptographically secure random number generator fills a 16-byte Uint8Array. For v4, bits 6 and 8 are masked to set the RFC 4122 version (0x40) and variant (0x80) fields. For v7, the first 6 bytes are overwritten with the current Unix millisecond timestamp, making each ID sortable by creation time, then version and variant bits are set on bytes 6 and 8.
  3. 3
    Bytes are formatted into the standard hyphenated string
    The 16 bytes are converted to lowercase hex and split into the canonical 8-4-4-4-12 groups (e.g. 550e8400-e29b-41d4-a716-446655440000). Uppercase and brace-wrapping are applied at this stage.
  4. 4
    Export in your target format
    Results can be copied individually or in bulk. The export selector reformats the list as plain text, JSON array, CSV, a SQL INSERT VALUES block, C# new Guid(...) expressions, or a Python list literal before copying to the clipboard or downloading as a file.

Related Tools

Frequently Asked Questions