Cómo generar números aleatorios
- Elige qué quieres: un número aleatorio en un rango personalizado, una tirada de dado (1-6), o un lanzamiento de moneda (cara/cruz).
- Para un rango personalizado, ajusta el Mínimo y el Máximo, se ignoran para los presets de dado y moneda, que usan sus propios rangos fijos.
- Ajusta ¿Cuántos números? para generar un solo resultado o un lote entero (hasta 1000).
- Marca opcionalmente Sin repeticiones para solo valores únicos, y Ordenar resultados para verlos en orden ascendente.
- Haz clic en Generador de Números Aleatorios, los resultados aparecen al instante, uno por línea, listos para copiar.
No hay ningún archivo que subir, esta es una herramienta de un clic y resultado instantáneo que se ejecuta enteramente en tu propio dispositivo.
Aleatoriedad real, no un patrón previsible
Esta herramienta usa crypto.getRandomValues(), la fuente de números aleatorios criptográficamente segura de la Web Crypto API (la misma calidad de aleatoriedad que usan los navegadores para claves de cifrado) en lugar del más débil y genérico Math.random(). Además, cada extracción pasa por muestreo por rechazo: en lugar de un ingenuo valor % rango (que está sutilmente sesgado siempre que el rango no divida exactamente 2^32), la herramienta descarta cualquier extracción que introduciría sesgo y vuelve a tirar, garantizando que cada número de tu rango elegido tiene exactamente la misma probabilidad de aparecer.
Número único o generación masiva
¿Necesitas solo un número entre 1 y 100? Deja la cantidad en 1. ¿Necesitas 50 números de rifa, un lote de datos de prueba, o una muestra para un ejercicio de estadística? Ajusta la cantidad hasta 1000 y cada valor cae en su propia línea, listo para copiar todo de una vez.
Sin repeticiones, cuando necesitas valores distintos
Elegir números de lotería, asignar entradas únicas de rifa, o barajar una lista de identificadores requieren todos valores que nunca se repitan dentro de un lote. Marca Sin repeticiones y el generador extrae solo números distintos, si el rango es demasiado pequeño para el tamaño de lote que pediste (p. ej. 10 números únicos de un rango 1-5), te lo indica con claridad en lugar de colgarse o darte duplicados silenciosamente.
Tiradas de dados y lanzamientos de moneda
Más allá de rangos arbitrarios, esta herramienta incluye dos presets clásicos para cuando no tienes a mano dados físicos o una moneda: una tirada de dado (del 1 al 6) y un lanzamiento de moneda (Cara o Cruz). Ajusta la cantidad para tirar varios dados o lanzar varias monedas a la vez, útil para noches de juegos de mesa, ejercicios de probabilidad, o zanjar una discusión de forma justa.
La trampa del módulo en la que cae la mayoría de sorteadores aleatorios
Hay un fallo tan común en el código de números aleatorios que tiene nombre propio. Tomas un byte o una palabra aleatoria, tomas el resto contra tu rango, y das el trabajo por hecho. Parece correcto, pasa una inspección superficial, y es demostrablemente incorrecto.
La razón es aritmética. Una palabra de 32 bits tiene 4.294.967.296 valores posibles. Si tu rango tiene 100 de ancho, eso no divide de forma exacta, así que los valores sobrantes de la parte alta del espacio dan la vuelta y aterrizan en los primeros números de tu rango una fracción más a menudo que en el resto. Con un puñado de extracciones no lo notarás nunca. En un sorteo con diez mil participantes, o en una simulación, el sesgo es real.
Este generador descarta esos sobrantes. Calcula el mayor múltiplo exacto de tu rango que cabe dentro de 32 bits, extrae palabras hasta que una cae por debajo de esa línea, y solo entonces toma el resto. Las palabras por encima de la línea se descartan y se vuelve a extraer. El coste es alguna extracción extra ocasional; el beneficio es una distribución genuinamente plana.
Dos formas de pedir algo imposible
Un mínimo por encima del máximo se rechaza en lugar de intercambiarse calladamente. Quien escribe 100 y después 1 casi con seguridad ha cometido una errata, y reinterpretarlo en silencio escondería el error tras un resultado de aspecto plausible.
Pedir más valores únicos de los que el rango puede suministrar también se rechaza, y este importa más de lo que parece. Sin la comprobación, una petición de diez valores distintos de un rango de cinco seguiría extrayendo eternamente buscando un sexto que no existe, y la pestaña se quedaría bloqueada. El recuento contra el tamaño del rango ocurre antes de la primera extracción, así que el rechazo es instantáneo.
Los dos rechazos son honestos dentro del código e invisibles en pantalla. El contenedor que envuelve esta herramienta captura todo lo que una herramienta lanza y muestra una única frase fija sobre que algo ha ido mal, así que el diagnóstico concreto nunca te llega. Si te encuentras ese aviso, mira tu rango y tu casilla de sin repeticiones antes que nada.
Elegir la herramienta adecuada a la forma de tu sorteo
Un número no siempre es lo que quieres en realidad. Si estás eligiendo a una persona y no un valor, la Ruleta de Nombres gira sobre una lista que pegues y se detiene en una entrada. Para un cuadro de eliminatorias o un conjunto de grupos equilibrados, el Generador de Equipos Aleatorios y el Generador de Brackets de Torneo hacen el reparto por ti en lugar de obligarte a mapear números de vuelta a nombres.
Para una partida de mesa, el Tirador de Dados te da la versión animada del preajuste de seis caras de aquí, y Cara o Cruz hace lo mismo para el caso de dos resultados. Cuando el valor aleatorio es un secreto y no una elección, usa el Generador de Contraseñas, que extrae de la misma fuente criptográfica con la misma disciplina de muestreo por rechazo aplicada a nivel de byte.
Privado, porque nada sale jamás de tu dispositivo
Cada número se genera con una sola línea de JavaScript nativo del navegador, sin llamada a un backend, sin registro, sin forma de que un tercero vea qué generaste o cuándo. También funciona sin conexión, una vez que la propia página ha cargado.
Usos habituales
- Elegir números de lotería, ganadores de rifa, o entradas de sorteo.
- Tirar dados virtuales para juegos de mesa, rol de mesa, o ejercicios de probabilidad.
- Lanzar una moneda virtual para tomar una decisión rápida y justa.
- Generar identificadores de muestra aleatorios o datos de prueba para estadística y trabajo de control de calidad.
- Elegir aleatoriamente un elemento de una lista numerada (p. ej. “elige un número 1-30” para una lista de clase).
- Elegir un jugador inicial aleatorio, orden de semillas, o posición de salida para un torneo o noche de juego.
- Impulsar la selección aleatoria y no sesgada de palabras/dígitos del Generador de Frase de Contraseña, mediante exactamente la misma función
randomInt.

