Como contar palavras e caracteres (e por que os números divergem)
Cole este texto no contador de palavras e confira os números antes de discutir teoria.
Olá mundo. Este é um exemplo curto para o contador de palavras.
Com locale pt, a biblioteca do site devolve 12 palavras, 63 caracteres com espaços, 52 sem espaços, 2 frases, 1 parágrafo e 1 linha. Leitura a 200 PPM: 4 segundos. Fala a 130 PPM: 6 segundos. Se outro site mostrar outro total para a mesma frase, o problema quase sempre é a definição, não “erro mágico.”
Por que ferramentas discordam
“Palavra” e “caractere” não são leis universais. Um hífen em “bem-vindo”, um emoji ou um espaço colado no fim mudam o placar. Este contador deixa o método explícito: Intl.Segmenter no idioma ativo quando existe, normalização NFC, caracteres por grafema e exclusão de marcas de largura zero dos totais de caracteres. Sem esse aviso, duas pessoas brigam por um número que nasceu de regras diferentes.
Checklist rápido
- Fronteira de palavra: só espaços versus segmentação linguística.
- Modelo de caractere: grafemas, pontos de código ou unidades UTF-16.
- Caracteres ocultos: largura zero, hífens suaves, controles de direção.
- Normalização: NFC versus acentos decompostos.
- Limites: segmento SMS GSM 160 não é o mesmo teto que UCS-2 70.
Mude uma variável de cada vez quando for comparar dois contadores. Primeiro limpe o texto, depois normalize, só então compare palavras.
Português e diacríticos
Palavras como ação contam como 4 caracteres grafema depois da NFC. Se um editor contar pontos de código sem normalizar, o “ç” ou o til podem inflar o número. Antes de cortar uma legenda “por um caractere”, peça o modelo do limite. Em títulos de anúncio e legendas de vídeo isso acontece o tempo todo.
Espaços entre palavras entram em “com espaços” e saem de “sem espaços.” Nenhum dos modos deveria somar ZWSP copiado de mensagem. Texto vindo de celular costuma trazer esses restos sem você perceber.
O que conta como palavra
Com Segmenter, palavra é segmento lexical do locale, não qualquer bloco entre espaços. Sem Segmenter, o fallback usa padrões Unicode e ainda ignora pontuação pura. Isso importa em português quando há números misturados com texto ou quando a frase mistura português e inglês.
Frases, parágrafos e linhas
Frases usam segmentação frasal quando possível. Parágrafos são blocos não vazios separados por linha em branco. Linhas seguem Enter no campo: quebra suave na tela ainda é uma linha só.
Exemplo com dois parágrafos
Primeiro parágrafo.
O segundo parágrafo traz mais palavras aqui.
Resultado: 9 palavras, 2 frases, 2 parágrafos, 3 linhas. A palavra parágrafo aparece 2 vezes nas repetidas. Ferramentas que ignoram linhas vazias vão reportar menos linhas com as mesmas palavras. Se você precisa bater com um formulário escolar, alinhe também a regra de linha em branco.
Repetições sem lista de stopwords
A lista de mais repetidas só unifica maiúsculas e minúsculas no locale e ordena por frequência bruta. Não remove “de” nem “para.” Serve para rascunho e revisão, não para SEO artificial.
Gato gato GATO cachorro cachorro ave
gato sai 3 vezes, cachorro 2 vezes; ave não entra porque aparece uma vez.
Tempo e fórmula
Os segundos usam ceil(palavras ÷ PPM × 60). Doze palavras a 200 PPM pedem menos de um décimo de minuto; o arredondamento para cima explica os 4 segundos de leitura. Baixe as PPM de fala e o tempo falado cresce sem mudar o total de palavras. Isso ajuda quem ensaiia um roteiro curto no celular.
Como usar a ferramenta
- Abra o contador de palavras.
- Digite ou cole o texto (
dir="auto"acompanha a direção do conteúdo). - Ajuste PPM de leitura e fala se o público for diferente da média.
- Opcional: limite de caracteres (presets SMS ou valor próprio).
- Copie as estatísticas quando precisar de um resumo.
Colagens grandes são analisadas com pequeno atraso para a página não travar. Nada sobe para servidor. Pode colar tarefa, legenda ou mensagem longa e ver o resultado ao vivo.
Erros comuns
Comparar só o número grande. Sem o método, a comparação não serve.
Recortar no modelo errado. Grafema versus ponto de código muda o que “sobra” no limite.
Tratar tempo de leitura como garantia. PPM é hipótese. Mude para voz alta ou público técnico.
Esquecer Enter duplo. Isso cria parágrafo e linha extras.
Confiar em limite de rede social sem fonte. Prefira limites documentados e um teto personalizado quando a regra for opaca.
Experimente agora
Confirme 12 / 63 / 52 na amostra “Olá mundo”, depois a linha dos gatos. Alterne o limite SMS GSM 160 só para ver o restante sob um teto documentado. Se o total não bater, procure caracteres ocultos antes de culpar a ferramenta.
Perguntas frequentes
Por que dois contadores mostram totais diferentes para o mesmo texto?
Eles costumam discordar sobre o que é palavra (hífens, contrações, emoji) e se caractere significa grafema ou ponto de código. Compare o método, não só o número grande.
Emoji conta como um caractere aqui?
Sim quando há Intl.Segmenter. Os totais usam aglomerados grafema, então um emoji ou letra acentuada conta como um símbolo percebido. Marcas de largura zero ficam de fora.
Qual a diferença entre caracteres com espaços e sem espaços?
Com espaços inclui grafemas de espaço. Sem espaços os omite. Ambos excluem caracteres de formato de largura zero.
Como os tempos de leitura e fala são estimados?
Segundos = ceil(palavras ÷ PPM × 60). Padrão: 200 PPM de leitura e 130 de fala. Você pode alterar as duas velocidades na ferramenta.
Meu texto vai para um servidor?
Não. O contador roda no navegador e não armazena o que você digita.
Devo confiar no limite de um app social?
Só se o produto documentar. Aqui há presets verificados de SMS (160 GSM e 70 UCS-2) e limite personalizado.