Generador de UUID y GUID

Generador de UUID y GUID gratis: v1, v3, v4, v5, v6 y v7 en lote, ULID y NanoID, lotes ordenables y un decodificador que lee cualquier UUID.

Ajustes rápidos

122 bits aleatorios. La opción por defecto cuando solo necesitas un ID único.

Forma escrita
Envoltura
Vista previa019a0c2e-7d51-7b8e-9f42-6ac3d0b81e77

Todas las versiones de UUID que define el RFC 9562

Tabla 2 del RFC 9562. Las versiones 2 y 8 están reservadas y no tienen procedimiento de generación, así que ninguna herramienta general puede producirlas; el resto de filas se generan arriba.

VersiónSe construye conOrdena por tiempoÚsala para
UUIDv1Marca de 100 ns de 60 bits + secuencia de reloj + nodoNo — la marca va partidaSistemas heredados que ya lo usan
UUIDv2Reservada para DCE SecuritySin especificarNo definida en el RFC 9562
UUIDv3MD5 de espacio de nombres + nombreNo — salida de hashID heredados por nombre; mejor v5
UUIDv4122 bits aleatoriosNo — totalmente aleatorioID únicos de uso general
UUIDv5SHA-1 de espacio de nombres + nombreNo — salida de hashID estable derivado de un nombre
UUIDv6Campos de v1 con la marca reordenadaSíReemplazo ordenable dentro de un sistema v1
UUIDv748 bits de ms Unix + 74 bits aleatoriosSíClaves primarias de base de datos
UUIDv8Reservada para formatos propiosLo define quien lo implementaDiseños propios de cada fabricante
Nil UUIDLos 128 bits a ceroConstanteMarcador que significa «sin ID»
Max UUIDLos 128 bits a unoConstanteCentinela por encima de cualquier UUID

Las formas escritas de un mismo UUID

Los mismos 128 bits en cinco formas escritas. Las cinco se decodifican al mismo UUID y esta página acepta todas.

FormaEjemploCar.Se usa en
Canónica019a0c2e-7d51-7b8e-9f42-6ac3d0b81e7736La forma canónica del RFC 9562 — la predeterminada
Sin guiones019a0c2e7d517b8e9f426ac3d0b81e7732Almacenamiento compacto, rutas, archivos
Mayúsculas019A0C2E-7D51-7B8E-9F42-6AC3D0B81E7736Herramientas Microsoft y claves del registro
Llaves (GUID){019A0C2E-7D51-7B8E-9F42-6AC3D0B81E77}38El formato GUID del registro de Windows
URNurn:uuid:019a0c2e-7d51-7b8e-9f42-6ac3d0b81e7745El espacio URN registrado en el RFC 9562 §4

UUID, ULID o NanoID

Los cuatro son seguros en URL. El esquema seleccionado arriba lleva 122 bits aleatorios; un esquema basado en tiempo gasta parte de sus 128 bits en la marca de tiempo, y eso es lo que compra el orden.

EsquemaLongitudAleatoriedadOrdena por tiempo
UUIDv436 (32 dígitos hex)122 bitsNo
UUIDv736 (32 dígitos hex)74 bits por milisegundoSí
ULID26 (base32 Crockford)80 bits por milisegundoSí
NanoID (21)21126 bitsNo
¿Esta calculadora resolvió tu problema hoy?

Colaborador

Revisado por

Genera UUID, GUID, ULID y NanoID

Crea identificadores con un clic: UUID v4 (aleatorio), v7 y v6 (ordenados por tiempo), v1, v3 y v5 basados en nombre, los UUID Nil y Max, además de ULID y NanoID. Genera hasta 1000 de una vez, cópialos o descárgalos, cambia entre las cinco formas escritas —incluida la forma GUID en mayúsculas y entre llaves que usa Windows— y pega cualquier UUID en el decodificador para leer su versión, su variante y su marca de tiempo. Todo se ejecuta en tu navegador con una fuente aleatoria criptográficamente segura y nada se envía a ningún sitio.

¿Qué es un UUID?

Un UUID —identificador único universal— es un valor de 128 bits escrito como 32 dígitos hexadecimales en cinco grupos separados por guiones con el patrón 8-4-4-4-12. GUID, identificador único global, es el nombre que Microsoft da exactamente a lo mismo; la única diferencia que verás en la práctica es que las herramientas de Windows lo escriben en mayúsculas y entre llaves. Seis de los 128 bits están comprometidos: cuatro dicen qué versión generó el UUID y dos identifican la variante. Lo que llena los 122 restantes depende de la versión. Un v4 los llena con datos aleatorios. Un v7 pone delante una marca de tiempo Unix de 48 bits en milisegundos, de modo que los valores v7 ordenan por fecha de creación. Un v6 hace ese mismo trabajo para sistemas ya construidos sobre v1, reordenando la marca de v1 para que sus bits más significativos vayan primero. Un v3 o un v5 los llena con el hash de un espacio de nombres y un nombre, lo que hace el resultado determinista: las mismas dos entradas dan siempre el mismo UUID. ULID y NanoID no son UUID: ULID mete una marca de tiempo y 80 bits aleatorios en 26 caracteres ordenables, y NanoID es un token aleatorio simple de la longitud que elijas.

Estructura

xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx (M = versión, N = variante)

Cómo usarlo

1

Elige un ajuste rápido o un tipo de ID: v4 si solo necesitas un valor único, v7 si va a ser una clave de base de datos.

2

Indica cuántos quieres, hasta 1000.

3

Para v3 o v5, elige un espacio de nombres —o pega tu propio UUID como tal— y escribe el nombre del que derivar el ID.

4

Para NanoID, fija la longitud. Más corto queda mejor en una URL y resiste peor las colisiones; las cifras bajo los resultados dicen cuánto.

5

Elige la forma escrita. Mayúsculas más llaves te da la forma GUID de Windows; quitar los guiones te da la forma de 32 caracteres.

6

Pulsa Generar y luego copia uno, cópialos todos o descarga el lote como archivo de texto.

7

Para inspeccionar un identificador existente, cambia a Decodificar y pégalo.

Usos comunes

Claves primarias de base de datos

Una clave v7 hace que el índice siga creciendo por un extremo en lugar de dispersar las escrituras por todo él, que es el coste práctico principal de las claves aleatorias.

Poblar datos de prueba

Genera un lote, descarga el archivo de texto y cárgalo en fixtures o en una migración.

GUID de Windows y .NET

Las claves del registro, los identificadores de clase COM y los atributos de .NET quieren la forma en mayúsculas entre llaves, que el ajuste GUID produce directamente.

ID estables desde URL o correos

Un UUID v5 de un espacio de nombres y un nombre es reproducible, así que dos sistemas que no se hablan pueden derivar el mismo identificador para la misma cosa.

Identificadores públicos cortos

Un NanoID de 12 caracteres cabe en una URL donde un UUID de 36 no; la tabla muestra lo que eso cuesta en aleatoriedad.

Leer un identificador desconocido

Un UUID en un registro dice más de lo que parece: el decodificador recupera cuándo se creó un v1, un v6 o un v7, con precisión de milisegundos.

¿Por qué usar este generador de UUID?

Lotes que de verdad van ordenados

La mayoría de generadores sacan cada v7 de forma independiente, así que un lote creado dentro del mismo milisegundo comparte marca de tiempo y acaba en orden aleatorio, que es justo lo contrario de por qué se elige v7. Aquí los bits posteriores a la marca son un contador de semilla aleatoria que solo avanza, de modo que 1000 v7 generados a la vez salen en orden de creación.

Todas las versiones que define el RFC

v1, v3, v4, v5, v6 y v7, además de los UUID Nil y Max. La versión 6 falta en casi todas las herramientas y es precisamente la que hay que usar cuando un sistema ya va con v1 y necesitas que las claves ordenen.

Las cinco formas escritas, en vivo

Canónica, 32 caracteres sin guiones, mayúsculas, la forma GUID de Windows entre llaves y la forma URN. Cambia entre ellas y los valores que ya están en pantalla cambian contigo.

Un decodificador que sabe decir no

Pega un UUID y te devuelve la versión, la variante, la marca de tiempo incrustada y los rangos de bytes que ocupa cada campo. Pega algo que solo parece un ID y te dice por qué no lo es, en vez de etiquetarlo con aplomo.

Espacios de nombres propios para v3 y v5

Cualquier UUID sirve como espacio de nombres. Los cuatro de la lista son los que registra el RFC 9562, pero las aplicaciones reales acuñan el suyo, así que puedes pegar el tuyo.

Privado y sin conexión

La generación y la decodificación ocurren en tu navegador con la fuente aleatoria de Web Crypto. Ningún identificador que crees o inspecciones sale de la página.

Preguntas frecuentes

UUID significa identificador único universal. Es un número de 128 bits, escrito como 32 dígitos hexadecimales agrupados 8-4-4-4-12, diseñado para que cualquiera pueda generar uno en cualquier momento sin coordinarse con nadie y seguir confiando en que nunca se había generado antes.

GUID significa identificador único global y es el término de Microsoft para un UUID. Los bits son idénticos y ambos son intercambiables. La única diferencia real es de convención: las herramientas de Microsoft suelen escribir un GUID en mayúsculas y entre llaves, como en {019A0C2E-7D51-7B8E-9F42-6AC3D0B81E77}. Activa Mayúsculas y Llaves arriba y esta página produce exactamente esa forma.

Desactiva el conmutador Guiones. Los guiones no llevan información alguna —son una convención de legibilidad de la forma canónica—, así que quitarlos deja los mismos 32 dígitos hexadecimales y los mismos 128 bits. La forma de 32 caracteres es habitual en URL, nombres de archivo y columnas compactas de base de datos, y el decodificador de esta página la lee sin problema.

Un v4 son 122 bits aleatorios y nada más, así que dos v4 creados con un segundo de diferencia no guardan relación. Un v7 gasta los primeros 48 bits en una marca de tiempo Unix en milisegundos y llena los 74 restantes con aleatoriedad, de modo que los valores v7 ordenan por fecha de creación como simples cadenas. Eso importa en las claves primarias: las claves aleatorias dispersan las inserciones por todo un índice B-tree, mientras que las ordenadas por tiempo se añaden al final. Ambos son de 128 bits y ambos son únicos en la práctica.

En esta página sí, para v6, v7 y ULID. Vale la pena preguntarlo, porque una implementación ingenua falla justo aquí: una marca de tiempo solo avanza cada milisegundo, así que un lote de mil generado dentro de un mismo milisegundo comparte marca y queda ordenado únicamente por sus bits aleatorios, es decir, sin orden. El RFC 9562 §6.2 trata esto directamente y pide a las implementaciones que añadan un contador. Esta página usa el método Monotonic Random del RFC, en el que los bits posteriores a la marca son un contador de semilla aleatoria que avanza una cantidad aleatoria por cada ID del mismo milisegundo.

Usa v4 para un valor único de uso general. Usa v7 para todo lo que acabe siendo clave primaria o clave de orden. Usa v6 en lugar de v7 cuando un sistema ya esté construido sobre v1 y necesites claves ordenables sin cambiar el diseño de campos. Usa v5 cuando el identificador deba ser reproducible a partir de un nombre. v1 solo merece la pena por compatibilidad con algo que ya lo espera, y v3 solo donde MD5 sea ya el hash acordado: v5 es la misma idea con SHA-1.

La versión 6 llegó con el RFC 9562 en 2024 y es una versión 1 con la marca de tiempo reordenada. Un v1 guarda primero la parte menos significativa de la marca, y por eso los valores v1 no ordenan; un v6 guarda primero la más significativa, y por eso sí lo hacen. Todo lo demás —la secuencia de reloj, el campo de nodo, los anchos de campo— no cambia, así que v6 encaja en un sistema que ya guarda UUID v1. La mayoría de generadores son anteriores al RFC y sencillamente nunca lo añadieron. Este lo genera y lo decodifica.

Para un v4 la respuesta es que prácticamente no, y la cifra se deriva en vez de repetirse de oídas. Un v4 lleva 122 bits aleatorios, y la paradoja del cumpleaños sitúa la probabilidad del 50 % de una sola colisión en torno a 1,1774 × la raíz cuadrada de 2 elevado a 122, es decir, unos 2,7 trillones de UUID. Generando mil millones por segundo, llegarías ahí en unos 86 años. Las cifras desarrolladas aparecen bajo los resultados para el esquema que elijas, incluidos los NanoID cortos, donde el número cae en picado.

La aleatoriedad procede de la Web Crypto API, que es una fuente criptográficamente segura, no Math.random. Dicho eso, único no es lo mismo que impredecible, y para algunos tipos de UUID la pregunta está mal planteada. Un v1 o un v6 expone el instante en que se creó y un valor de nodo. Un v7 expone su milisegundo de creación por diseño. Un v3 o un v5 es el hash de unas entradas que alguien podría adivinar. Si un valor tiene que ser impredecible —un token de sesión, un enlace de restablecimiento de contraseña— usa v4 o un NanoID largo, y nunca una versión basada en tiempo.

Desde esta página, no. El campo de nodo de un v1 era originalmente la dirección MAC de la máquina, que es justamente por lo que v1 cayó en desgracia. El RFC 9562 §6.10 permite usar un nodo aleatorio y exige poner a uno el bit menos significativo de su primer byte —el bit de multidifusión, que una tarjeta de red real nunca tiene—, de modo que un nodo aleatorio nunca puede confundirse con uno real. Esta página sortea un nodo aleatorio una vez por visita y lo usa para todos los v1 y v6 que generes, que es lo que haría una sola máquina.

No. El RFC 9562, publicado en mayo de 2024, deja obsoleto al RFC 4122. Mantiene sin cambios las versiones 1 a 5, añade las versiones 6, 7 y 8, define el UUID Max junto al ya existente UUID Nil y da las indicaciones sobre monotonía en lotes que esta página implementa. Varios generadores conocidos siguen describiéndose como herramientas RFC 4122, lo que es una forma práctica de saber si se han actualizado desde 2024.

El UUID Nil son los 128 bits a cero y significa «sin identificador»: es el valor que guardar cuando una columna necesita un UUID y realmente no hay ninguno. El UUID Max, los 128 bits a uno, lo añadió el RFC 9562 como el centinela opuesto: ordena por encima de cualquier otro UUID, lo que lo hace útil como límite superior exclusivo en una consulta por rango. Ninguno se genera; ambos son constantes.

Un ULID son 26 caracteres en base32 Crockford que guardan una marca de tiempo de 48 bits en milisegundos y 80 bits aleatorios. Ordena por tiempo como un v7 y es diez caracteres más corto que un UUID, a costa de no ser un UUID: cualquier cosa que espere una columna de tipo uuid lo rechazará. Un NanoID es un token aleatorio simple de un alfabeto de 64 símbolos seguro para URL, con la longitud que decidas; los 21 caracteres por defecto llevan 126 bits, algo más que un v4. Elige ULID cuando quieras algo ordenable y compacto, NanoID cuando lo quieras corto y público, y un UUID cuando algo aguas abajo espere el formato estándar.

Porque no puede, y ninguna otra herramienta tampoco. Un UUID lleva un nibble de versión y unos bits de variante, y un ULID tiene una longitud y un alfabeto que lo fijan: eso son estructuras que un decodificador puede leer. Un NanoID no tiene ninguna: son solo caracteres de un alfabeto de 64 símbolos, así que un NanoID, un token de sesión y una palabra corriente son indistinguibles a simple vista. Por eso el decodificador informa de la longitud y de la aleatoriedad máxima que cabría en esos caracteres, y se detiene antes de nombrar un formato. Solo el sistema que emitió el token puede validarlo.