Escrever dentro de um limite parece trivial até o texto ser cortado no lugar errado, ou até a fatura do disparo de SMS chegar com o triplo do valor previsto. Os limites de caracteres não são tão firmes quanto parecem: uns são corte visual e não bloqueio, outros dependem de qual acento você usou. Este guia reúne os números que valem na prática, explica por que o mesmo texto conta diferente em cada sistema e detalha a armadilha do SMS em português. Para medir o seu texto enquanto escreve, use o contador de caracteres e palavras.
Resposta rápida
- Title: cerca de 60 caracteres. Meta description: cerca de 160. São cortes de exibição por largura em pixels, não bloqueios.
- SMS: 160 caracteres só sem á, í, ó, ú, ã, õ, ê, ô, â e ç minúsculo. O é cabe. Com qualquer um dos que não cabem, o limite cai para 70.
- Mensagem emendada perde espaço para o cabeçalho: 153 por parte em GSM-7 e 67 em UCS-2.
- Um mesmo texto tem três contagens válidas: por caractere, por unidade UTF-16 e por byte em UTF-8.
Os limites que valem hoje
Os números abaixo são os praticados publicamente. Vale um aviso antes: em redes sociais eles mudam sem comunicado, e em buscador o valor é margem de segurança, não regra.
- Title do Google: cerca de 60 caracteres.
- Meta description: cerca de 160 caracteres.
- Post no X: 280 caracteres para conta comum.
- Bio do Instagram: 150 caracteres, com quebra de linha contando.
- Legenda do Instagram: 2.200 caracteres, mas o feed corta com o botão de continuar por volta de 125.
- Headline do LinkedIn: 220 caracteres, exibida truncada na busca e nos comentários.
- Post no LinkedIn: 3.000 caracteres, com o corte visual por volta de 200.
- Título no YouTube: 100 caracteres, dos quais bem menos aparecem na miniatura do celular.
- Descrição no YouTube: 5.000 caracteres, sendo que só as primeiras linhas ficam visíveis.
- Status de texto do WhatsApp: 700 caracteres.
- SMS: 160 caracteres em GSM-7, 70 em UCS-2.
Para ver quanto o seu texto já ocupa de cada um desses campos, cole o rascunho num contador de caracteres com e sem espaço: ele desenha uma barra por limite e diz quantas palavras cabem no limite que você escolher, pela média de tamanho das suas próprias palavras.
Por que o Google não conta letras
O corte do título no resultado de busca é feito por largura, não por contagem. O limite prático fica em torno de 580 pixels no computador e menos no celular. Isso muda o cálculo: um título com muitas maiúsculas largas, como M, W e A, ocupa bem mais espaço que um do mesmo tamanho cheio de i, l e t. Na prática, 60 caracteres é uma média que costuma caber, e é por isso que a recomendação existe nesse formato.
Duas consequências úteis. A primeira é que passar do limite não é erro nem penalidade: a página indexa normalmente, só o final do título some. A segunda é que a informação que importa deve vir no começo, porque é a parte que sempre aparece. O mesmo vale para a descrição, com o agravante de que o Google reescreve a meta description na maioria dos casos, escolhendo um trecho da página que responda melhor à busca.
A armadilha do SMS em português
Este é o limite que mais custa dinheiro, e quase ninguém sabe da regra. O SMS nasceu com uma codificação de 7 bits por caractere, a GSM 03.38, que permite 160 caracteres em uma mensagem. O problema é o alfabeto dessa codificação: ele foi desenhado nos anos 1980 para as línguas europeias mais comuns, e o português ficou mal servido.
Cabem no GSM-7: à, ä, ö, ñ, ü, è, é, ù, ì, ò, Å, å, Æ, æ, ß, É, Ä, Ö, Ñ, Ü e o Ç maiúsculo. Não cabem: á, í, ó, ú, ã, õ, ê, ô, â e o ç minúsculo. Ou seja, informação, você, serviço, código, não, atenção e opção derrubam a mensagem inteira. Basta um caractere de fora do alfabeto e todo o texto passa para UCS-2, com 16 bits por caractere, e o limite despenca de 160 para 70.
O impacto é concreto. Uma mensagem de 150 caracteres cabe em 1 SMS se escrita sem acento. A mesma mensagem com um único ç vira 3 SMS, porque em UCS-2 cada parte comporta 67 caracteres. Numa campanha de 50 mil disparos, isso multiplica o custo por três. É um dos poucos casos em que escrever sem acento tem justificativa técnica, e vale avaliar caso a caso, porque texto sem acento também passa impressão de descuido.
Antes de disparar, dá para contar caracteres e partes do SMS colando a mensagem: a conta mostra a codificação, em quantas mensagens o texto se divide e qual caractere derrubou tudo para UCS-2. Ao trocar esse caractere, o próximo caractere fora do alfabeto GSM-7 passa a ser apontado, e a mensagem só volta ao limite de 160 quando não sobra nenhum.
Ainda dentro do GSM-7 há uma segunda pegadinha, menor: alguns caracteres existem no alfabeto mas custam duas posições, porque ficam numa tabela de extensão. São o colchete, a chave, a barra invertida, o acento circunflexo solto, o til solto, a barra vertical e o símbolo do euro. Um texto cheio de colchete pode estourar antes do esperado.
Por que 160 vira 153
Quando o texto passa do limite, ele não é enviado como uma mensagem grande. Ele é picado em várias, e cada parte precisa carregar um cabeçalho dizendo quantas partes existem e em que ordem remontar. Esse cabeçalho ocupa espaço útil: em GSM-7 sobram 153 caracteres por parte, e em UCS-2 sobram 67.
Por isso o pulo de custo acontece antes do esperado. Um texto de 161 caracteres não vira uma mensagem cheia mais uma de um caractere: vira duas mensagens de até 153, e as duas são cobradas. O mesmo vale em UCS-2, onde 71 caracteres já custam dois envios.
As três formas de contar um caractere
Um mesmo texto pode ter três contagens diferentes, todas corretas, e é isso que faz um campo aceitar no formulário e recusar no banco.
Por caractere percebido, que o Unicode chama de grafema, é a contagem que corresponde ao que a pessoa enxerga. O á conta 1, uma letra japonesa conta 1, um emoji conta 1, e até a bandeira do Brasil, feita de dois símbolos regionais lado a lado, conta 1. É a contagem que faz sentido mostrar ao usuário. Existe ainda a contagem por ponto de código, que separa cada símbolo definido pelo Unicode: nela a mesma bandeira vale 2, e um emoji de família com três pessoas vale 5.
Por unidade UTF-16 é o que o JavaScript devolve em String.length e o que o SQL Server conta num campo NVARCHAR. Letras e acentos contam 1, mas caracteres fora do plano básico, como a maior parte dos emojis, contam 2. É a origem clássica do bug em que o usuário digita 140 caracteres e o sistema reclama que passou de 140.
Por byte em UTF-8 é o tamanho real em disco e em trânsito, e muitas APIs limitam por aí. Letra sem acento ocupa 1 byte, letra acentuada ocupa 2, a maior parte dos ideogramas ocupa 3 e emoji costuma ocupar 4. Um texto em português quase sempre ocupa mais bytes do que caracteres, porque cada letra acentuada custa 2 bytes; só uma frase inteiramente sem acento fecha em 1 byte por caractere.
Emojis compostos são o caso extremo. A bandeira é um par de símbolos regionais, o emoji com tom de pele leva um modificador colado, e o grupo familiar junta vários emojis com um caractere invisível de junção. Na tela aparece um símbolo só; na contagem por unidade UTF-16, a bandeira dá 4 e a família de quatro pessoas dá 11. Se o seu formulário aceita emoji, teste com esses.
A contagem de caracteres do ValorFinal põe as três medidas lado a lado para o texto que você colar, com o nome de cada uma. Quando um sistema recusa um texto que parecia caber, basta comparar o limite dele com a medida que ele usa.
Como escrever dentro do limite sem estragar o texto
Ponha a informação essencial no começo, porque o corte acontece no fim. Escreva o texto inteiro primeiro e corte depois: tentar caber já na primeira versão costuma produzir frase truncada. Em title, corte o complemento e preserve o termo principal, nunca o contrário. Em SMS transacional, prefira texto sem acento quando a economia justificar, e teste antes de disparar em massa. E confira o número no mesmo momento em que escreve, porque contar depois quase sempre vira retrabalho.
Como usar a ferramenta do ValorFinal
O contador de caracteres e palavras mostra a contagem a cada tecla, com barra de progresso para cada um dos limites citados aqui, e indica exatamente qual caractere derrubou a sua mensagem para UCS-2. Ele também traz as três medidas (caracteres, unidades UTF-16 e bytes) lado a lado, além do tempo de leitura. Para comparar duas versões de um texto e ver o que mudou, use o comparador de texto. Para escrever com formatação e ver a prévia, o editor de Markdown. Conheça as demais ferramentas de tecnologia.
Se o texto vai para uma página, um README ou uma descrição formatada, o guia de Markdown e como escrever com ele ajuda a montar o conteúdo sem depender de editor visual.
Fontes e referências
- GSM 03.38 (ETSI): especificação do alfabeto de 7 bits do SMS e da tabela de extensão.
- Unicode Technical Report 17: modelo de codificação que explica a diferença entre ponto de código, unidade de código e byte.
- Google Search Central: títulos de resultado: documentação oficial sobre como o título é escolhido e exibido.
- Google Search Central: snippets: como a descrição do resultado é montada e quando é reescrita.
Conclusão
Title em 60 e descrição em 160 são margens de segurança, porque o corte é por pixel e o Google reescreve boa parte das descrições de qualquer jeito. O limite que realmente morde é o do SMS: 160 caracteres viram 70 assim que aparece um á, um ã ou um ç minúsculo, e mensagem emendada ainda perde espaço para o cabeçalho. E o mesmo texto tem três tamanhos corretos: por caractere percebido, por unidade UTF-16 e por byte. Meça no contador de caracteres antes de publicar ou disparar.