La herramienta que necesitas, lista para usar

Generador de UUID

Elige la versión y la cantidad y los UUID aparecen al instante. v4 es un valor aleatorio, v7 se ordena según el momento en que se creó, y v5 da siempre el mismo valor para el mismo nombre. El análisis por campos reparte los 128 bits del UUID elegido en cinco grupos para mostrar dónde están la versión, la variante y la hora, y si pegas otro UUID lee su versión y su hora de creación. Todo el cálculo se hace dentro de este navegador.

Última modificación 2026-10-22Todo el cálculo ocurre en tu navegador
Versión de UUID
UUID

Letras
Formato
Salida

    Los UUID se generan y se leen dentro de este navegador. No se envían a ningún servidor ni se guardan.

    Última modificación 2026-10-22No guardamos lo que escribes

    Criterio ROBERINLa herramienta que necesitas,
    lista para usar.
    • Claro a primera vistaEntradas y resultados donde los esperas.
    • Primero el resultadoLa cifra clave va primero; el proceso solo cuando lo necesitas.
    • Pedir menosSin registro ni datos innecesarios.

    Un UUID es un ID de 128 bits que no se repite sin que nadie reparta números desde un punto central

    Un UUID (Universally Unique IDentifier) es un identificador de 128 bits, es decir, de 16 bytes. Suele escribirse con 32 dígitos hexadecimales separados en grupos 8-4-4-4-12, como 0192f3a1-7c4e-7b21-9a3f-5c2d8e1f4a6b. Lo esencial es que no hace falta un servidor que lleve la cuenta de los números: los valores que crean por su cuenta equipos distintos no coinciden en la práctica. En entornos Microsoft se le llama GUID.

    El estándar vigente es RFC 9562, publicado en mayo de 2024, que sustituye al veterano RFC 4122. Contempla las versiones 1 a 8, pero al crear un ID nuevo se suele elegir entre tres. v4 es casi por completo aleatorio, v7 lleva al principio la hora de creación y por eso se puede ordenar, y v5 se basa en un nombre, de modo que el mismo nombre da siempre el mismo valor. Esta herramienta genera las tres versiones y, si pegas cualquier UUID, lee su versión y su marca de tiempo.

    Cuándo conviene generar UUID por tu cuenta

    Si la base de datos ya numera las filas, ¿para qué crear IDs aparte? Porque a veces los números no se asignan en un único lugar, o hace falta el ID antes de guardar nada.

    • Datos de prueba y de ejemplo: para datos ficticios, como 30 usuarios o 200 pedidos, se necesitan muchos IDs distintos de golpe. Indica la cantidad y pega el resultado directamente como array JSON o como lista SQL.
    • IDs decididos antes de guardar: una aplicación sin conexión, o una pantalla que guarda en varios pasos, debe fijar los IDs antes de enviarlos al servidor para mantener las relaciones. Un UUID es único se cree donde se cree, así que no hay que esperar la respuesta del servidor.
    • Unir datos de varios orígenes: las tablas numeradas desde 1 en cada sucursal chocan al combinarse. Si desde el principio usaban UUID, no hay que renumerar nada al unirlas.
    • Nombres de archivos y objetos: si renombras los archivos subidos con un UUID, dos archivos con el mismo nombre no se sobrescriben.
    • Seguimiento de peticiones y tareas: cuando una petición pasa por varios servicios, registrar el mismo UUID en cada uno permite enlazar en una sola traza los registros dispersos.
    • El mismo ID para lo mismo: si algo ya tiene un nombre único, como una dirección o un código de producto, y quieres darle siempre el mismo UUID, usa v5. Cualquier servidor calcula el mismo resultado, así que no hace falta intercambiar tablas de IDs.

    Cómo se usa

    1. Elige la versión en la parte superior. Si no sabes cuál, consulta la comparación de versiones más abajo. Al abrir la página ya hay 10 UUID v4 generados.
    2. Con v4 y v7, indica la cantidad (de 1 a 1.000) y pulsa Generar. Los botones 1, 10, 100 y 1.000 generan esa cantidad al instante. Con v5, elige un espacio de nombres y escribe un nombre por línea; cada línea da un UUID.
    3. En el panel de salida elige las letras (minúsculas o mayúsculas), el formato (8-4-4-4-12, sin guiones, llaves, urn:uuid:) y la salida (uno por línea, array JSON, lista SQL). El valor no cambia, solo la notación, y se copia y se guarda tal como aparece en la lista.
    4. Al pulsar una fila de la lista, ese UUID se despliega en el análisis por campos. Copia uno con el icono de copiar al final de la fila o con el botón Copiar del análisis, o pasa la lista entera con Copiar todo o Guardar archivo. En la lista te mueves con las flechas y Enter copia esa fila.
    5. Para analizar un UUID que te llegó de otro sitio, pégalo en la casilla situada sobre el análisis. También lee llaves, urn:uuid:, comillas y los 32 dígitos sin guiones, y muestra la versión y la variante, además de la hora de creación en v7, v1 y v6.

    v4, v7 o v5: ¿cuál elegir?

    Las tres versiones que se suelen elegir para IDs nuevos, según RFC 9562
    VersiónCon qué se construyeAl ordenarQué revela el valorPara qué sirve
    v4122 bits aleatoriosDesordenadoNadaIDs visibles desde fuera, identificadores relacionados con la seguridad, la mayoría de los usos generales
    v7Hora en milisegundos de 48 bits + 74 bits aleatorios (o un contador)Orden de creaciónLa hora de creación (en milisegundos)Claves primarias de bases de datos, registros que se acumulan en el tiempo
    v5UUID del espacio de nombres + SHA-1 del nombreDesordenadoQuien conoce el nombre puede recrear el mismo valorDar siempre el mismo ID a algo que ya tiene un nombre único (URL, dominio, etc.)

    La razón principal para elegir v7 es el orden. RFC 9562 explica que con UUID ordenados por tiempo los valores nuevos se insertan cerca unos de otros en el índice de la base de datos, lo que mejora su localidad, y que la diferencia respecto a insertar valores aleatorios puede ser de 10 veces o más en la práctica. En cambio, la sección de seguridad del mismo documento dice que, si el UUID se usa en tareas de seguridad, se use v4. Un v7 lleva la hora de creación tal cual, así que con solo ver un ID público se puede saber cuándo se creó el dato.

    v1 y v6 también llevan una marca de tiempo, pero ponen la dirección MAC del dispositivo como valor de nodo, por lo que RFC 9562 recomienda v7 en lugar de v1 y v6 siempre que sea posible. v3 es por nombre como v5, pero usa MD5, y el estándar indica que, si es posible, se use v5 en lugar de v3. Por eso esta herramienta genera solo v4, v7 y v5, y las demás versiones solo las lee en la casilla de análisis.

    Cómo leer un UUID

    De los 36 caracteres, solo dos posiciones tienen un significado fijo. El carácter 13, contando sin guiones (el primero del tercer grupo), es la versión, y los dos primeros bits del carácter 17 (el primero del cuarto grupo) son la variante. En la variante de RFC 9562 esos bits son 10, de modo que el carácter 17 es 8, 9, a o b. Lo que ocupa los otros 122 bits depende de la versión.

    Disposición de bits de los cinco grupos (RFC 9562 5.4, 5.5, 5.7)
    GrupoCaracteresBitsv4v7v5
    1832AleatorioHora (ms), primeros 32 bitsSHA-1
    2416AleatorioHora, últimos 16 bitsSHA-1
    3416Versión 4 + 12 aleatoriosVersión 7 + 12 de rand_aVersión 5 + 12 de SHA-1
    4416Variante 2 + 14 aleatoriosVariante 2 + 14 aleatoriosVariante 2 + 14 de SHA-1
    51248AleatorioAleatorioSHA-1

    Si pegas en la casilla de análisis los valores de ejemplo del apéndice de RFC 9562, el análisis por campos muestra esa misma disposición.

    Valores de ejemplo del apéndice A de RFC 9562
    VersiónUUIDLo que se lee en él
    v4919108f7-52d1-4320-9bac-f847db4148a8Carácter 13: 4; carácter 17: 9 (binario 1001, primeros dos bits 10)
    v7017f22e2-79b0-7cc3-98c4-dc0c0c07398fLos primeros 12 caracteres 017f22e279b0 = 1.645.557.742.000 ms = 2022-02-22 19:22:22.000 UTC
    v52ed6657d-e927-568b-95e1-2665a8aea6a2Primeros 128 bits del SHA-1 del espacio de nombres DNS + www.example.com, con solo las posiciones de versión y variante sobrescritas

    Los 12 bits de rand_a de v7 los decide quien genera el UUID. Pueden ser simplemente aleatorios, o un contador que sube de 1 en 1 dentro del mismo milisegundo, o una fracción más fina de la hora (RFC 9562 6.2). Esta herramienta usa el contador (Method 1). Al empezar un milisegundo nuevo, el contador arranca con un valor aleatorio de 11 bits; dentro del mismo milisegundo sube de 1 en 1, y si pasa de 4.095 se adelanta la hora en 1 milisegundo. Por eso, aunque generes 1.000 de una vez, el orden de la lista y el orden alfabético de las cadenas coinciden. Los 62 bits siguientes son aleatorios nuevos cada vez.

    Formatos y longitudes

    Cambiar la notación no cambia el valor de 128 bits. Elige el formato que pida el programa que lo va a recibir.

    Un mismo valor v4 de ejemplo de RFC 9562 escrito en varios formatos
    FormatoEjemploLongitudDónde se usa
    Estándar (minúsculas)919108f7-52d1-4320-9bac-f847db4148a836La notación más habitual; el resultado de crypto.randomUUID() del navegador
    Mayúsculas919108F7-52D1-4320-9BAC-F847DB4148A836Herramientas que escriben en mayúsculas, como uuidgen de macOS
    Sin guiones919108f752d143209bacf847db4148a832Nombres de archivo, claves que deben ser más cortas
    Llaves{919108f7-52d1-4320-9bac-f847db4148a8}38Una forma que RFC 9562 cita como salida de algunas implementaciones, como las de Microsoft
    URNurn:uuid:919108f7-52d1-4320-9bac-f847db4148a845Documentos y metadatos que requieren un URN

    RFC 9562 establece que los dígitos hexadecimales pueden escribirse en mayúsculas, en minúsculas o mezclados, y que es el mismo valor. Pero si un programa compara los UUID como simples cadenas, las mayúsculas y las minúsculas cuentan como valores distintos. Dentro de un mismo sistema, conviene unificar la notación.

    Cómo generarlos en código, bases de datos y terminal

    Según la documentación oficial a 22 de octubre de 2026
    Entornov4v7
    Navegador, Node.jscrypto.randomUUID()Sin función incluida
    Python 3.14 o posterioruuid.uuid4()uuid.uuid7()
    PostgreSQL 18gen_random_uuid(), uuidv4()uuidv7()
    .NET 9 o posteriorGuid.NewGuid()Guid.CreateVersion7()
    PowerShellNew-GuidSin función incluida
    Terminal de macOSuuidgenSin función incluida
    Linux (util-linux)uuidgenuuidgen -7
    • Navegador, Node.js: randomUUID de W3C Web Cryptography solo genera v4.
    • Python 3.14 o posterior: 3.14 añadió uuid6, uuid7 y uuid8; uuid7 mantiene el orden dentro del mismo milisegundo con un contador de 42 bits.
    • PostgreSQL 18: lee la versión y la hora con uuid_extract_version(), uuid_extract_timestamp().
    • .NET 9 o posterior: NewGuid genera v4.
    • PowerShell: genera un GUID aleatorio.
    • Terminal de macOS: escribe el resultado en mayúsculas.
    • Linux (util-linux): por defecto es aleatorio si hay una buena fuente de aleatoriedad. Un v5 se crea con uuidgen --sha1 --namespace @dns --name www.example.com. Según la versión de util-linux de tu distribución, puede que falte -7.

    Qué tan pequeña es la probabilidad de duplicados

    Un v4 tiene 122 bits aleatorios, así que hay 2122, unos 5,3 × 1036, valores posibles. La probabilidad de que al menos un par coincida entre n valores se aproxima con la fórmula de la paradoja del cumpleaños 1 − e−n(n−1)/(2·2122).

    Probabilidad de que al menos un par coincida entre n UUID v4
    Cantidad generadaProbabilidad
    1 millónalrededor de 9,4 × 10⁻²⁶
    1.000 millonesalrededor de 9,4 × 10⁻²⁰
    1 billónalrededor de 9,4 × 10⁻¹⁴
    1.000 billonesalrededor de 9,4 × 10⁻⁸
    alrededor de 2,7 × 10¹⁸50%

    Para llegar al 50% de probabilidad hacen falta 2,7 × 1018 valores, una cantidad que, incluso a mil millones por segundo, tardaría unos 86 años en generarse. Eso sí, este cálculo supone que los números aleatorios salen con distribución uniforme. Es la razón por la que RFC 9562 pide usar un generador de números aleatorios criptográficamente seguro, y esta herramienta usa crypto.getRandomValues() del navegador. La probabilidad no es cero, así que en datos de producción conviene añadir una restricción de unicidad y, si un choque hace que se rechace el guardado, generar un valor nuevo y reintentar.

    En v7 solo pueden coincidir los valores creados en el mismo milisegundo. Dentro de un mismo generador el contador sube, así que no coinciden; cuando distintos dispositivos crean valores en el mismo milisegundo, los 62 bits aleatorios finales los distinguen.

    Usar v7 como clave de base de datos

    • Guárdalos en binario: RFC 9562 señala que guardar un UUID como texto usa 288 bits para un valor de 128, por lo que recomienda guardarlo como binario de 128 bits siempre que se pueda. Si existe un tipo específico, como el tipo uuid de PostgreSQL, úsalo.
    • Ordena por bytes: los v7 salen en orden de creación si se comparan los bytes desde el principio, o si se ordena alfabéticamente el texto escrito siempre con las mismas letras (todas en minúsculas o todas en mayúsculas). Mezclar mayúsculas y minúsculas rompe el orden del texto.
    • La hora es solo orientativa: los primeros 48 bits de un v7 proceden del reloj del dispositivo que lo creó. RFC 9562 indica que no garantiza cuánto se acerca esa hora a la real, y la documentación de PostgreSQL señala que la hora extraída no coincide necesariamente con la de creación. Si necesitas la hora exacta de creación, guárdala en una columna aparte.
    • Deja que los genere la base de datos: RFC 9562 dice que, cuando todos los datos están en una sola base de datos, los UUID generados por ella son los que mejor conservan el orden. Usa los valores de esta herramienta para datos de prueba o para IDs que hay que fijar de antemano, y para claves que se siguen acumulando en producción es mejor generarlas con una función de la base de datos o del servidor.

    Errores frecuentes

    • Quedarse solo con los 8 primeros caracteres: 8 caracteres son 32 bits, así que la probabilidad de coincidencia llega al 50% con solo unos 77.000 valores. Si quieres algo corto, no tomes el valor recortado por tan único como un UUID.
    • Dar acceso solo porque alguien conoce el UUID: la sección de seguridad de RFC 9562 dice que no se debe asumir que un UUID es difícil de adivinar ni usarlo como valor que concede privilegios por el mero hecho de tenerlo. Aunque un UUID forme parte de una URL compartida, hay que comprobar los permisos por separado.
    • IDs públicos creados con v7: si el número de usuario que se ve en la barra de direcciones es un v7, revela la hora de registro. Donde la hora no deba quedar expuesta, usa v4.
    • Pequeñas diferencias en un nombre v5: www.example.com y www.example.com., los espacios al principio o al final y las diferencias de mayúsculas son nombres distintos y dan UUID distintos. RFC 9562 también explica que un mismo nombre puede escribirse de varias formas y que cada forma da un UUID distinto. Esta herramienta no modifica el nombre y lo calcula tal como lo escribes, en UTF-8.
    • GUID con otro orden de bytes: Guid.ToByteArray() de .NET devuelve los bytes de los tres primeros grupos en orden invertido. Como cadenas coinciden, pero al pasarlos como bytes hay que comprobar el orden.
    • UUID por nombre como clave primaria: RFC 9562 desaconseja usar un UUID por nombre como clave primaria, porque valores que parecían permanentes, como un código postal o un número de licencia, suelen cambiar más adelante.

    Límites y precauciones

    • Genera hasta 1.000 de una vez. En v5 se procesan hasta 1.000 líneas de nombres.
    • El orden de v7 solo se mantiene dentro de esta página. No se garantiza el orden respecto a valores creados en el mismo milisegundo en otra pestaña o en otro dispositivo.
    • La hora de v7 usa el reloj de este dispositivo. Si el reloj está mal, la hora dentro del UUID también lo está.
    • v5 usa SHA-1. RFC 9562 indica que un UUID por nombre creado con otro hash, como SHA-256, debe ser v8 y no v5, y esta herramienta no genera v8.
    • v1, v3, v6 y v8 solo se leen en la casilla de análisis. El valor de nodo de v1 y v6 puede ser la dirección MAC del dispositivo.
    • Los UUID generados desaparecen al recargar la página. Si necesitas la lista, cópiala o guárdala en un archivo.

    Fuentes

    Fecha de referencia La documentación de RFC 9562, W3C Web Cryptography, PostgreSQL 18, Python, .NET, PowerShell y util-linux se consultó en los textos originales el 22 de octubre de 2026. Los valores v4, v7 y v5 de las tablas de ejemplo se contrastaron para comprobar que dan el mismo resultado en esta herramienta y en el módulo uuid de Python 3.14, y la tabla de probabilidades se calculó con la fórmula anterior.

    Preguntas frecuentes

    ¿Debo usar UUID v4 o v7?

    v7 es lo adecuado donde conviene que los valores nuevos se añadan en orden al final del índice, como en las claves primarias de una base de datos. Los primeros 48 bits son la hora de creación, así que incluso ordenado como cadena sale el orden de creación. Usa v4 para valores que no deban revelar cuándo se crearon y para identificadores relacionados con la seguridad. RFC 9562 también dice que, si el UUID se usa en tareas de seguridad, se use v4.

    ¿Cuántos caracteres tiene un UUID?

    La notación estándar tiene 36 caracteres: 32 dígitos hexadecimales más 4 guiones. Sin guiones son 32, con llaves son 38 y con el prefijo urn:uuid: son 45. El valor en sí es de 128 bits, es decir, 16 bytes.

    ¿Cómo compruebo la versión de un UUID?

    La versión es el primer carácter del tercer grupo, es decir, el carácter 13 contando sin guiones. Si el primer carácter del cuarto grupo es 8, 9, a o b, es la variante de RFC 9562. Si pegas un UUID en la casilla de análisis de esta herramienta, lee la versión y la variante, además de la hora de creación en v7, v1 y v6.

    ¿Qué probabilidad hay de que se repita un UUID v4?

    Un v4 tiene 122 bits aleatorios, así que incluso tras generar 1.000 millones, la probabilidad de que dos coincidan es de solo unos 9,4 × 10⁻²⁰. Harían falta unos 2,7 × 10¹⁸ valores para llegar a un 50% de probabilidad de choque. No es cero, así que en datos de producción añade también una restricción de unicidad.

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

    Sí. Los primeros 12 caracteres (48 bits) son los milisegundos contados desde el 1 de enero de 1970 UTC. Si lo pegas en la casilla de análisis, muestra la hora en la zona horaria de tu dispositivo y en UTC. Eso sí, el valor lleva sin más el reloj del dispositivo que lo creó, así que no se puede dar por un registro exacto de la hora.

    ¿Cuándo se usa UUID v5?

    Se usa cuando necesitas obtener siempre el mismo UUID a partir del mismo nombre. Se concatenan el UUID del espacio de nombres y el nombre, se calcula SHA-1 y se usan los primeros 128 bits. Por ejemplo, el espacio de nombres DNS y www.example.com dan 2ed6657d-e927-568b-95e1-2665a8aea6a2 se calcule donde se calcule. Si cambia un solo carácter, el valor es totalmente distinto.

    ¿Puedo usar un UUID como contraseña o token de autenticación?

    No. RFC 9562 dice que no se debe asumir que un UUID es difícil de adivinar ni usarlo como valor que concede acceso por el mero hecho de tenerlo. Una URL que contiene un UUID también necesita una comprobación de permisos, y los tokens secretos deben emitirse aparte con un método adecuado para ese fin.

    ¿GUID y UUID son cosas distintas?

    Son dos nombres para el mismo identificador de 128 bits. RFC 9562 también señala que a veces a un UUID se le llama GUID. Sin embargo, la forma de Microsoft usa little-endian al guardarse como binario. Por ejemplo, Guid.ToByteArray() de .NET devuelve invertido el orden del primer grupo de cuatro bytes y de los dos grupos siguientes de dos bytes, así que al intercambiarlos como bytes conviene comprobar el orden.