Contador de caracteres e bytes

Cole um texto para ver o seu tamanho como o leitor o vê, em pontos de código e em bytes, e se ele cabe em um SMS ou em uma publicação no X.

Gratuita Funciona no seu navegador Verificada em terça-feira, 10 de novembro de 2026

Cole ou digite o texto. Tudo é contado no seu navegador; o texto não é enviado a lugar nenhum.

Resultado

Caracteres (grafemas) — O que o leitor vê: um emoji com tom de pele ou uma bandeira conta uma vez.
Pontos de código — Pontos de código Unicode: aqui cada emoji conta uma vez.
Unidades de código UTF-16 — O tamanho que o JavaScript e o Java informam para um texto. Um emoji ocupa duas.
Bytes UTF-8 — Tamanho na codificação que a maioria das páginas e dos arquivos da web usa.
Bytes UTF-16 —
Bytes UTF-32 —
Alfabeto do SMS —
Limites

Esta ferramenta funciona no seu navegador. O que você digita não é enviado para nós.

Como usar

  1. Cole ou digite o texto em Texto. As contagens mudam enquanto você digita.
  2. Leia Caracteres (grafemas) para o tamanho que o leitor vê, e Pontos de código para a contagem Unicode.
  3. Leia Bytes UTF-8 para o tamanho de uma página ou de um arquivo na codificação usual.
  4. 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

Números e texto verificados pela última vez em terça-feira, 10 de novembro de 2026.

Usamos cookies necessários para o site funcionar. Com o seu consentimento, o Google também usa cookies de publicidade para mostrar anúncios personalizados. Se você recusá-los, continuará vendo anúncios, mas eles não serão personalizados.