UUID/GUID Generator

UUID Version Selection
Generated UUIDs
UUID Decoder & Validator
UUID Version Info
Version 4 - Random

Randomly generated UUID with 122 bits of randomness. Most commonly used version for general purposes.

UUID Structure

Standard UUID format:

xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx
  • M: Version digit (1-7)
  • N: Variant bits (8, 9, A, or B)
  • Total: 128 bits / 32 hex digits
Common Use Cases
  • 🗄️ Database Primary Keys
  • 📡 API Resource IDs
  • 🔗 Unique Identifiers
  • 📊 Distributed Systems
  • 🔄 Message IDs
Quick Actions

Free Online UUID v5 Generator - SHA-1 Name-based Tool

Generate UUID v5 online for free. This browser-based tool creates deterministic UUIDs using SHA-1 hashing - preferred over v3 for new projects. No installation or registration required.

When to Use This Version

Use UUID v5 for content-addressable storage, API resource identification from canonical names, deduplication systems, and any scenario where the same input must always produce the same UUID. Prefer v5 over v3 for all new projects.

Best Practices

Use standard namespaces (DNS for domain names, URL for URLs) when appropriate. Create a dedicated namespace UUID for your application's custom identifiers. Document your namespace choices - they're essential for reproducing IDs. Remember that v5 is one-way: you cannot reverse the UUID to get the original name.

Compare with Other Versions

UUID Version 5 Questions

UUID v5 is like v3 but uses SHA-1 instead of MD5 for hashing. Given a namespace and name, it produces a deterministic UUID. Same inputs = same output, always.

SHA-1 is cryptographically stronger than MD5 (though both have known weaknesses now). For new projects, v5 is the better choice for name-based UUIDs. V3 exists mainly for backwards compatibility.

Content-addressable storage (hash content to get ID), URL shortening, API resource identification from canonical names, deduplication systems, cache keys derived from input data.

No. SHA-1 (like all hash functions) is one-way. You can only verify that a name produces a specific UUID, not recover the name from the UUID.