200 OK — Tudo certo

O que significa HTTP 200 OK (RFC 9110), por que ele é necessário mas não suficiente para indexação, a armadilha do soft 404, como 200 difere de 204 e 304 e como confirmar o que o Googlebot realmente recebe.

Publicado pela primeira vez: 3 de jul. de 2026 · Última atualização: 22 de ago. de 2026 · Avançado
Idiomas
1 sinal de evidência nesta página

HTTP 200 OK é o código de sucesso 2xx padrão (RFC 9110): o servidor encontrou o recurso e o está retornando. Para uma página da web, é o código que você quer — mas é necessário, não suficiente. A documentação do próprio Google diz que o pipeline de indexação 'may index the content, but that's not guaranteed' _(tradução)_ «pode indexar o conteúdo, mas isso não é garantido»; qualidade, duplicação, conteúdo superficial e noindex são avaliados além do 200. A armadilha clássica é o soft 404: uma URL que retorna 200 enquanto o conteúdo parece um erro ou uma página vazia, algo que o Google detecta na camada de conteúdo e reporta como soft 404 no Search Console independentemente do código. Compare 200 (sucesso com corpo real) com 204 (sucesso com corpo vazio, tratado como soft 404) e 304 (sinal de cache, não decisão de indexação). Faça o código corresponder à realidade — desaparecida → 404/410, movida → 301, duplicada → tag canonical — e confirme sempre o que o próprio Googlebot recebeu pela Inspeção de URL ou pelos logs, não apenas o que seu navegador vê.

TL;DR — 200 OK é o código de sucesso 2xx padrão (RFC 9110 §15.3.1): o servidor atendeu à solicitação e, para GET/HEAD, o corpo é uma representação do recurso. Ele é armazenável em cache heuristicamente por padrão. Para SEO, é necessário, mas não suficiente — a documentação do próprio Google diz que o pipeline de indexação “may index the content, but that’s not guaranteed,” (tradução) «pode indexar o conteúdo, mas isso não é garantido», então qualidade, duplicação, conteúdo superficial e noindex ainda decidem o resultado depois do 200. A falha clássica é o soft 404: um 200 envolvendo conteúdo de erro ou vazio, que o Google detecta na camada de conteúdo e reporta como soft 404 independentemente do código. Compare 200 (corpo esperado) com 204 (corpo vazio, tratado como soft 404 em páginas) e 304 (um sinal de cache, não uma decisão de indexação). E confirme o que o Googlebot recebeu — cloaking, bloqueio de bots, regras geográficas e configuração de CDN/WAF podem entregar a ele um código diferente do que o navegador vê.

O que 200 significa na especificação

A RFC 9110 (HTTP Semantics) é a autoridade atual, e a §15.3.1 é direta: “The 200 (OK) status code indicates that the request has succeeded.” (tradução) «O código de status 200 (OK) indica que a solicitação teve sucesso.» O conteúdo do corpo depende do método da solicitação. Para os métodos importantes em páginas — GET e HEAD — o conteúdo é uma representação do recurso de destino. A RFC também faz uma ressalva: exceto nas respostas a CONNECT, espera-se que um 200 carregue conteúdo, salvo quando o enquadramento da mensagem sinaliza explicitamente comprimento zero — portanto, “um 200 sempre tem corpo” é uma abreviação, não um absoluto. Na prática, para uma página que você quer indexar, essa abreviação é o objetivo: um corpo real, não um vazio. Um 200 também é “armazenável heuristicamente em cache” por padrão, a menos que uma diretiva de controle de cache diga o contrário, razão pela qual cabeçalhos de validação como ETag e Last-Modified importam em páginas muito rastreadas. Evidence for this claim RFC 9110 defines 200 OK as indicating that the request succeeded; the response content depends on the request method. Scope: HTTP semantics for 200 responses; this does not guarantee search indexing. Confidence: high · Verified: IETF: RFC 9110 §15.3.1 — 200 OK

Tecnicamente, 200 não serve apenas para páginas. A RFC explica o que “sucesso” significa para cada método:

Método da solicitaçãoO corpo de um 200 representa
GETo recurso de destino
HEADo recurso de destino, mas sem transferir o corpo
POSTo status ou o resultado da ação
PUT, DELETEo status da ação
OPTIONSas opções de comunicação do recurso

Para métodos que não são GET, você muitas vezes não verá um 200 — o MDN observa que solicitações PUT ou DELETE bem-sucedidas “often do not result in a 200 OK response,” (tradução) «muitas vezes não resultam em uma resposta 200 OK», sendo 201 Created ou 204 No Content mais comuns. Nada disso é relevante para SEO de URLs de páginas; a frase a levar adiante é que, para um documento que você quer indexar, o objetivo é 200 com um corpo real.

Necessário, mas não suficiente, para indexação

Esta é a coisa mais importante de acertar e é onde a maioria das páginas de glossário concorrentes está categoricamente errada. Elas dizem “200 significa que a página é indexada”. A documentação do próprio Google diz o contrário. Para um 200, o Google “passes on whatever it received to the next processing step… For Google Search, the next system is the indexing pipeline. The indexing systems may index the content, but that’s not guaranteed.” (tradução) «passa o que recebeu para a próxima etapa de processamento… Para a Pesquisa Google, o sistema seguinte é o pipeline de indexação. Os sistemas de indexação podem indexar o conteúdo, mas isso não é garantido.» Evidence for this claim Google passes a 2xx response to its indexing pipeline, which may index the content but does not guarantee that it will do so; error-like content can be classified as a soft 404. Scope: Google Search handling of 2xx page responses and soft 404s. Confidence: high · Verified: Google: HTTP status codes and Search

Portanto, o 200 é um contrato sobre a resposta HTTP, não uma promessa sobre o destino da página na Busca. Depois do 200, o Google avalia independentemente:

  • Qualidade — páginas superficiais, de baixo valor ou geradas automaticamente podem não ser indexadas.
  • Duplicação — uma quase duplicata de uma URL mais forte pode ser incorporada a essa URL em vez de ser indexada separadamente (é isso que a tag canonical existe para controlar).
  • Diretivas — um noindex em uma meta tag ou cabeçalho X-Robots-Tag mantém a página fora do índice mesmo com um 200 perfeito.

O guia de Patrick na Ahrefs traça o mesmo limite no nível da família: “Most 2xxs will allow pages to be indexed. However, 204s will be treated as soft 404s and won’t be indexed.” (tradução) «A maioria dos códigos 2xx permitirá que as páginas sejam indexadas. No entanto, os 204s serão tratados como soft 404s e não serão indexados.» O 200 torna uma página elegível; não faz com que ela seja indexada.

A armadilha do soft 404

A ilustração mais clara de que “200 não é a história toda” é o soft 404. A documentação de códigos de status do Google explica o mecanismo: “If the content suggests an error for Google Search, an empty page or an error message, Search Console will show a soft 404 error.” (tradução) «Se o conteúdo sugerir um erro para o Google Search, uma página vazia ou uma mensagem de erro, o Search Console mostrará um erro soft 404.» Observe o que isso significa — a classificação se baseia no conteúdo renderizado, não no código HTTP. O pipeline de indexação do Google olha além do 200 para o que realmente está na página e, se ela parece dizer “não encontrado”, é agrupada e reportada como um 404 real.

Os casos para o teste de realidade: um produto descontinuado cuja página agora carrega um template vazio, um artigo excluído que ainda retorna uma estrutura 200, uma página de categoria filtrada ou um resultado de busca com zero itens e uma mensagem de “nada aqui”. Cada um retorna um 200 tecnicamente correto enquanto informa a usuários e ao Google que não há nada para ver.

Este site tem um artigo dedicado a soft-404-errors sobre os mecanismos de detecção e as correções — não vou repeti-los aqui. O ponto para a discussão sobre 200 é simples: retornar 200 em uma página que realmente desapareceu é a configuração para um soft 404. A correção é fazer o código corresponder à realidade.

Uma armadilha relacionada: sucesso do transporte não é sucesso da aplicação

Vale uma ressalva limitada, pois o assunto surge em círculos de APIs e monitoramento: a camada HTTP e a camada da aplicação podem discordar. Um endpoint de API pode enviar 200 com um objeto JSON de erro no corpo; uma página pode enviar 200 enquanto uma dependência do backend falhou silenciosamente e renderizou um bloco quebrado em vez do conteúdo real. A linha de status diz apenas “entregue com sucesso” — é só isso que ela afirma. Se o payload está de fato correto é uma pergunta separada que o código de status não responde. Profissionais estão genuinamente divididos sobre se uma API deve sinalizar um erro com um status diferente de 200 ou com um 200 envolvendo um payload de erro; esse é um contrato que cada equipe escolhe, não uma regra HTTP. Para o foco de SEO deste site, a versão no nível da página é o soft 404 acima — a correção é a mesma em espírito: não confie apenas na linha de status, veja o que o corpo realmente contém.

200 vs. 204 vs. 304 — não os confunda

Três códigos que as pessoas misturam, e apenas um deles é o sucesso “aqui está sua página”:

CódigoClasseCorpoO que significaTratamento de SEO
200 OK2xxConteúdo real esperadoSucesso — aqui está o recursoElegível para indexação (não garantido)
204 No Content2xxVazio por designSucesso, intencionalmente sem corpoTratado como soft 404 em uma URL de página — veja 204-no-content
304 Not Modified3xxNenhum”Use sua cópia em cache” (solicitação condicional)Sinal de cache, não decisão de indexação

204 é um código de sucesso genuíno, mas seu corpo vazio não dá nada para um rastreador indexar — portanto, em uma URL de página, cai na categoria de soft 404 (esse é um artigo separado; não confunda o caso de corpo vazio com um 200 normal). 304 nem sequer pertence à mesma família — responde a uma solicitação condicional (If-None-Match / If-Modified-Since) informando ao cliente que sua cópia em cache ainda está atualizada. Não carrega corpo e não diz nada sobre indexação; é um mecanismo de eficiência de rastreamento, não um equivalente de 200 duplicado. A pergunta comum “200 e 304 não são a mesma coisa?” mistura uma otimização de cache com uma resposta de sucesso.

Confirme o que o Googlebot realmente vê

Aqui está uma lacuna que quase todo artigo concorrente ignora: solicitantes diferentes podem receber códigos diferentes para a mesma URL. Seu navegador pode ver um 200 limpo enquanto o Googlebot recebe outra coisa — às vezes deliberadamente (cloaking, uma violação de spam segundo os Search Essentials do Google), mais frequentemente por acidente através de regras de WAF/bloqueio de bots, direcionamento por Geo-IP, lógica de borda da CDN ou uma configuração de teste A/B que falha para bots.

Portanto, “é 200 no meu navegador” não prova que “o Google vê 200”. O diagnóstico correto é verificar o que o Googlebot recebeu:

  • Inspeção de URL do GSC — execute um teste ao vivo para ver o status e o conteúdo renderizado que o Google busca, não o que sua máquina vê.
  • Logs do servidor/CDN — a fonte de verdade sobre qual código cada user-agent realmente recebeu.

Um curl -I simples no terminal é útil, mas é apenas mais um solicitante que pode atingir regras de borda diferentes das do Googlebot — trate-o como um dado, não como a palavra final.

Como verificar e monitorar 200s

  • DevTools do navegador — aba Network, recarregue, clique na solicitação do documento e leia a coluna Status.
  • Linha de comandocurl -I https://example.com/page para os cabeçalhos de uma solicitação, curl -IL para seguir a cadeia de redirecionamentos.
  • Google Search Console — a Inspeção de URL informa o status rastreado e permite um teste ao vivo.
  • Bing Webmaster Tools — sua ferramenta de Inspeção de URL é a forma de confirmar o que o Bingbot recebeu. (O Bing não publica um documento específico sobre “como códigos de status afetam a indexação” como o Google faz — prefiro dizer isso a inventar uma política do Bing.)
  • Rastreadores — Screaming Frog e Ahrefs Site Audit mostram códigos de status de todo o site em massa; a Ahrefs SEO Toolbar gratuita mostra o código da página em que você está.

O que significa estar “saudável”: suas URLs importantes e canônicas retornam consistentemente 200 com conteúdo real, e as páginas que deveriam desaparecer ou mudar retornam 404/410 ou 301 em vez de um 200 enganoso.

A decisão, em uma linha

Faça o código corresponder à realidade. Desejada no índice → 200 com conteúdo substancial. Desaparecida de vez → 404 ou 410 (consulte o artigo sobre 404). Mudou de lugar → 301. Duplicata de outra URL → aponte uma tag canonical para a versão preferida em vez de tentar forçar um código diferente de 200. O 200 é a luz verde para páginas que realmente a merecem — nada mais, nada menos.

Try it live

This is a real endpoint on this site — not a simulation. Hit it from the button, open it in a new tab, or curl -i it from your terminal, and the server answers with the actual status code this article is about.

Open in new tab ↗

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin a quote first.