O que é a string de user agent
Toda requisição que o seu navegador faz leva um cabeçalho User-Agent: uma linha de texto que diz ao servidor qual software está pedindo. Os sites o usam para entregar a versão certa de uma página, decidir se um recurso é seguro de usar, bloquear navegadores antigos com falhas de segurança conhecidas e contar quais navegadores os visitantes usam. Mecanismos de busca e rastreadores de IA também se identificam por ele, e é por isso que “user agent” aparece quando você escreve um arquivo robots.txt.
Acima você vê o seu exatamente como chegou e, depois, a mesma string separada em navegador, motor de renderização, sistema operacional e tipo de dispositivo. Também classificamos o cliente: um navegador comum, um rastreador de mecanismo de busca como o Googlebot, um rastreador de IA como o GPTBot ou o ClaudeBot, um assistente de IA buscando uma página para um usuário, um bot de pré-visualização de links, uma ferramenta de linha de comando ou uma biblioteca HTTP.
Como usar
- Abra a página no navegador, no aparelho ou na sessão de automação que você quer verificar. A linha no topo é o cabeçalho
User-Agentcomo o nosso servidor o recebeu nesta requisição. - Clique em Copiar user agent para copiar a string exata, sem nada cortado ou redigitado.
- Leia Lido do cabeçalho para ver o navegador, o motor, o sistema operacional, o dispositivo, a CPU e o tipo de cliente extraídos dessa string.
- Compare com O que o JavaScript informa. Quando
navigator.userAgenté igual ao cabeçalho, a linha avisa; quando é diferente, o valor do JavaScript aparece por inteiro. As linhas de Client Hints só são preenchidas em navegadores Chromium em HTTPS. - Leia Tudo bate?. Ali o cabeçalho é comparado com o JavaScript, o sistema operacional com a plataforma dos Client Hints, e é verificado se a flag de automação está ativa.
Ao testar uma substituição nas ferramentas de desenvolvedor, recarregue a página depois da mudança para que o cabeçalho seja enviado de novo, e veja quais linhas mudaram e quais ainda descrevem o seu navegador real.
Para que serve
- Abrir um relatório de bug. Cole a string copiada para que o desenvolvedor veja o navegador, a versão e a plataforma exatos, em vez de um vago Chrome mais recente no Windows.
- Testar uma extensão que troca o User-Agent. Ligue a extensão e recarregue. Se Tudo bate? apontar divergência entre o cabeçalho e o JavaScript ou os Client Hints, os sites também enxergam através do disfarce.
- Verificar um navegador automatizado. Aponte uma sessão do Selenium ou do Playwright para a página e veja a string que ela realmente envia e se ela se denuncia pelo
navigator.webdriver. - Entender por que o iPad mostra o layout de computador. O Safari no iPadOS pede a versão para computador dos sites por padrão e envia um User-Agent de Mac, então o sistema operacional aparece como macOS. Desativar Solicitar Versão para Computador nos ajustes do Safari traz de volta a string de tablet.
- Escrever uma regra no servidor. Antes de identificar navegadores em um redirecionamento, uma regra de firewall ou um filtro de analytics, colete strings reais dos navegadores que importam para você e teste o padrão com elas.
Como ler uma string de user agent
Uma string típica do Chrome no computador é assim:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36
Mozilla/5.0— um token de compatibilidade que todo navegador moderno envia. Não tem nada a ver com o Firefox.(Windows NT 10.0; Win64; x64)— a plataforma: sistema operacional e arquitetura da CPU. O Windows 11 continua informando10.0.AppleWebKit/537.36 (KHTML, like Gecko)— mais história de compatibilidade; o motor Blink do Chrome é um fork do WebKit, que por sua vez é um fork do KHTML.Chrome/141.0.0.0— o navegador de verdade e a versão principal. Os zeros são de propósito: o Chrome esconde a versão menor.Safari/537.36— mais um token de compatibilidade.
O Firefox usa Gecko/20100101 Firefox/141.0, o Safari termina com Version/18.0 Safari/605.1.15 e o Edge acrescenta Edg/141.0.0.0 à string do Chrome. Os navegadores de celular acrescentam Mobile, e quase todos os navegadores do iPhone se identificam como Safari por baixo, porque rodam no WebKit, o motor da Apple (fora da UE, o iOS exige isso).
Client Hints: o substituto do user agent
Os navegadores Chromium (Chrome, Edge, Opera, Brave, Samsung Internet) congelaram a maior parte da string clássica e passaram os detalhes para os User-Agent Client Hints. Por padrão, eles enviam três cabeçalhos pequenos — Sec-CH-UA, com as marcas e as versões principais, Sec-CH-UA-Mobile e Sec-CH-UA-Platform — e o site pode pedir mais, como a versão completa, a arquitetura da CPU ou o modelo do celular. As páginas podem ler os mesmos dados por navigator.userAgentData. O Firefox e o Safari não implementam os Client Hints. Os Client Hints só estão disponíveis em páginas HTTPS.
Como mudar o seu user agent
As ferramentas de desenvolvedor de todos os navegadores podem substituir o User-Agent para testes, e extensões podem fazer isso de forma permanente. É útil para ver como um site se comporta em outro aparelho, mas é uma ferramenta ruim de privacidade. Mudar o cabeçalho não muda o navigator.userAgentData, o handshake TLS, a lista de fontes nem o jeito como o navegador desenha um canvas, então o disfarce contradiz todo o resto. O quadro Tudo bate? acima faz as mesmas comparações que um script de detecção de bots faria: cabeçalho contra JavaScript e User-Agent contra Client Hints.
Veja o user agent de um script ou ferramenta
Ferramentas de linha de comando e bibliotecas enviam os próprios user agents — curl/8.x, python-requests/2.x, Go-http-client/1.1 — e muitos sites os bloqueiam por padrão. Para ver exatamente o que a sua ferramenta envia, aponte-a para o nosso endpoint a partir da mesma máquina:
curl "iseeu.cc/ua?format=text"
curl iseeu.cc/ua # analisado, em JSON
python -c "import requests; print(requests.get('https://iseeu.cc/ua').json())"
Agentes de IA podem chamar a ferramenta parse_ua do nosso servidor MCP para analisar qualquer string de user agent, inclusive strings de rastreadores encontradas em logs.
Perguntas frequentes
O que é user agent?
User agent é o programa que faz uma requisição na web em seu nome, normalmente o seu navegador. O cabeçalho User-Agent dele é uma linha de texto com o nome do navegador, a versão, o motor de renderização e o sistema operacional.
Por que todo user agent começa com Mozilla/5.0?
Compatibilidade histórica. Nos anos 1990, os sites mandavam páginas melhores para o Netscape, cujo codinome era Mozilla, então os outros navegadores copiaram o prefixo para recebê-las também. Todos os grandes navegadores ainda o mantêm.
Dá para mudar o meu user agent?
Sim. As ferramentas de desenvolvedor do navegador e as extensões podem substituí-lo. Mas os Client Hints, as propriedades do JavaScript e o handshake TLS continuam descrevendo o seu navegador real, então um User-Agent alterado é fácil de detectar.
O que são os User-Agent Client Hints?
Um mecanismo mais novo dos navegadores Chromium que envia por padrão uma marca e uma plataforma resumidas e deixa os sites pedirem detalhes como a versão exata, a arquitetura ou o modelo do aparelho.
Por que meu user agent mostra uma versão antiga do sistema operacional?
Os navegadores congelam partes da string para reduzir a impressão digital. O Chrome informa Windows NT 10.0 mesmo no Windows 11 e uma versão fixa do macOS, e preenche os números de versão menores com zeros.
Como ver o user agent do curl ou de um script?
Rode curl iseeu.cc/ua?format=text na mesma máquina ou ferramenta. Ele mostra o cabeçalho User-Agent exatamente como o nosso servidor o recebeu.
A análise do user agent se baseia em padrões e pode identificar errado navegadores novos ou incomuns. A classificação de bots reflete o que o cliente afirma ser; qualquer um pode enviar qualquer User-Agent.