Como usar
- Cole ou digite o texto em Texto. As contagens mudam enquanto você digita.
- Leia Caracteres (grafemas) para o tamanho que o leitor vê, e Pontos de código para a contagem Unicode.
- Leia Bytes UTF-8 para o tamanho de uma página ou de um arquivo na codificação usual.
- Em Limites, confira as linhas de SMS e do X: Sobra é o espaço livre na última parte ou publicação.
Caracteres, pontos de código e grafemas
Um ponto de código é um número da tabela Unicode. Um caractere como o leitor o vê é um grafema, e um grafema pode ter vários pontos de código: um e com acento combinado são dois pontos de código e um grafema, e um emoji de família unido por juntores de largura zero são cinco pontos de código e um grafema.
A contagem de grafemas usa o segmentador do navegador, que segue as regras do Unicode para grupos de grafemas (UAX #29). Dois exemplos: não há quebra antes de um caractere de extensão ou de um juntor de largura zero, e uma sequência de emoji ou um par de indicadores regionais fica junto.
Bytes em UTF-8, UTF-16 e UTF-32
- O UTF-8 usa 1 byte até U+007F, 2 bytes até U+07FF, 3 bytes até U+FFFF e 4 bytes acima disso.
- O UTF-16 usa uma unidade de 16 bits para a maioria dos pontos de código. Um ponto de código acima de U+FFFF ocupa duas unidades, um par substituto, que somam 4 bytes.
- O UTF-32 usa exatamente 4 bytes para cada ponto de código.
Limites do SMS
Uma mensagem escrita só com os caracteres de 7 bits do GSM cabe em 160 caracteres em um SMS. Quando é mais longa, cada parte leva 153 caracteres, porque parte da carga de 140 bytes é usada pelo cabeçalho. Os caracteres da tabela de extensão (avanço de página, ^ { } \ [ ~ ] | e o sinal do euro) ocupam duas posições cada.
Uma mensagem com qualquer caractere fora do GSM-7 é enviada em UCS-2, que leva 70 caracteres em um SMS e 67 em cada parte de uma mensagem longa. Esta ferramenta conta ç e Ç como fora do GSM-7, que é a contagem mais restrita; as letras á, â, ã, ê, í, ó, ô, õ e ú também ficam de fora, e uma delas basta para usar UCS-2.
- A tabela GSM-7 e a tabela de extensão vêm do artigo da Wikipédia em inglês sobre o GSM 03.38; a norma em si é a 3GPP TS 23.038, Alphabets and language-specific information.
- Os números 153 e 67 vêm do artigo da Wikipédia em inglês sobre SMS, que cita a norma 3GPP para os números 160 e 70.
Tamanho de publicação no X
O X conta uma publicação em 280 caracteres ponderados. A maioria dos caracteres pesa 1; emojis e caracteres CJK pesam 2. Um link conta 23, qualquer que seja o seu tamanho. As faixas de peso são as da configuração twitter-text do X (versão 3); a página de contagem do X dá as mesmas regras em palavras.
A ferramenta encontra links que começam com http:// ou https://. Um link escrito sem o esquema é contado como texto comum, então uma publicação com ele pode ser contada mais longa do que o X a conta.
Exemplo trabalhado: Hello, world! Café 👋
O texto tem 20 caracteres, que também são 20 pontos de código. O emoji é um ponto de código, mas duas unidades UTF-16, então o comprimento da string é 21. O tamanho em UTF-8 é 24 bytes: 18 para as letras, os espaços e a pontuação em ASCII (um byte cada), 2 para o é e 4 para o emoji. O tamanho em UTF-16 é 21 × 2 = 42 bytes, e o tamanho em UTF-32 é 20 × 4 = 80 bytes.
| Medida | Valor |
|---|---|
| Caracteres (grafemas) | 20 |
| Unidades de código UTF-16 | 21 |
| Bytes UTF-8 | 24 |
| Bytes UTF-16 | 42 |
| Bytes UTF-32 | 80 |
| SMS, UCS-2: uma mensagem | 21 de 70, sobram 49 |
| Publicação no X | 21 de 280, sobram 259 |
Perguntas frequentes
Por que um emoji conta como um caractere aqui, mas como duas unidades em UTF-16?
Um emoji fora do Plano Multilíngue Básico precisa de duas unidades de código de 16 bits, um par substituto. O leitor continua vendo um só caractere, então a contagem de grafemas é um, enquanto o tamanho em UTF-16 é dois.
Por que um texto com acentos gasta mais SMS?
As letras á, â, ã, ç, ê, í, ó, ô, õ e ú estão fora do alfabeto GSM-7, então uma delas torna a mensagem inteira UCS-2. Uma SMS em UCS-2 leva 70 caracteres, em vez de 160, então a mesma mensagem ocupa mais SMS.
Por que a contagem do X é maior que o número de caracteres que eu vejo?
O X pesa emojis e caracteres chineses, japoneses e coreanos como dois, e conta cada link como 23 caracteres. A contagem mostrada aqui segue os mesmos pesos.
Os limites de SMS e do X valem exatos para todas as operadoras ou plataformas?
Eles seguem a norma e os pesos publicados pelo X. Uma operadora ainda pode dividir ou cobrar uma mensagem de outro jeito, e a ferramenta não confere links escritos sem http ou https.
O meu texto é enviado a algum lugar?
Não. As contagens rodam no seu navegador. O texto não é guardado nem enviado ao site.
Fontes
- Wikipédia (em inglês): SMS, message lengths and the 153 and 67 figures
- Wikipédia (em inglês): GSM 03.38, the GSM 7-bit basic and extension tables
- 3GPP TS 23.038 (em inglês): Alphabets and language-specific information
- Wikipédia (em inglês): UTF-8, bytes per code point
- Wikipédia (em inglês): UTF-16, code units and surrogate pairs
- Wikipédia (em inglês): UTF-32, fixed width
- Unicode UAX #29 (em inglês): Unicode text segmentation, grapheme clusters (revision 49)
- X (em inglês): Counting characters (post length and weights)
- twitter-text (em inglês), config/v3.json: the weight ranges X uses
Números e texto verificados pela última vez em terça-feira, 10 de novembro de 2026.