UUID Generator in Go — Code Examples
UUIDs (Universally Unique Identifiers) are 128-bit identifiers used as database primary keys, session tokens, and idempotency keys. UUID v4 (random) is the safe default; UUID v7 (time-ordered) is preferred for database primary keys.
Go's standard library does not include UUID generation. The google/uuid package is the standard choice.
// go get github.com/google/uuid
package main
import (
"fmt"
"github.com/google/uuid"
)
func main() {
// UUID v4 — random
id := uuid.New()
fmt.Println(id.String()) // e.g. 110e8400-e29b-41d4-a716-446655440000
// UUID v4 with error handling
id2, err := uuid.NewRandom()
if err != nil {
panic(err)
}
fmt.Println(id2)
// UUID v7 — time-ordered (google/uuid v1.6+)
id7, _ := uuid.NewV7()
fmt.Println(id7)
// Parse a UUID string
parsed, err := uuid.Parse("110e8400-e29b-41d4-a716-446655440000")
if err != nil {
panic(err)
}
fmt.Println(parsed.Version()) // 4
}- uuid.New() panics on random source failure; use uuid.NewRandom() to handle the error explicitly.
- UUID v7 support was added in google/uuid v1.6 — update your dependency if uuid.NewV7() is unavailable.
- UUIDs implement encoding.TextMarshaler/Unmarshaler — they serialize correctly in JSON automatically.
Need to uuid generator without writing code? The UUID Generator runs entirely in your browser — paste your input and get the result instantly. No signup, no install, no data sent to a server.
Open UUID Generator →UUID Generator in JavaScript / Node.js
Node.js 14.17+ and all modern browsers include crypto.randomUUID(). For older environments use the uuid package.
UUID Generator in Python
Python's standard library includes the uuid module with support for v1, v3, v4, and v5.
UUID Generator in Java
Java's standard library includes java.util.UUID with randomUUID() for v4 and nameUUIDFromBytes() for v3.
UUID Generator in PHP
PHP has no built-in UUID function before 8.x. Use ramsey/uuid for full UUID support or generate v4 manually with random_bytes().
UUID Generator in Ruby
Ruby's built-in SecureRandom module generates UUID v4. For v5 or v7, use the uuidtools or uuid gems.
UUID Generator in Rust
Rust uses the uuid crate. Enable the v4 and v7 features in Cargo.toml for random and time-ordered UUIDs.
UUID Generator in C# / .NET
C# uses Guid for UUIDs. Guid.NewGuid() generates a v4-equivalent random GUID. .NET 9 adds Guid.CreateVersion7() for time-ordered v7.