Cada estimación en la tabla anterior asume prosa inglesa con aproximadamente 0,75 palabras por token. Esa proporción es conveniente para matemática de servilleta, pero es un número de una distribución que corre aproximadamente 3x de ancho dependiendo del idioma, conjunto de caracteres y tipo de contenido. Si estás presupuestando una ventana de 200k o 1M tokens para una carga de trabajo multilingüe, planificar a la tasa de inglés rutinariamente quedará corto en el recuento de tokens real por 50-200%. La misma ventana que contiene 150.000 palabras en inglés contiene solo 60-80.000 caracteres chinos, 40-50.000 líneas de JSON bonito, y en algún lugar entre 8.000 y 12.000 líneas de Python dependiendo del estilo.
Comienza con los propios tokenizadores. La familia GPT de OpenAI usa cl100k_base para GPT-4 y GPT-5.x, una codificación de pares de bytes (BPE) entrenada principalmente en texto web en inglés con aproximadamente 100.277 tokens en el vocabulario. Claude de Anthropic usa su propio tokenizador BPE con fusiones comparables pero no idénticas — los recuentos de tokens entre OpenAI y Claude para el mismo pasaje en inglés típicamente difieren entre 1-4% en ambas direcciones. La familia Gemini de Google usa SentencePiece con un vocabulario de aproximadamente 256k tokens, que comprime scripts no latinos más agresivamente que cl100k_base. Llama 4 usa una variante de SentencePiece de 128k. El tamaño del vocabulario y la distribución de entrenamiento determinan cuán eficientemente se comprime un idioma determinado, y la brecha entre modelos en el mismo texto no inglés puede alcanzar 30-40%.
El inglés se comprime bien porque los tokenizadores BPE ven un texto de entrenamiento en inglés enorme y fusionan subcadenas frecuentes ('ing', 'tion', 'the ') en tokens únicos. La tasa de inglés empírica es 0,73-0,78 palabras por token en los tokenizadores fronterizos modernos, o aproximadamente 4 caracteres por token. Los idiomas románicos (español, francés, italiano, portugués) se sientan ligeramente peor — 0,65-0,72 palabras por token — porque los datos de entrenamiento de BPE sesgados en inglés. El alemán funciona 0,55-0,65 porque las palabras compuestas largas a menudo se fragmentan en 2-4 tokens. El ruso y otros idiomas de script cirílico típicamente funcionan 0,4-0,55 palabras por token. El árabe, con palabras morfológicamente ricas y script de derecha a izquierda, a menudo funciona 0,35-0,5.
Los scripts logográficos y silábicos son el caso punitivo. En cl100k_base, un carácter chino típico cuesta 1,5-2,5 tokens — lo que significa que 100k tokens de chino cabe solo 40.000-65.000 caracteres, o aproximadamente la longitud de una única novela de 200 páginas en lugar del lote de 500 páginas que la misma ventana contiene en inglés. El japonés es ligeramente peor que el chino porque kanji, hiragana y katakana se tokenizarse de manera diferente. El Hangul coreano funciona 1,2-1,8 tokens por bloque de sílaba en cl100k_base. Los tokenizadores de SentencePiece (Gemini, Llama 4) reducen esto aproximadamente a la mitad — Gemini maneja un carácter chino más cerca de 0,8-1,2 tokens — que es una razón real por la que los equipos que ejecutan cargas de trabajo de CJK gravitan hacia Gemini o modelos con tokenizadores similares.
El tipo de contenido importa tanto como el idioma. El código es denso en caracteres pero escaso en tokens por carácter (aproximadamente 1 token por 3,5-4,5 caracteres), sin embargo, pesado en tokens por línea porque los identificadores, la puntuación y los espacios en blanco consumen tokens. Una regla práctica: una ventana de 200k tokens contiene 1.600-2.400 líneas de Python densamente comentado, 1.200-1.800 líneas de Java o C#, 800-1.400 líneas de TypeScript con JSX, o 6.000-10.000 líneas de JavaScript minificado. JSON y XML empujan en la otra dirección — son caros en tokens porque cada comilla, llave y etiqueta es su propio token o dos. Una ventana de 200k tokens contiene aproximadamente 40-55k líneas de JSON formateado o 25-35k líneas de XML. Markdown se sitúa entre prosa y código; la notación matemática en LaTeX está entre las peores, funcionando 0,3-0,5 'conceptos' por token porque cada comando de barra invertida, par de llaves e índice se fragmenta fuertemente.
Ejemplo práctico. Una ventana de contexto de 200k tokens contiene aproximadamente: 150.000 palabras en inglés (aproximadamente 500 páginas), 100.000-120.000 palabras en español, 65.000-80.000 caracteres chinos bajo cl100k_base, 110.000-130.000 caracteres chinos bajo el tokenizador de Gemini, 8.000-12.000 líneas de Python, 4.000-6.000 líneas de XML, o 45.000-55.000 líneas de JSON compacto. Una ventana de Gemini 2.5 Pro de 1M tokens contiene aproximadamente 750.000 palabras en inglés pero solo 550.000-650.000 caracteres chinos — aún vastamente más que lo que cl100k_base cabría, pero muy corto de la extrapolación ingenua en inglés. La regla accionable para cargas de trabajo multilingües es presupuestar a 1,5-2x la tasa de token en inglés para scripts no latinos en OpenAI y Claude, y aproximadamente 1,2-1,5x en Gemini y Llama 4.
El consejo práctico: nunca te comprometas a un tamaño de ventana basado únicamente en recuentos de caracteres o recuentos de palabras. Ejecuta tu contenido real a través del propio tokenizador del modelo — la biblioteca tiktoken de OpenAI para GPT, el punto final count_tokens de Anthropic para Claude, la API count_tokens de Google para Gemini — en una muestra representativa de 5-10 documentos reales, luego planifica con un búfer de seguridad de 20-30% además de la tasa medida. El coste de subestimar es concreto: un flujo de trabajo diseñado para 150k palabras en inglés que en realidad se ejecuta en chino golpeará el límite de ventana de 200k en documento 1, fallará silenciosamente o truncará, e implementará respuestas rotas a los usuarios. Mide primero, luego elige la ventana.