Contar palabras únicas en un texto: total, top 10 y frecuencias
Una frase de 15 palabras sobre un gato y una alfombra puede tener solo 9 distintas, con el artículo the repetido 4 veces. Verá el total, las palabras únicas y las diez más frecuentes, sin distinguir mayúsculas. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
El contador de palabras únicas lee un texto y responde dos preguntas a la vez: cuántas palabras distintas contiene si se ignoran las mayúsculas, y cuáles lo dominan. Usted obtiene el total de palabras, el número de palabras únicas y una lista ordenada de las diez más frecuentes con sus conteos exactos. Es la forma más rápida de perfilar un documento antes de editarlo, indexarlo o analizarlo: una sola llamada en lugar de una fórmula de hoja de cálculo o un script desechable.
Qué le revela el conteo de palabras únicas
El conteo bruto de palabras por sí solo es una señal débil. Un párrafo de 500 palabras construido con 480 palabras distintas se lee de forma muy diferente a otro que repite las mismas 40 palabras doce veces cada una, y la métrica de palabras únicas es lo que separa ambos casos.
Los redactores la usan para detectar repeticiones que ya no notan; los editores, para juzgar la riqueza del vocabulario; los especialistas en búsqueda, para ver si una página realmente cubre un tema o solo gira en torno a una frase. Esta capacidad devuelve el conteo único junto al total, de modo que la proporción entre ambos —a menudo llamada diversidad léxica— está a una resta de distancia.
Como el conteo no distingue mayúsculas, una oración que empieza con "El" y luego usa "el" dos veces sigue contando como una sola palabra única con tres apariciones, que es lo que casi siempre se quiere decir al preguntar cuántas palabras distintas usa un texto. Los números también cuentan como palabras, así que un informe cargado de cifras se mide con honestidad en lugar de descartar silenciosamente la mitad de sus tokens.
Cómo se reconocen y se clasifican las palabras
La tokenización tiene en cuenta Unicode: una palabra es una secuencia de letras o dígitos en cualquier escritura, opcionalmente unida por apóstrofos o guiones internos, de modo que "l'amour", "well-known" o "tío-abuelo" cuentan como una sola palabra, mientras que la puntuación, los emoji y los espacios actúan como separadores. Cada token se convierte a minúsculas antes de entrar en el mapa de frecuencias, y la primera forma encontrada es la que se muestra en los resultados, preservando la ortografía original de su texto.
La respuesta lista las diez palabras más frecuentes en orden de clasificación con sus conteos exactos; cuando dos palabras empatan, la que apareció primero en el texto se clasifica más arriba, lo que mantiene la salida estable y reproducible para la misma entrada.
Dónde encaja en flujos de trabajo reales
El uso más común es como paso de preprocesamiento económico. Antes de enviar un documento a un modelo costoso o a un revisor humano, usted lo perfila: ¿es lo bastante largo, es repetitivo, el vocabulario coincide con lo esperado? Los equipos de contenido pasan los borradores por él para detectar la sobreoptimización, cuando una palabra clave aparece cincuenta veces en mil palabras.
Los responsables de localización comparan los conteos de palabras únicas de los archivos de origen y de traducción para detectar segmentos omitidos. Los desarrolladores que crean funciones de búsqueda o etiquetado usan la lista de las diez primeras como extractor de palabras clave de primera pasada antes de pasar a maquinaria más pesada.
Qué puede hacer con ella
Medir la diversidad léxica de un borrador
Compare las palabras únicas con el total de palabras para detectar escritura repetitiva antes de que lo haga un editor.
Perfilar contenido antes de indexarlo
Extraiga las diez palabras más frecuentes como palabras clave candidatas para un índice de búsqueda o una canalización de etiquetado.
Auditar la densidad de palabras clave
Compruebe si una frase objetivo domina una página más allá de lo que se lee de forma natural, con conteos exactos en lugar de conjeturas.
Preguntas frecuentes
¿Cuánto cuesta?
También es gratis ejecutarlo en su navegador en esta página.
¿El conteo distingue mayúsculas y minúsculas?
No. "Palabra", "palabra" y "PALABRA" cuentan como la misma palabra única; el resultado muestra la primera forma que apareció en su texto.
¿Qué cuenta como palabra?
Una secuencia de letras o dígitos Unicode, opcionalmente unida por apóstrofos o guiones internos, de modo que "l'amour" y "tío-abuelo" son palabras únicas. Los números también cuentan.
¿Por qué solo las 10 primeras?
La capacidad devuelve los conteos total y único de todo el texto más las diez palabras más frecuentes como perfil compacto. Eso cubre los casos de uso habituales de perfilado sin enviar un histograma completo.
¿Se almacena el texto?
No. Se procesa en memoria y se descarta; solo se devuelven los conteos.
Herramientas relacionadas
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/text/count-unique-words \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"The cat sat on the mat. The cat was happy, and the mat was warm."}'const res = await fetch("https://api.kit.forhosting.com/text/count-unique-words", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "The cat sat on the mat. The cat was happy, and the mat was warm."
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/text/count-unique-words",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "The cat sat on the mat. The cat was happy, and the mat was warm."
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/text/count-unique-words", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"The cat sat on the mat. The cat was happy, and the mat was warm."}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"The cat sat on the mat. The cat was happy, and the mat was warm."}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/text/count-unique-words", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"text": "The cat sat on the mat. The cat was happy, and the mat was warm."
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "text.count_unique_words",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Límites
max_tokens | 20000 |
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
Cómo se reconocen y se clasifican las palabras
Un texto que no contiene ningún token de palabra —por ejemplo, solo puntuación o emoji— se rechaza con un error invalid_input en lugar de devolver un cero engañoso, de modo que las canalizaciones automatizadas puedan distinguir entre un resultado vacío y una solicitud incorrecta.
Dónde encaja en flujos de trabajo reales
El mismo código que impulsa la API se ejecuta gratis en su navegador en esta página, de modo que puede pegar un borrador, revisar su perfil y solo pagar $0.002 por solicitud cuando lo integre en una canalización automatizada que necesita la respuesta de forma programática, a escala y para cada documento que pasa por ella.
Preguntas técnicas
¿Qué ocurre con un texto que solo tiene puntuación?
Si el texto no contiene ningún token de palabra, la solicitud falla con un error invalid_input y no se factura.