1. Inicio
  2. Herramientas para desarrolladores
  3. Generador de UUID

Generador de UUID v4 y v7

Genera identificadores únicos universales (UUID) de versión 4, totalmente aleatorios, o de versión 7, ordenados por fecha. Crea uno o miles de golpe y cópialos en el formato que necesites.

Formato

Cómo usar el generador

  1. Elige la versión: v4 si solo necesitas un identificador imposible de adivinar, v7 si lo vas a usar como clave en una base de datos.
  2. Indica cuántos quieres (hasta 1000 por tanda) y el formato: mayúsculas, sin guiones (32 caracteres hexadecimales) o entre llaves, como los muestra Visual Studio o el registro de Windows.
  3. Pulsa Generar nuevos y copia la lista o descárgala como archivo de texto, un UUID por línea.

Los identificadores se crean en tu navegador con crypto.randomUUID() o, si no está disponible, con crypto.getRandomValues(). Ninguno se envía ni se guarda en un servidor, así que puedes usarlos en producción.

Estructura de un UUID

Un UUID tiene 128 bits que se escriben como 32 dígitos hexadecimales en grupos 8-4-4-4-12:

xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx

  • M es la versión: 4 en un UUID v4 y 7 en un v7.
  • N es la variante RFC 9562 (antes RFC 4122): siempre 8, 9, a o b.
  • En el v4 los 122 bits restantes son aleatorios.
  • En el v7 los primeros 48 bits son los milisegundos desde el 1 de enero de 1970 (el timestamp Unix en ms) y los 74 bits restantes son aleatorios.

Ejemplos y comparación de versiones

VersiónEjemploBasada enUso típico
v16ba7b810-9dad-11d1-80b4-00c04fd430c8Fecha + MACSistemas antiguos; revela el equipo
v4f47ac10b-58cc-4372-a567-0e02b2c3d479AleatorioTokens, IDs públicos, nombres de archivo
v5886313e1-3b8a-5372-9b90-0c9aee199e5dSHA-1 de un nombreID reproducible a partir de un texto (aquí, «python.org» en el espacio DNS)
v701923f5a-7c4e-7b21-9f3a-5d6e8c1b2a40Milisegundos + aleatorioClaves primarias en bases de datos

En el ejemplo v7, 01923f5a7c4e en hexadecimal son 1 727 639 747 662 ms, es decir, el 29 de septiembre de 2024 a las 19:55:47 UTC. La herramienta muestra la fecha que contiene el primer UUID v7 generado.

UUID como clave primaria

Los UUID permiten crear identificadores en el cliente o en varios servidores sin consultar la base de datos, y no dejan adivinar cuántos registros hay (con un ID autoincremental, el pedido 1052 revela que hubo 1051 antes). A cambio ocupan 16 bytes frente a 4 u 8 de un entero.

  • Guárdalos en binario cuando el motor lo permita: el tipo uuid de PostgreSQL ocupa 16 bytes; como texto CHAR(36) ocupa más del doble.
  • Prefiere v7 en índices B-tree: los v4 se insertan en posiciones aleatorias y provocan divisiones de página; los v7 se añaden casi siempre al final.
  • No uses un UUID como secreto de larga duración (enlaces de restablecimiento de contraseña, claves API). Aunque un v4 bien generado es impredecible, para secretos es mejor un token específico de 256 bits, como los del generador de contraseñas.

Si necesitas filas completas de ejemplo con IDs, nombres y correos, prueba el generador de datos de prueba.

Generar UUID en tu lenguaje

LenguajeCódigo (v4)
JavaScriptcrypto.randomUUID()
Pythonimport uuid; uuid.uuid4()
PostgreSQL 13+SELECT gen_random_uuid();
JavaUUID.randomUUID()
C#Guid.NewGuid()
Linux / macOSuuidgen

El soporte nativo de v7 es más reciente (por ejemplo, uuid.uuid7() llegó en Python 3.14 y uuidv7() en PostgreSQL 18); comprueba la versión de tu entorno antes de depender de él.

Preguntas frecuentes

¿Qué diferencia hay entre UUID y GUID?

Ninguna en la práctica. GUID es el nombre que usa Microsoft para el mismo identificador de 128 bits; un GUID generado hoy en Windows es un UUID versión 4.

¿Puede repetirse un UUID v4?

En teoría sí, pero tiene 122 bits aleatorios: para tener un 50 % de probabilidad de una sola colisión habría que generar unos 2,7 × 1018 identificadores. En la práctica se consideran únicos si el generador es criptográficamente seguro.

¿Cuándo usar UUID v7 en lugar de v4?

Cuando el UUID será clave primaria de una base de datos. El v7 empieza por la marca de tiempo en milisegundos, así que los registros nuevos se insertan al final del índice y se fragmenta mucho menos que con v4.

¿Se puede saber cuándo se creó un UUID v7?

Sí. Los primeros 12 dígitos hexadecimales son los milisegundos desde 1970. Por eso no conviene usar v7 si no quieres revelar la fecha de creación; en ese caso usa v4.