Códigos de status HTTP

O que são códigos de status HTTP, como funcionam (1xx–5xx), quais importam mais para SEO e como o Google os interpreta — o hub de redirecionamentos, erros e comportamento de rastreamento.

Publicado pela primeira vez: 27 de jun. de 2026 · Última atualização: 2 de set. de 2026 · Avançado
1 sinal de evidência nesta página

Um código de status HTTP é o número de três dígitos que um servidor retorna com cada resposta e, para SEO, o código importa tanto quanto o conteúdo da página. Há cinco famílias: 1xx informativo, 2xx sucesso (elegível para indexação, mas 200 não a garante), 3xx redirecionamentos (301/308 passam um sinal de canonicalização; 302/307 não), 4xx erros do cliente (404/410 removem páginas do índice com o tempo; 404 em geral não prejudica classificações) e 5xx erros do servidor (que, junto com 429, fazem crawlers desacelerar, não desindexar imediatamente). A exceção sorrateira é o soft 404: um status 200 com conteúdo "isso não existe", que o Google trata como 404 e sinaliza no Search Console. Este hub mapeia as famílias, corrige mitos comuns e leva aos aprofundamentos de códigos de erro individuais.

«> TL;DR — The status code is a first-class SEO signal, independent of the page’s

content. 2xx is necessary but not sufficient for indexing. 301/308 pass a canonicalization signal; 302/307 don’t. 4xx pages get dropped from the index over time, and 404 generally doesn’t hurt rankings. 5xx and 429 make crawlers slow down, not deindex — recovery is gradual once 2xx returns. The trap is the soft 404: a 200 status wrapped around “this doesn’t exist” content, which Google detects at the content layer and treats like a real 404. Match the code to reality, use permanent redirects for permanent moves, and return 503 — not a broken 200 — during downtime. » (Tradução) (Síntese localizada do trecho dezessete, parte um: o texto-fonte foi preservado para conferência na revisão nativa.)

O que um código de status realmente é

«The five response classes come from RFC 9110, the HTTP specification — they’re protocol semantics, not direct SEO scores. Evidência desta afirmação Primary standard or official documentation supporting the adjacent article claim. Escopo: Protocol semantics and Search behavior are kept separate; no indexing, ranking, or migration-timing guarantee is inferred. Confiança: alta · Verificado: RFC 9110: Status codes Google’s documentation, layered on top of that spec, describes likely processing outcomes without guaranteeing exact crawl or index timing. Evidência desta afirmação Primary standard or official documentation supporting the adjacent article claim. Escopo: Protocol semantics and Search behavior are kept separate; no indexing, ranking, or migration-timing guarantee is inferred. Confiança: alta · Verificado: Google: HTTP and network errors » (Tradução) (Síntese localizada do trecho dezenove, parte um: o texto-fonte foi preservado para conferência na revisão nativa.)

«Google’s own documentation is the cleanest definition: “HTTP status codes are generated by the server that’s hosting the site when it responds to a request made by a client, for example a browser or a crawler.” The key idea for SEO is that the code is a signal in its own right, separate from whatever HTML comes after it. A page can look perfect to a human and still be invisible to search because of the number the server sent first. » (Tradução) (Síntese localizada do trecho vinte, parte um: o texto-fonte foi preservado para conferência na revisão nativa.)

As cinco famílias sob a ótica de SEO

«1xx — Informational. Provisional “still working” responses (100 Continue, 101 Switching Protocols). Almost never SEO-relevant, with one modern exception: 103 Early Hints, which lets the server tell the browser to start preloading critical resources before the full response is ready — a small Core Web Vitals win, not an indexing lever. » (Tradução) (Síntese localizada do trecho vinte e dois, parte um: o texto-fonte foi preservado para conferência na revisão nativa.)

«2xx — Success. 200 OK is what an indexable page returns. But a 200 is necessary, not sufficient: Google can still decline to index a 200 page for quality, duplication, or other reasons. Edge case worth knowing — a 204 No Content (a successful response with an empty body) can get treated like a soft 404, because there’s nothing to index. » (Tradução) (Síntese localizada do trecho vinte e três, parte um: o texto-fonte foi preservado para conferência na revisão nativa.)

«3xx — Redirection. This is where the canonicalization distinction lives, and it’s the single most misunderstood part of the topic. Per Google’s redirects documentation: » (Tradução) (Síntese localizada do trecho vinte e quatro, parte um: o texto-fonte foi preservado para conferência na revisão nativa.)

«- 301 (permanent) and 308 — Google follows the redirect and “the indexing pipeline uses the redirect as a signal that the redirect target should be canonical.” Ranking signals consolidate onto the target.

  • 302 (temporary) and 307 — Google follows the redirect, “but the indexing pipeline doesn’t use the redirect as a signal that the redirect target should be canonical.” A 302 left in place for a genuinely permanent move is a classic misconfiguration — Google may eventually treat a long-lived 302 like a 301 in practice, but you shouldn’t rely on that. » (Tradução) (Síntese localizada do trecho vinte e cinco, parte um: o texto-fonte foi preservado para conferência na revisão nativa.)

«Google recommends you “use a permanent server-side redirect whenever possible” for permanent moves, and notes a hard ceiling: “By default, Google’s crawlers follow up to 10 redirect hops.” Redirect chains that run longer than that get abandoned. (For the full tour of the eleven redirect types and their SEO impact, I’ve written that up separately at Ahrefs, linked in Resources — this hub is deliberately the map, not the deep dive.) Also in the 3xx family: 304 Not Modified, a caching signal that tells a crawler its cached copy is still current — no direct ranking effect, but it supports efficient crawling on large sites. » (Tradução) (Síntese localizada do trecho vinte e seis, parte um: o texto-fonte foi preservado para conferência na revisão nativa.)

«4xx — Client error. The page can’t be served because of something on the request side — it’s missing, forbidden, or blocked to this client. Google is explicit: “Google doesn’t use the content from URLs that return 4xx status codes,” and “if a URL was previously used but is now returning 4xx status code, Google systems will stop using the URL over time.” For 404 specifically, “the indexing pipeline removes the URL from the index if it was previously indexed. Newly encountered 404 pages aren’t processed.”

Evidência desta afirmação Primary standard or official documentation supporting the adjacent article claim. Escopo: Protocol semantics and Search behavior are kept separate; no indexing, ranking, or migration-timing guarantee is inferred. Confiança: alta · Verificado: Google: HTTP and network errors

» (Tradução) (Síntese localizada do trecho vinte e sete, parte um: o texto-fonte foi preservado para conferência na revisão nativa.)

«Two important nuances here: » (Tradução) (Síntese localizada do trecho vinte e oito, parte um: o texto-fonte foi preservado para conferência na revisão nativa.)

«- 404 doesn’t hurt rankings. Search Console Help states it directly: “In general, 404 errors won’t impact your site’s search performance.” The risk from a 404 is losing the traffic and links the page carried, or — at scale — wasting crawl budget.

  • Don’t weaponize 401/403 against Googlebot. Google warns: “Don’t use 401 and 403 status codes for limiting the crawl rate. The 4xx status codes, except 429, have no effect on crawl rate.” Blocking Googlebot with a 401/403 doesn’t “slow it down” — it just makes the content invisible. » (Tradução) (Síntese localizada do trecho vinte e nove, parte um: o texto-fonte foi preservado para conferência na revisão nativa.)

«The individual client-error codes each have their own story — the access-and-auth codes (401, 403), the “gone” codes (404, 410, and the question of which to use), rate-limiting (429), and the legal-block code (451) — and each gets a full treatment in its own article. See “Where to go next” below. » (Tradução) (Síntese localizada do trecho trinta, parte um: o texto-fonte foi preservado para conferência na revisão nativa.)

5xx — erro do servidor. A solicitação estava correta, mas o servidor não conseguiu atendê-la (500 Internal Server Error, 502 Bad Gateway, 503 Service Unavailable, 504 Gateway Timeout). O ponto crucial para SEO é que esses códigos não causam desindexação imediata. Segundo o Google, erros 5xx e 429 fazem os crawlers reduzirem temporariamente o ritmo; quando o servidor volta a responder com 2xx, a taxa aumenta gradualmente. A redução é proporcional ao número de URLs individuais com erro. URLs já indexadas sobrevivem a uma falha breve; somente erros persistentes acabam levando à remoção.

Rastreamento versus indexação: o modelo mental que conecta tudo

Há duas perguntas diferentes por trás desses códigos:

«1. Should I crawl this? 5xx/429 say “slow down, try later.” 301/302 say “go here instead.” 429 and the 5xx family are the only codes that actually throttle crawl rate. 2. Should I index this, and under which URL? 2xx = eligible. 4xx = drop it. 301/308 = consolidate onto the target. » (Tradução) (Síntese localizada do trecho trinta e quatro, parte um: o texto-fonte foi preservado para conferência na revisão nativa.)

O elo — e a exceção que quebra o modelo — é o soft 404, em que o código e o conteúdo discordam.

Soft 404s — a exceção sorrateira

Um soft 404 é uma página que retorna sucesso (200), mas cujo conteúdo diz que o item não existe: página vazia, mensagem de “não encontrado” ou resultado raso. O Google detecta o problema na camada de conteúdo, independentemente do código HTTP. Se o conteúdo indicar erro, página vazia ou mensagem de erro, o Search Console mostrará um soft 404.

«Why care, if the page “loads fine”? Because it wastes crawl budget. Google’s large-site guide is blunt: “soft 404 pages will continue to be crawled, and waste your budget.” They usually come from misconfigured CMSes or JavaScript frameworks that return 200 for routes that don’t exist. The fix is to make the code match reality — return a real 404 (or 410) so Google can drop the URL cleanly. There’s a dedicated soft-404 article in this cluster. » (Tradução) (Síntese localizada do trecho trinta e oito, parte um: o texto-fonte foi preservado para conferência na revisão nativa.)

404 versus 410 — isso realmente importa?

Quase nada para SEO. John Mueller esclareceu em 2024 que a diferença de processamento entre 404 e 410 é tão pequena que não escolheria um sobre o outro por motivo de SEO; o Google não penaliza 404s, embora as páginas saiam do índice. Um 410 Gone pode comunicar permanência um pouco mais rápido e documentar melhor a intenção — Matt Cutts historicamente falou em “um pouco mais rápido”, no máximo alguns dias. Use 410 quando a remoção for certamente permanente e 404 quando a página puder voltar ou houver dúvida. O guia de crawl budget aceita ambos e chama 404 de forte sinal para não rastrear a URL novamente. O artigo 404 versus 410 detalha a nuance.

Como usar códigos de status em indisponibilidade e migrações

Em manutenção planejada, indisponibilidade ou janela de migração, retorne 503 Service Unavailable, não um 200 quebrado. John Mueller recomenda 503 quando o provedor falha e o site não pode ser hospedado. Uma página de erro com 200 OK pode ter o conteúdo de erro indexado e páginas iguais podem ser tratadas como duplicadas; redirecionar para uma página temporária pode fazer o redirecionamento ser usado na indexação. Se a origem estiver totalmente fora do ar, a saída prática é apontar o DNS para um servidor temporário que devolva 503.

«Keep it short, though. Gary Illyes: “Serving a 503 status code for an extended period of time will cause a decrease in crawl rate,” but “10-15 minutes every now and then is not ‘extended’ by any means, so you should be fine.” Rule of thumb: 503 is for hours, not weeks — leave it up for weeks and Google starts treating the pages as actually gone. The 503 article covers the migration pattern in depth. » (Tradução) (Síntese localizada do trecho quarenta e três, parte um: o texto-fonte foi preservado para conferência na revisão nativa.)

Como verificar o código de status de uma página

  • DevTools do navegador — abra Network, recarregue, clique na solicitação do documento e leia a coluna Status.
  • Linha de comando — curl -I https://example.com/page mostra os cabeçalhos de uma solicitação; curl -IL https://example.com/page segue a cadeia completa.
  • Google Search Console — a Inspeção de URL informa o status rastreado.
  • Bing Webmaster Tools — a Inspeção de URL faz o mesmo para o Bingbot.
  • Crawlers — Screaming Frog SEO Spider e Ahrefs Site Audit encontram códigos, cadeias e URLs 4xx/5xx em massa; a Ahrefs SEO Toolbar mostra o código da página atual.

Uma ressalva que muitos guias ignoram: uma única checagem descreve apenas aquela solicitação. O status pode variar por método, user agent, autenticação, região, horário, cache e CDN. Um resultado limpo no seu computador não garante o que o Googlebot recebeu. Use este fluxo compacto:

  • Método — HEAD deve trazer cabeçalhos equivalentes a GET, mas o servidor pode omitir campos que exigem gerar conteúdo. HEAD não prova o que um GET real retorna; teste com GET se houver divergência.
  • User agent — detecção de bots, bloqueio geográfico ou cloaking podem servir 200 ao Googlebot e 403 ao navegador, ou o inverso.
  • Região — diante de suspeita de geobloqueio ou regra regional de CDN, teste de mais de um local/IP.
  • Cache — descarte resposta obsoleta do navegador ou edge antes de culpar a origem.
  • Cadeia — registre todos os saltos, pois o problema pode estar no meio.
  • Logs — confirme o que o Googlebot realmente recebeu; logs do servidor são a referência que uma checagem isolada não oferece.

Uma observação sobre o Bing

«Bing’s public guidance on status codes is thinner than Google’s — there’s no single canonical “how status codes affect crawling” doc as detailed as Google’s, and no Bing rep quote on the topic surfaced when I looked. Directionally it’s the same advice: return accurate codes, fix persistent 4xx/5xx, and use permanent redirects for permanent moves. I’d rather say that plainly than manufacture a Bing quote that doesn’t exist. » (Tradução) (Síntese localizada do trecho cinquenta, parte um: o texto-fonte foi preservado para conferência na revisão nativa.)

Próximos passos: o conjunto de códigos de erro HTTP

Este hub oferece a visão geral. O sub-hub Códigos de erro HTTP aprofunda os códigos que você realmente diagnostica, cada um em seu próprio artigo:

  • 401 Unauthorized e 403 Forbidden — acesso/autenticação e por que não usá-los para reduzir o rastreamento.
  • 404 Not Found, 410 Gone e 404 versus 410 — a família “a página desapareceu” e qual código escolher.
  • 429 Too Many Requests — limitação de taxa e seu efeito especial no crawl.
  • 451 Unavailable For Legal Reasons — bloqueio legal, distinto de 403.
  • 500 Internal Server Error, 502 Bad Gateway, 503 Service Unavailable e 504 Gateway Timeout — erros de servidor, desaceleração e manutenção com 503.
  • Soft 404s — o 200 que na verdade é erro e como corrigi-lo.

Cada artigo fica abaixo deste hub e aparece na barra lateral. Para entender como redirecionamentos consolidam sinais, consulte Canonicalização; para a redução do crawl em 5xx/429, consulte Rastreamento.

Adicionar uma nota de especialista

Fixar uma citação de especialista

É uma pessoa nova? Crie o perfil não reivindicado dela em /admin/experts/ → Fixar uma citação de especialista primeiro.