1001Ferramentas
🐦Validadores

Validador de @handle do Twitter/X

Valida formato de @handle do Twitter/X: 1-15 caracteres, letras, dígitos e _. Não verifica se está em uso (verificação seria server-side).

Validação de handle do Twitter (X): formato, história e casos de borda

Um handle do Twitter — hoje chamado handle do X após o rebrand de 2023 — é o identificador @usuario usado para endereçar uma conta em posts, menções, URLs e deep links. Validar importa porque o handle controla o roteamento (x.com/elonmusk), campos de formulário que cruzam com outras redes, regex de menção no corpo do tweet e analytics agregadas por autor. Um handle validado direito evita link de perfil quebrado, menção que falha e linha no banco apontando para o nada.

Regras atuais: 4 a 15 caracteres, alfanuméricos mais underscore (A-Z, a-z, 0-9, _). Case-insensitive no roteamento — @ElonMusk e @elonmusk resolvem para a mesma conta. Sem pontos, sem hifens, sem espaços, sem emoji. O nome de exibição (o rótulo maior acima do handle) é um campo separado e aceita Unicode arbitrário até 50 caracteres.

Regras de formato e o regex canônico

  • Comprimento: 4-15 caracteres (mudou de 1-20 em 2009 para caber em tweets de 140 caracteres com folga).
  • Caracteres permitidos: [A-Za-z0-9_] — letras, dígitos, underscore.
  • Palavras reservadas: admin, support, twitter, x e outros nomes de sistema são bloqueados no cadastro.
  • Underscore inicial: permitido (@_handle), mas visualmente parecido com placeholder em itálico em algumas fontes.
  • Só números: tecnicamente permitido se atende às regras acima, mas suspeito — a maioria das plataformas sinaliza handles puramente numéricos como prováveis bots.
const TWITTER_HANDLE = /^@?[A-Za-z0-9_]{4,15}$/

function validarHandleTwitter(input) {
  const limpo = input.replace(/^@/, '')
  return TWITTER_HANDLE.test('@' + limpo)
}

Comparando com handles de Instagram, TikTok e Threads

Cada plataforma tem regras sutilmente diferentes — copiar um handle do Twitter num campo do Instagram frequentemente falha porque as restrições não batem:

  • Twitter/X: 4-15 caracteres, [A-Za-z0-9_], sem ponto.
  • Instagram: 1-30 caracteres, [A-Za-z0-9_.] — ponto é permitido.
  • Threads: espelha o Instagram (mesmo backend Meta, mesmo handle).
  • TikTok: 2-24 caracteres, [A-Za-z0-9_.], não pode terminar em ponto.
  • GitHub: 1-39 caracteres, alfanumérico + hifens simples (sem underscore, sem ponto).

Se seu formulário deixa o usuário ligar várias redes, valide cada campo com regex próprio — não compartilhe um regex único de "username" entre plataformas.

Rebrand para X, modelo de verificação e Premium

Em julho de 2023 Elon Musk rebatizou o Twitter como X, trocando o domínio principal para x.com (o velho twitter.com ainda redireciona). O famoso selo azul deixou de significar "identidade verificada" — sob o X Premium (antigo Twitter Blue, US$ 8/mês) qualquer pessoa que atenda elegibilidade básica (conta ativa, telefone verificado) ganha o selo. Contas verificadas legadas da era jornalística perderam o selo em 2023; em 2024 o X passou a conceder selos a contas com muitos seguidores de graça. O status de verificação é metadado ao lado do handle, não parte dele.

Mudança de handle, squatting e redirecionamentos

Usuários podem trocar o handle a qualquer momento (Configurações → Conta → Nome de usuário). A pegadinha: o X NÃO redireciona o handle antigo — links para x.com/nomeantigo retornam 404 quando nomeantigo é tomado por outra pessoa, e menções antigas em posts agora apontam para conta diferente. Isso é diferente do GitHub, que auto-redireciona usuários renomeados por pelo menos um ano. Resultado: mudar handle com frequência quebra menções recebidas, tweets embedados e bookmarks. O X também combate handle squatting (registrar nomes para revender) com força sob a Política de Conta Inativa: contas inativas por 30+ dias podem ser reivindicadas pelo X para detentores de marca ou recicladas.

Perguntas frequentes

Posso mudar meu handle? Os links antigos continuam funcionando? Pode mudar, mas links antigos quebram — o X não mantém mapa de redirecionamento. Planeje a mudança com cuidado.

O limite de 15 caracteres ainda é o máximo? Sim. Apesar dos posts longos do X Premium, o teto do handle continua 15 caracteres — provavelmente por compatibilidade com o regex de menção usado por clientes.

Handle pode começar com underscore? Pode — @_alguem é válido. O primeiro caractere só precisa satisfazer [A-Za-z0-9_], sem restrição adicional.

Handles diferenciam maiúscula de minúscula? Não, buscas são case-insensitive: @OpenAI e @openai caem na mesma conta. A capitalização escolhida no cadastro é preservada só para exibição.

O nome de exibição pode ter Unicode/emoji? Pode. O nome de exibição (separado do handle) aceita quase qualquer Unicode, incluindo emoji e caracteres acentuados. Já o handle continua ASCII de letras, dígitos e underscore.

Ferramentas Relacionadas