Generador de UUID
Genera UUID v4, v7, v1, v3 y v5 — uno o mil de una vez — e inspecciona cualquier UUID.
Generador de UUID - crear UUID v4, v7, v5 y v1 online
Un UUID es un identificador de 128 bits que dos sistemas pueden crear por separado con la confianza de que nunca chocarán. Este generador gratuito produce la versión 4 (aleatoria), la versión 7 (ordenada por tiempo), la versión 1 (marca de tiempo y nodo) y las versiones 3 y 5 (derivadas de un nombre), de uno en uno o hasta mil de golpe, en líneas sueltas, array JSON, CSV o valores SQL. Pegue cualquier identificador en el inspector y verá su versión y su variante, además de la fecha que llevan dentro los v1 y v7.
A los UUID también se les llama GUID, sobre todo en el ecosistema de Microsoft. Ambos términos describen la misma cadena de 36 caracteres: 32 dígitos hexadecimales repartidos en cinco grupos separados por guiones, por ejemplo f47ac10b-58cc-4372-a567-0e02b2c3d479.
Por qué usar un UUID en lugar de un ID autoincremental
Un ID secuencial de base de datos tiene que asignarlo una única autoridad, lo que significa que el cliente no conoce el identificador hasta que responde el servidor. Los UUID eliminan esa dependencia: una app móvil puede crear registros sin conexión, un worker puede referenciar una fila antes de escribirla y dos centros de datos pueden fusionarse sin renumerar nada. Además, los IDs secuenciales filtran información: /factura/1042 revela a un competidor cuántas facturas ha emitido, mientras que un UUID no dice nada.
Las versiones de UUID que se encontrará
| Versión | Cómo se construye | Uso típico |
|---|---|---|
| v1 | Marca de tiempo más identificador de nodo | Sistemas heredados; aquí el nodo son bytes aleatorios, nunca su MAC |
| v3 / v5 | Hash MD5 o SHA-1 de un espacio de nombres y un nombre | IDs deterministas: el mismo par siempre da el mismo UUID |
| v4 | 122 bits aleatorios | La opción por defecto cuando solo necesita un valor único |
| v7 | Marca de tiempo Unix de 48 bits más aleatoriedad | Claves de base de datos: ordena por fecha de creación y el índice se mantiene limpio |
Cómo generar y validar UUID aquí
- Elija la versión: v4 para uso general, v7 para claves de base de datos, v5 o v3 para derivar de un nombre, v1 para formatos heredados.
- Fije la cantidad: de uno a mil.
- Elija el formato de salida: uno por línea, array JSON, CSV o valores SQL listos para un INSERT.
- Marque mayúsculas, sin guiones, llaves o el prefijo
urn:uuid:si el destino lo exige, y pulse Copiar o Descargar. - Pegue cualquier identificador en Inspeccionar un UUID, a la derecha, para comprobarlo y descifrar lo que contiene.
Qué versión elegir
Use v4 salvo que tenga un motivo para no hacerlo: es aleatoria, no lleva metadatos y es el valor por defecto de casi todas las bibliotecas. Use v7 cuando el identificador sea clave primaria de una tabla con mucho tráfico: la marca de tiempo en milisegundos va delante, así que las filas nuevas caen al final del índice en vez de dispersarse, y los valores se ordenan cronológicamente como simples cadenas. Use v5 cuando la misma entrada deba dar siempre el mismo identificador, por ejemplo un ID estable derivado de una URL o del nombre de un cliente; v3 es la variante antigua con MD5, útil solo por compatibilidad. v1 sirve sobre todo para leer datos antiguos: codifica la fecha de creación y, tradicionalmente, la MAC de la máquina.
Los lotes son monótonos: genere mil UUID v7 de una vez y seguirán ordenados según se crearon, porque los doce bits siguientes a la versión llevan un contador en lugar de ruido. El UUID nil - todo ceros - también está en el menú, ya que es el marcador convencional de ausencia de valor.
Qué le dice el inspector
Pegue cualquier identificador en el panel Inspeccionar un UUID de la derecha, con o sin guiones, llaves o prefijo urn:uuid:. El inspector confirma el formato, nombra la versión y la variante y muestra la forma canónica y el hex en bruto. Con un valor v1 o v7 descifra la marca de tiempo incrustada y la convierte en una fecha UTC legible, que suele ser la forma más rápida de saber cuándo se creó un registro. Con v1 muestra además los bytes de nodo e indica si el bit multicast los marca como aleatorios o como una MAC real. Un valor bien formado se marca como UUID válido, y cada versión añade una línea propia: Ordenable para v7, Entropía para v4 (122 bits aleatorios y nada más) y Derivado de para v3 y v5, porque el mismo espacio de nombres y el mismo nombre dan siempre el mismo UUID. Si la variante aparece como NCS o reservada para el futuro, lo normal es que el valor no se haya generado como un UUID estándar, aunque tenga la forma correcta.
Dónde se usan los UUID cada día
- Claves primarias en bases de datos distribuidas y en sistemas que sincronizan entre dispositivos.
- IDs de correlación y de petición que siguen una misma llamada por varios microservicios y archivos de log.
- Claves de idempotencia que permiten reintentar un pago o una llamada de API sin ejecutarla dos veces.
- Nombres de archivo para subidas, de modo que dos usuarios puedan subir
foto.jpgsin pisarse. - Identificadores de sesión, dispositivo e instalación en aplicaciones móviles y de escritorio.
- IDs de mensajes y eventos en colas, webhooks y sistemas basados en eventos.
Pueden repetirse dos UUID?
En teoría sí, en la práctica no. Un UUID versión 4 tiene 122 bits aleatorios, es decir, unos 5,3 quintillones largos de valores posibles. Habría que generar miles de millones de UUID por segundo durante un siglo para que una colisión fuese probable, muy lejos de lo que hace cualquier aplicación. El riesgo real no es matemático: es generar UUID con una fuente de aleatoriedad débil. Esta herramienta usa crypto.getRandomValues, el generador criptográficamente seguro del navegador, y no Math.random.
Notas prácticas antes de adoptar UUID
- Almacenamiento: 16 bytes en binario, 36 caracteres como texto. Use un tipo UUID nativo o BINARY(16) en lugar de VARCHAR siempre que pueda.
- Índices: los valores v4 aleatorios se dispersan en el árbol B y pueden fragmentar tablas grandes. Valore v7 o una clave secuencial adicional en tablas muy activas.
- Mayúsculas: por convención se escriben en minúsculas, pero las comparaciones deberían ignorar mayúsculas porque algunos sistemas devuelven mayúsculas.
- Llaves: las herramientas de Windows suelen envolver los GUID en
{...}. Quítelas antes de guardar. - URLs: un UUID ya es seguro para URL, no hace falta codificación porcentual.
Generado en su navegador
Cada valor se crea localmente y no se envía a ninguna parte, así que los identificadores que genere para sus sistemas internos siguen siendo privados y exclusivamente suyos.
Generar un UUID en código: JavaScript, Python, Java, C#, SQL y la terminal
Cuando necesitas identificadores dentro de un programa y no desde una página web, todas las plataformas principales incluyen un generador. Las llamadas de abajo producen un UUID versión 4 aleatorio salvo que se indique lo contrario.
| Plataforma | Una línea |
|---|---|
| JavaScript / Node.js | crypto.randomUUID() |
| Python | import uuid; uuid.uuid4() |
| Java | UUID.randomUUID() |
| C# / .NET | Guid.NewGuid(), o Guid.CreateVersion7() en .NET 9 para una v7 |
| PostgreSQL | gen_random_uuid(), o uuidv7() desde PostgreSQL 18 |
| MySQL | UUID() - ojo, devuelve una v1 basada en tiempo |
| Terminal Linux / macOS | uuidgen |
| PowerShell | [guid]::NewGuid() |
¿Buscas un UUID de Minecraft? Esos los asigna Mojang a cada cuenta y se consultan por el nombre del jugador, no se generan: esta herramienta crea identificadores aleatorios nuevos para tus propios sistemas.
Herramientas relacionadas
Los identificadores no viajan solos. Cree secretos con el generador de contraseñas, calcule huellas con el generador de hash, lea el sujeto de un token con el decodificador JWT y revise marcas de tiempo con el conversor de timestamp Unix.