503 Serviço indisponível
Por que 503 é o status correto para manutenção planejada, como o cabeçalho Retry-After orienta o Googlebot, como o Google reduz o rastreamento em 503s e como evitar uma desindexação acidental.
Idiomas
503 Service Unavailable é o código correto para uma indisponibilidade planejada e temporária — o Google o recomenda explicitamente em vez de 404 ou de uma página 200 de “em breve”. Combine-o com um cabeçalho Retry-After para que o Googlebot saiba quando voltar, mantenha robots.txt rastreável (nunca retorne 503 para ele) e trate 1–2 dias como o teto para um 503 no site inteiro. Depois de alguns dias, o Google começa a ler o 503 como permanente, seus títulos e descrições indexados ficam congelados e as páginas podem sair do índice, sem garantia de recuperação 1:1. Para fechamentos mais longos, mude para um placeholder 200 indexável.
TL;DR — Uma resposta 503 Service Unavailable informa aos mecanismos de busca “o site está temporariamente fora do ar — volte em breve”, em vez de “esta página desapareceu”. Quando você precisa tirar o site do ar para uma manutenção planejada, 503 é o código correto. Adicione um cabeçalho
Retry-Afterpara o Googlebot saber quando voltar, mantenha seurobots.txtacessível e não deixe o 503 ativo por mais de um ou dois dias.
O que um 503 realmente significa
HTTP 503 significa que o servidor está temporariamente incapaz de atender à solicitação, e o padrão permite um cabeçalho Retry-After. Evidence for this claim Primary standard or official documentation supporting the adjacent article claim. Scope: Protocol semantics and Search behavior are kept separate; no indexing, ranking, or migration-timing guarantee is inferred. Confidence: high · Verified: RFC 9110: 503 O Google recomenda 503 para uma indisponibilidade breve, mas alerta que uma indisponibilidade prolongada pode afetar a indexação. Evidence for this claim Primary standard or official documentation supporting the adjacent article claim. Scope: Protocol semantics and Search behavior are kept separate; no indexing, ranking, or migration-timing guarantee is inferred. Confidence: high · Verified: Google: Pause an online business
Um 503 é um código de status HTTP da família 5xx — o grupo “há algo errado no lado do servidor”. Mais especificamente, significa que o servidor está ativo o suficiente para responder, mas não consegue atender à solicitação agora, geralmente porque está sobrecarregado ou porque você o colocou em modo de manutenção.
A palavra-chave é temporário. É isso que separa 503 dos outros códigos que você poderia usar quando uma página não está disponível:
- 200 OK diz “aqui está o conteúdo” — mesmo que esse “conteúdo” seja uma mensagem de “voltaremos logo”. Os mecanismos de busca levam isso ao pé da letra e podem indexar a página de erro.
- 404 Not Found / 410 Gone dizem “esta página não existe / desapareceu permanentemente”. Use-os durante a manutenção e você estará dizendo ao Google para remover a página.
- 503 Service Unavailable diz “I exist, I’m just busy — come back later.” (tradução) «Eu existo, só estou ocupado — volte mais tarde». Este é o código que você quer para uma indisponibilidade planejada.
Por que 503 é a escolha certa para manutenção
Quando você está fazendo um deploy, movendo um servidor ou executando uma manutenção programada, quer que os mecanismos de busca pausam, não que concluam que suas páginas morreram. Um 503 compra essa pausa. O Google diz isso diretamente: se você precisa tirar um site do ar brevemente, retorne 503, não 404 e não uma página de erro 200.
Pense em uma placa “Voltamos em 10 minutos” na porta de uma loja. Um 404 é como demolir a loja; uma página 200 de “em breve” é como substituir todo o estoque por uma única placa e esperar que os clientes continuem achando que você vende sapatos. O 503 é a placa que mantém seu lugar.
O cabeçalho Retry-After
Junto com o 503, você pode enviar um cabeçalho Retry-After que informa aproximadamente quando os rastreadores devem voltar. Ele pode ser um número de segundos ou uma data/hora específica:
HTTP/1.1 503 Service Unavailable
Retry-After: 3600Esse exemplo pede que os bots esperem cerca de uma hora. O Google pode usá-lo como uma dica de quando rastrear novamente. Ele não voltará no segundo exato, mas também não voltará antes desse momento.
As três coisas que não podem dar errado
- Não mantenha o 503 por muito tempo. Um dia ou dois está bem. Muito mais que isso faz o Google começar a pensar que a indisponibilidade é permanente e pode remover suas páginas.
- Não retorne 503 para o arquivo
robots.txt. Se esse arquivo retornar 503, o Google não poderá rastrear nada — inclusive a verificação que informaria que você voltou ao ar. - Não use uma página 404 ou uma página 200 simples de “em breve”. Esses sinais são errados e podem custar mais do que o 503.
Quer os limiares de duração, as citações exatas do Google e a implementação plataforma por plataforma? Mude para a aba Avançado.
TL;DR — 503 é o código correto para indisponibilidade temporária, e o Google o prefere explicitamente a 404/410 (permanentes) ou a uma página de erro 200 (lixo indexável). Combine-o com
Retry-After. O teto do próprio Google para um 503 no site inteiro é de 1–2 dias; depois de “alguns dias”, ele trata o 503 como permanente e remove URLs. Um 503 também congela seus metadados indexados — títulos, descrições e dados estruturados não são atualizados enquanto ele é servido. Nunca retorne 503 pararobots.txt. O Google trata 429 e 503 da mesma forma para o recuo da taxa de rastreamento. E a recuperação de uma indisponibilidade longa é provável, mas não há garantia de recuperação 1:1. Para qualquer período maior que um ou dois dias, sirva um placeholder 200 indexável.
O que 503 é — e o que não é
Um 503 é uma condição temporária do servidor, não um sinal de remoção permanente. Evidence for this claim Primary standard or official documentation supporting the adjacent article claim. Scope: Protocol semantics and Search behavior are kept separate; no indexing, ranking, or migration-timing guarantee is inferred. Confidence: high · Verified: RFC 9110: 503 O comportamento da Busca depende da duração e da repetição das respostas; o momento da recuperação não é garantido. Evidence for this claim Primary standard or official documentation supporting the adjacent article claim. Scope: Protocol semantics and Search behavior are kept separate; no indexing, ranking, or migration-timing guarantee is inferred. Confidence: high · Verified: Google: Pause an online business
A RFC 9110 mantém a linguagem deliberadamente flexível: o servidor está atualmente incapaz de atender à solicitação, a recuperação é descrita como provável, não certa, e o cabeçalho Retry-After é opcional — um MAY, não uma exigência. O padrão não obriga um rastreador a voltar em nenhum momento específico, e um servidor pode até ignorar o 503 e simplesmente recusar a conexão. Isso importa para toda esta página: tudo abaixo sobre o comportamento de rastreamento e o momento de recuperação do Google descreve o que tende a acontecer, não uma garantia contratual.
503 é para indisponibilidade temporária do lado do servidor. Ele não é uma ferramenta genérica para “esconder esta página” e não é intercambiável com seus vizinhos:
- 404 / 410 — remoção permanente. Durante a manutenção, esses códigos dizem ao Google que suas páginas desapareceram, e ele começará a removê-las (410 um pouco mais rápido que 404).
- 200 com conteúdo de erro — uma página de “voltaremos logo” retornando
200 OKparece conteúdo real. O Google a indexa e, se todas as URLs retornarem a mesma página, pode tratá-las como duplicatas. - 503 — “estou aqui, só temporariamente indisponível”. O único código que diz pause, não apague.
O que o Google realmente recomenda (em ordem)
A orientação atual e mantida ativamente pelo Google (Pause or disable a website temporarily) apresenta uma ordem de preferência que a maioria dos artigos concorrentes ignora. Comece por ela:
1. Não fique totalmente fora do ar — limite a funcionalidade. A recomendação principal do Google é manter o site ativo e desabilitar apenas as partes arriscadas (desligar o carrinho, mostrar um banner, atualizar seus dados estruturados/feed do Merchant Center), porque isso “minimizes any negative effects on your site’s presence in Search.” (tradução) «minimiza quaisquer efeitos negativos na presença do seu site na Busca». O 503 do site inteiro é o plano de fallback, não o padrão.
2. Se precisar desabilitar o site inteiro: a regra de 1–2 dias. O Google chama uma retirada do site inteiro de “an extreme measure that should only be taken for a very short period of time (a few days at most),” (tradução) «uma medida extrema que só deve ser tomada por um período muito curto (alguns dias, no máximo)» e é específico sobre o mecanismo: “If you need to urgently disable the site for 1-2 days, then return an informational error page with a 503 HTTP response status code instead of all content.” (tradução) «Se você precisa desabilitar o site urgentemente por 1–2 dias, retorne uma página de erro informativa com um código de resposta HTTP 503 em vez de todo o conteúdo.»
3. Mais tempo que isso: mude para um placeholder 200 indexável. Quando ultrapassar um ou dois dias, pare de servir 503. O Google diz: “If you need to disable the site for a longer time, then provide an indexable home page as a placeholder for users to find in Search by using the 200 HTTP status code.” (tradução) «Se você precisa desabilitar o site por mais tempo, forneça uma página inicial indexável como placeholder para que os usuários a encontrem na Busca usando o código de status HTTP 200.»
O espectro de duração (não há um único corte rígido)
Fontes diferentes do Google dão um espectro, não um número mágico — e ele é direcional, não uma garantia de conformidade. O único valor que vem da documentação atual do próprio Google é o teto de 1–2 dias abaixo; os valores em minutos e dias são comentários de funcionários do Google retransmitidos pelo Search Engine Journal a partir de sessões de office hours, não declarações de fonte primária que você possa cobrar do Google.
- Minutos, ocasionalmente. Gary Illyes, via Search Engine Journal: “Serving a 503 status code for an extended period of time will cause a decrease in crawl rate. Fortunately for you, 10-15 minutes every now and then is not ‘extended’ by any means, so you should be fine.” (tradução) «Servir um código de status 503 por um período prolongado reduzirá a taxa de rastreamento. Felizmente, 10–15 minutos de vez em quando não constituem um período prolongado, portanto tudo deve ficar bem.»
- Um dia, aproximadamente. John Mueller, via Search Engine Journal: “For an outage of maybe a day or so, using a 503 result code is a great way to tell us that we should check back.” (tradução) «Para uma indisponibilidade de cerca de um dia, usar um código de resultado 503 é uma ótima forma de nos dizer que devemos verificar novamente.»
- 1–2 dias. O teto documentado pelo Google para um 503 urgente no site inteiro — o único valor desta lista vindo da orientação atual e de fonte primária do Google.
- “Alguns dias” ou mais. É aqui que a situação muda. Mueller, via Search Engine Journal: “after a couple of days we think this is a permanent result code, and we think your pages are just gone, and we will drop them from the index.” (tradução) «depois de alguns dias, achamos que este é um código de resultado permanente, que suas páginas simplesmente desapareceram e que vamos removê-las do índice».
- Semanas. Perda do índice quase garantida e — segundo a documentação — a recuperação da remoção completa “no fixed time … and there’s no mechanism to speed that up.” (tradução) «não tem prazo fixo … e não há mecanismo para acelerar esse processo».
Nada disso forma um relógio de contagem regressiva de porto seguro. Descreve o que tende a acontecer, não uma regra em que você possa confiar para um resultado específico — trate o valor de 1–2 dias como o limite externo para seu planejamento, não como uma garantia de que tudo dentro dele é isento de risco.
O efeito colateral do congelamento de metadados (o risco sobre o qual ninguém fala)
Mesmo um 503 curto e correto tem um custo que passa despercebido: enquanto você serve 503, o Google não consegue atualizar o que já tem. Diretamente da documentação: “it’s not possible for Google’s systems to refresh titles, descriptions, metadata, or structured data included on a website if a page returns a 503 HTTP response status code.” (tradução) «não é possível para os sistemas do Google atualizar títulos, descrições, metadados ou dados estruturados incluídos em um site se uma página retornar um código de status HTTP 503.»
Assim, um 503 congela seus metadados indexados — não os apaga e não os atualiza. Se você mudou um título ou uma marcação de schema logo antes da manutenção, um snippet antigo na SERP pode persistir durante toda a janela. “Seguro” significa “não causa dano permanente quando breve”, não “invisível”.
Nunca retorne 503 para robots.txt
Esta é uma armadilha real: alguns plugins de modo de manutenção e regras abrangentes de CDN retornam 503 para tudo, incluindo robots.txt. Não faça isso. O Google é explícito: “Don’t return a 503 HTTP response status code for the robots.txt file because this blocks all crawling.” (tradução) «Não retorne um código de status HTTP 503 para o arquivo robots.txt, porque isso bloqueia todo o rastreamento.» Um robots.txt com 503 impede o Google de rastrear qualquer coisa — inclusive o novo rastreamento que confirmaria seu retorno. Mantenha robots.txt retornando 200 mesmo durante uma indisponibilidade total.
503 versus 429 — o Google trata os dois da mesma forma
As pessoas pesquisam “429 ou 503” como se fossem intercambiáveis em contextos de rate limiting. Para fins de taxa de rastreamento, eles são equivalentes para o Google. Mueller (em uma página que mais tarde ele próprio marcou como antiga): “we treat them both about the same. We see both as a temporary issue, and tend to slow down crawling if we see a bunch of them.” (tradução) «Para o Google, os dois são praticamente o mesmo: um problema temporário que faz o rastreamento desacelerar quando aparece em grande quantidade.» A mesma lógica de recuo; um 429 Too Many Requests e um 503 dizem ao Googlebot para diminuir o ritmo. (Seus irmãos 502/504, os outros erros transitórios de gateway/timeout, recebem tratamento semelhante — 5xx sustentados de qualquer tipo reduzem o rastreamento.)
A recuperação é provável — não garantida
O melhor desmistificador de todo este tema: se uma indisponibilidade longa remover suas páginas, elas geralmente voltam, mas nem sempre da mesma forma. Mueller: “when the pages come back we will crawl them again and we will try to index them again. But it’s essentially during that time we will probably drop a lot of the pages from the website from our index, and there’s a pretty good chance that it’ll come back in a similar way but it’s not always guaranteed.” (tradução) «quando as páginas voltarem, vamos rastreá-las e tentar indexá-las novamente. Mas, durante esse período, provavelmente removeremos muitas páginas do site do nosso índice; há uma boa chance de que elas voltem de forma semelhante, mas isso não é garantido.» Planeje suas janelas de manutenção como se a recuperação pudesse ser imperfeita, porque ela pode.
Algumas perguntas frequentes que vale responder diretamente
- Um 503 prejudica o SEO? Não quando é breve e correto. Um 503 curto com
Retry-Afteré o sinal pretendido para uma indisponibilidade planejada. O dano vem de deixá-lo ativo por tempo demais ou de retornar 503 pararobots.txt. - 503 ou 404 é melhor para manutenção? 503, sempre. 404 diz “desapareceu” e inicia a desindexação; 503 diz “volto em breve”.
- O WordPress retorna 503 durante atualizações? Sim — o WordPress serve 503 automaticamente enquanto o core ou os plugins são atualizados. Esse é o comportamento correto; a janela normalmente dura segundos.
- Posso simplesmente mostrar uma página “em breve” com 200? Não. Uma página de erro 200 é indexada como conteúdo e, se for a mesma página em todas as URLs, o Google pode tratar essas URLs como duplicatas.
A única regra para lembrar
O teto do próprio Google para um 503 urgente no site inteiro é de 1–2 dias — trate-o como o limite externo para seu planejamento, não como uma janela garantidamente segura. Mesmo dentro dele, um 503 ainda pausa sua taxa de rastreamento e congela seus metadados, e nada aqui promete um resultado específico de ranking, indexação ou recuperação. Depois desse teto, mude para um placeholder 200 indexável antes que o Google decida que suas páginas desapareceram. Todo o resto desta página é uma nota de rodapé a isso.
Para os códigos vizinhos, veja o restante do cluster de códigos de status HTTP.
Resumo de IA
Uma versão condensada do conteúdo avançado:
- 503 = indisponibilidade temporária. É o código correto para manutenção planejada — o Google o prefere a 404/410 (permanentes) e a uma página de erro 200 (que é indexada como conteúdo, muitas vezes como duplicata).
- Combine-o com
Retry-After(segundos ou uma data HTTP), embora a RFC 9110 torne o cabeçalho opcional (umMAY) — o Googlebot pode usá-lo como dica para um novo rastreamento e reduz sua taxa de rastreamento, mas nada o obriga a voltar em um horário exato. - A duração é um espectro, não uma garantia: o único valor da documentação atual do próprio Google é 1–2 dias, seu teto documentado para um 503 urgente no site inteiro. Comentários de funcionários do Google retransmitidos pelo Search Engine Journal tratam janelas breves (10–15 minutos, cerca de um dia) como geralmente tranquilas e “alguns dias” ou mais como o ponto em que o Google começa a tratar o 503 como permanente e remove páginas — leia isso como direção, não como compromisso de fonte primária. Para períodos mais longos, sirva um placeholder 200 indexável.
- Os metadados congelam: enquanto um 503 é servido, o Google não consegue atualizar títulos, descrições ou dados estruturados — portanto snippets antigos podem persistir.
- Nunca retorne 503 para
robots.txt— isso bloqueia todo o rastreamento, inclusive o novo rastreamento que confirma seu retorno. - 429 ≈ 503 para recuo da taxa de rastreamento; o Google os trata da mesma forma.
- A recuperação após uma indisponibilidade longa é provável, mas “nem sempre garantida” para ser 1:1 (Mueller); a remoção completa do índice não tem prazo fixo de recuperação.
- Melhor prática geral: a recomendação principal do Google é evitar uma retirada completa — limite a funcionalidade e mantenha o site ativo.
Documentação oficial
Orientação de fonte primária sobre 503 e indisponibilidade planejada.
- Pausar ou desativar temporariamente um site — a orientação atual e canônica do Google: a ordem de preferência, a regra de 1–2 dias,
Retry-After, a exceção de robots.txt, a observação sobre congelamento de metadados e a dica de verificação com curl. - Como lidar com a indisponibilidade planejada de um site (post de 2011) — a publicação original (agora com o aviso “outdated, see best practices”). Fonte do exemplo clássico de PHP com
Retry-After. - Guia aprofundado sobre como a Pesquisa Google funciona — contexto sobre o recuo da taxa de rastreamento: erros da família HTTP 500 significam “diminua o ritmo”.
RFC / referência técnica
- MDN — 503 Service Unavailable — a definição do status baseada nos padrões.
- MDN — Retry-After header — sintaxe das formas de segundos e data HTTP.
Bing / Microsoft
- O Bing não publica uma orientação sobre 503 para manutenção com a mesma granularidade do Google.
Retry-Afteré um cabeçalho RFC padrão (não específico do Google), e o Bingbot também reduz a taxa de rastreamento diante de respostas repetidas5xx/429— mas trate qualquer comportamento específico do Bing como inferido da semântica HTTP padrão, não como uma declaração documentada.
Citações da fonte
Declarações registradas de fontes do Google. Cada link é um deep link que salta para o trecho citado na página de origem.
Documentação do Google — a regra de 1–2 dias
- “If you need to urgently disable the site for 1-2 days, then return an informational error page with a 503 HTTP response status code instead of all content.” (tradução) «Se você precisa desabilitar o site urgentemente por 1–2 dias, retorne uma página de erro informativa com um código de resposta HTTP 503 em vez de todo o conteúdo.» Jump to quote
- “If you need to disable the site for a longer time, then provide an indexable home page as a placeholder for users to find in Search by using the 200 HTTP status code.” (tradução) «Se você precisa desabilitar o site por mais tempo, forneça uma página inicial indexável como placeholder para que os usuários a encontrem na Busca usando o código de status HTTP 200.» Jump to quote (tradução) «A documentação citada determina que uma indisponibilidade urgente do site inteiro por 1–2 dias deve retornar uma página de erro informativa com 503, enquanto períodos mais longos devem usar uma página inicial 200 indexável como placeholder.»
Documentação do Google — robots.txt e metadados
- “Don’t return a 503 HTTP response status code for the robots.txt file because this blocks all crawling.” (tradução) «Não retorne um código de status HTTP 503 para o arquivo robots.txt, porque isso bloqueia todo o rastreamento.» Jump to quote
- “it’s not possible for Google’s systems to refresh titles, descriptions, metadata, or structured data included on a website if a page returns a 503 HTTP response status code.” (tradução) «não é possível para os sistemas do Google atualizar títulos, descrições, metadados ou dados estruturados incluídos em um site se uma página retornar um código de status HTTP 503.» Jump to quote
- “removing a site completely from Google’s index is a significant change that can take quite some time to recover from.” (tradução) «remover completamente um site do índice do Google é uma mudança significativa da qual pode levar bastante tempo para se recuperar.» Jump to quote (tradução) «As citações alertam contra retornar 503 para robots.txt porque isso bloqueia todo o rastreamento; também explicam que o Google não consegue atualizar títulos, descrições, metadados ou dados estruturados quando uma página retorna 503, e que a remoção completa do índice não tem prazo fixo de recuperação.»
Google Search Central Blog (2011)
- “instead of returning an HTTP result code 404 (Not Found) or showing an error page with the status code 200 (OK) when a page is requested, it’s better to return a 503 HTTP result code (Service Unavailable) which tells search engine crawlers that the downtime is temporary.” (tradução) «em vez de retornar um código HTTP 404 (Not Found) ou mostrar uma página de erro com status 200 (OK), é melhor retornar um código HTTP 503 (Service Unavailable), que informa aos rastreadores que a indisponibilidade é temporária.» Jump to quote
- “If known, the length of the downtime in seconds or the estimated date and time when the downtime will be complete can be specified in an optional Retry-After header, which Googlebot may use to determine when to recrawl the URL.” (tradução) «Se forem conhecidos, a duração da indisponibilidade em segundos ou a data e hora estimadas para seu término podem ser informadas em um cabeçalho Retry-After opcional, que o Googlebot pode usar para decidir quando rastrear a URL novamente.» Jump to quote (tradução) «As citações do artigo de 2011 dizem que 503 é melhor que 404 ou uma página de erro 200 durante uma indisponibilidade temporária e que Retry-After pode informar segundos ou a data estimada de conclusão para orientar um novo rastreamento.»
John Mueller, Google
- “please return a ‘503 Service unavailable’ HTTP result code… they’re generally more than happy to give your site some time to catch up again.” (tradução) «retorne um código de resultado HTTP “503 Service unavailable” … eles geralmente ficam satisfeitos em dar ao seu site algum tempo para se recuperar.» Ir para a citação De johnmu.com/503s/ (2013), republicação pessoal de Mueller de uma publicação do Google+. A página atual renderiza apóstrofos tipográficos, por isso o deep link é curto para garantir uma correspondência exata do texto.
- “we treat them both about the same. We see both as a temporary issue, and tend to slow down crawling if we see a bunch of them.” (tradução) «tratamos os dois praticamente da mesma forma. Vemos ambos como um problema temporário e tendemos a reduzir o rastreamento quando vemos muitos deles.» (sobre 429 e 503) Ir para a citação De johnmu.com/429-or-503/ (2015), uma página que o próprio Mueller marca como “antiga, provavelmente desatualizada”.
- “after a couple of days we think this is a permanent result code, and we think your pages are just gone, and we will drop them from the index.” (tradução) «depois de alguns dias, achamos que este é um código de resultado permanente, que suas páginas simplesmente desapareceram e que vamos removê-las do índice». Ir para a citação Reproduzido pelo Search Engine Journal a partir de uma sessão de perguntas e respostas do Search Central; confirme no original antes de tratá-lo como definitivo. (tradução) «As citações de Mueller recomendam 503 durante uma indisponibilidade, descrevem 429 e 503 como problemas temporários tratados de forma semelhante e alertam que alguns dias de indisponibilidade podem levar à remoção de páginas do índice. As fontes e ressalvas originais permanecem preservadas acima.»
Gary Illyes, Google
- “Serving a 503 status code for an extended period of time will cause a decrease in crawl rate. Fortunately for you, 10-15 minutes every now and then is not ‘extended’ by any means, so you should be fine.” (tradução) «Servir um código de status 503 por um período prolongado reduzirá a taxa de rastreamento. Felizmente, 10–15 minutos de vez em quando não constituem um período prolongado, portanto tudo deve ficar bem.» Jump to quote Relayed by Search Engine Journal from a Google Search Central SEO office-hours session. (tradução) «A citação de Illyes explica que servir 503 por um período prolongado reduz a taxa de rastreamento, mas que 10–15 minutos ocasionalmente não constituem um período prolongado.»
Checklist de 503 para manutenção planejada
Execute isto antes, durante e depois de uma janela de manutenção:
- Decidiu se realmente precisa de uma retirada completa — pode limitar a funcionalidade e manter o site ativo (a opção preferida do Google)?
- A página de manutenção retorna um status
503real (verificado com curl, não apenas observado no navegador). - Um cabeçalho
Retry-Afterestá definido (segundos ou uma data HTTP), com uma estimativa realista. -
robots.txtcontinua retornando200e está acessível — nunca deve receber 503. - A página 503 é leve: HTML estático, CSS inline, sem assets pesados (os bots a acessarão repetidamente).
- Um prazo interno rígido foi definido para mudar para um placeholder 200 indexável se a janela ultrapassar cerca de 1–2 dias.
- Nenhuma página retorna
404/410ou uma página 200 de “em breve” em vez do 503. - O Page Indexing e o Crawl Stats do Search Console estão sendo acompanhados durante e depois da janela em busca de picos
5xx. - Depois da manutenção: confirme que as páginas voltaram a retornar
200, envie um novo rastreamento pelo URL Inspection para URLs importantes e verifique se metadados/snippets foram atualizados.
SOP: coloque seu site corretamente em modo de manutenção planejada
Um procedimento repetível para uma janela de manutenção curta e segura.
Antes da janela
- Decida o escopo. Se puder manter o site ativo e desabilitar apenas a parte arriscada (carrinho, checkout, um recurso quebrado), faça isso — é a recomendação principal do Google e evita todos os riscos abaixo. Só prossiga com um 503 completo se realmente precisar tirar tudo do ar.
- Estime a duração com honestidade. Se realisticamente for passar de 1–2 dias, não planeje um 503 do site inteiro — planeje uma homepage 200 indexável como placeholder.
- Crie uma página de manutenção leve. HTML estático, CSS inline, imagens em base64 ou nenhuma imagem. Bots (e usuários) a acessarão repetidamente, então ela não deve pressionar o servidor.
Configurando a resposta
- Retorne um 503 real para o conteúdo do site. Exemplos:
- Apache (
.htaccess): encaminhe tudo para a página de manutenção e force o status —RewriteEngine On RewriteCond %{REQUEST_URI} !^/maintenance\.html$ RewriteCond %{REQUEST_URI} !^/robots\.txt$ RewriteRule ^ /maintenance.html [R=503,L] ErrorDocument 503 /maintenance.html Header always set Retry-After "3600" - Nginx:
location / { return 503; } error_page 503 /maintenance.html; location = /maintenance.html { internal; add_header Retry-After 3600; } location = /robots.txt { } # keep robots.txt serving 200 - PHP (formato do próprio exemplo do Google):
header('HTTP/1.1 503 Service Unavailable'); header('Retry-After: 3600');
- Apache (
- Defina
Retry-Aftercom uma estimativa realista — segundos (3600) ou uma data HTTP. - Isole
robots.txt. Garanta querobots.txtcontinue retornando200(veja as condições de rewrite acima). Esta é a etapa que a maioria das pessoas esquece.
Verifique
- Confirme o status com curl, não com o navegador:
curl -I -X GET "https://www.example.com/" # expect: HTTP/1.1 503 Service Unavailable + Retry-After: ... curl -I "https://www.example.com/robots.txt" # expect: HTTP/1.1 200 OK
Durante e depois
- Acompanhe o relógio. Se estiver se aproximando do teto de 1–2 dias, mude para um placeholder
200indexável antes que o Google comece a tratar o 503 como permanente. - Traga o site de volta. Remova a regra 503; confirme que as páginas retornam
200novamente. - Verifique de novo. Use o GSC URL Inspection em páginas importantes, acompanhe o Crawl Stats até o pico
5xxdiminuir e confirme a atualização de títulos/descrições/dados estruturados (eles ficaram congelados durante o 503).
O que não fazer — e os mitos por trás disso
Mito: “Um 503 por mais de alguns dias é totalmente seguro se eu usar Retry-After.”
Retry-After melhora a precisão; não substitui o teto do Google. A documentação limita um 503 urgente no site inteiro a 1–2 dias, e Mueller diz: “after a couple of days we think this is a permanent result code… and we will drop them from the index.” (tradução) «depois de alguns dias, achamos que este é um código de resultado permanente … e vamos removê-las do índice». Mude para um placeholder 200 antes de chegar lá.
Mito: “503 não tem impacto algum em SEO se for implementado corretamente.” Mesmo um 503 curto e correto pausa a atualização dos metadados — títulos, descrições e dados estruturados não podem ser atualizados enquanto ele é servido — e qualquer 503 reduz a taxa de rastreamento. “Seguro” aqui quer dizer “não causa dano permanente quando breve”, não que seja “invisível”.
Mito: “Uma página 404 ou 200 de ‘em breve’ é tão boa quanto um 503 durante a manutenção.”
Não. 404/410 sinalizam remoção permanente e fazem as páginas desaparecerem mais rápido. Uma página de erro 200 geral é indexada como conteúdo — e, se todas as URLs retornarem a mesma página, o Google pode tratá-las como duplicatas.
Mito: “Você também deve retornar 503 para seu robots.txt, para fazer tudo corretamente.”
O oposto. Um robots.txt com 503 bloqueia todo o rastreamento, inclusive o novo rastreamento que confirma que o site voltou. Mantenha-o em 200.
Mito: “Se o Google remover minhas páginas durante uma indisponibilidade, elas voltarão exatamente iguais.” É provável, mas “not always guaranteed” (Mueller), e a recuperação de uma remoção completa não tem prazo fixo nem forma de ser acelerada.
Mito: “429 e 503 são sinais totalmente diferentes.” Para o recuo da taxa de rastreamento, o Google “treat[s] them both about the same.” (tradução) «trata os dois praticamente da mesma forma».
O antipadrão para gravar na memória: servir uma página simples 200 OK de “indisponível para manutenção”. É o erro mais comum e aquele contra o qual o Google alerta de forma mais direta.
503 para manutenção — resumo rápido
Qual código usar em cada situação
| Situação | Código | Motivo |
|---|---|---|
| Manutenção planejada curta (≤ 1–2 dias) | 503 + Retry-After | “Temporário — volte mais tarde” |
| Manutenção superior a 1–2 dias | 200 placeholder indexável | 503 pareceria permanente |
| Página removida permanentemente | 404 / 410 | Remoção verdadeira |
| Desabilitar apenas o carrinho / um recurso | manter 200, limitar funcionalidade | Recomendação principal do Google |
| Servidor sobrecarregado / rate limiting | 503 ou 429 | O Google trata os dois da mesma forma |
Espectro de duração
| Janela | Veredito |
|---|---|
| 10–15 min, ocasionalmente | Tranquilo (Illyes) |
| Cerca de um dia | Tranquilo (Mueller) |
| 1–2 dias | Teto documentado pelo Google para 503 no site inteiro |
| “Alguns dias” ou mais | Google trata 503 como permanente — páginas removidas |
| Semanas | Perda do índice quase certa; sem prazo fixo de recuperação |
A linha de 1–2 dias é o teto documentado atual do próprio Google. As linhas de minutos e dias são comentários de funcionários do Google retransmitidos pelo Search Engine Journal, não documentação primária do Google — leia o espectro como direcional, não como uma janela de conformidade garantidamente segura.
Formatos de Retry-After
- Segundos:
Retry-After: 3600 - Data HTTP:
Retry-After: Sat, 8 Oct 2011 18:27:00 GMT
Regras para não esquecer
robots.txtpermanece em 200 — nunca retorne 503 para ele.- Página 503 = HTML estático, CSS inline (os bots a acessam repetidamente).
- 503 congela títulos/descrições/schema indexados — eles não serão atualizados.
- Verifique com
curl -I, não com o navegador.
Verifique se seu 503 é realmente um 503
Um navegador pode mostrar uma página de manutenção enquanto o servidor retorna silenciosamente 200. Confira o código de status e os cabeçalhos reais com curl.
macOS / Linux
# Site content should return 503 with a Retry-After header
curl -I -X GET "https://www.example.com/"
# expect: HTTP/1.1 503 Service Unavailable
# Retry-After: 3600
# robots.txt must stay reachable (200), NOT 503
curl -I "https://www.example.com/robots.txt"
# expect: HTTP/1.1 200 OKWindows (PowerShell)
# -SkipHttpErrorCheck lets PowerShell show the 503 instead of throwing
(Invoke-WebRequest -Uri "https://www.example.com/" -Method Head -SkipHttpErrorCheck).StatusCode
(Invoke-WebRequest -Uri "https://www.example.com/robots.txt" -Method Head).StatusCodeRespostas 503 mínimas
PHP (formato do próprio exemplo do Google)
<?php
header('HTTP/1.1 503 Service Unavailable');
header('Retry-After: 3600'); // or an HTTP date: 'Sat, 8 Oct 2011 18:27:00 GMT'
?>
<!DOCTYPE html>
<title>We'll be right back</title>
<h1>Down for scheduled maintenance</h1>
<p>We expect to be back within the hour. Thanks for your patience.</p>Nginx (conteúdo 503, robots.txt excluído)
location / {
return 503;
}
error_page 503 /maintenance.html;
location = /maintenance.html {
internal;
add_header Retry-After 3600;
}
location = /robots.txt { } # keep serving robots.txt normally (200)Mantenha a página de manutenção estática, com CSS inline e sem assets pesados — os bots a solicitarão repetidamente, e você não quer que essa própria página pressione o servidor.
Ferramentas para lidar com e verificar um 503
curl -I— a maneira mais rápida de confirmar o código de status real e o cabeçalhoRetry-After(um navegador pode esconder a verdade). Veja a aba Scripts.- Google Search Console — URL Inspection — confira o último status rastreado de uma URL específica e solicite um novo rastreamento quando voltar ao ar.
- GSC — relatório Crawl Stats — acompanhe o pico
5xx/503durante a janela e confirme que ele diminuiu depois. - GSC — relatório Page Indexing — identifique páginas removidas se a janela tiver sido longa.
- Screaming Frog SEO Spider — rastreie seu próprio site para confirmar quais URLs retornam 503 versus 200 (e que
robots.txtnão recebe 503). - Ahrefs Site Audit / Ahrefs Webmaster Tools — mostra respostas
5xxem todo o site para que você encontre um 503 que persiste além da janela. - Plugins de modo de manutenção do WordPress (por exemplo, WP Maintenance Mode) — o WordPress já retorna 503 automaticamente durante atualizações do core/plugins; um plugin dá uma página de manutenção controlada — apenas confirme que ele não retorna 503 para
robots.txt.
Recursos que valem seu tempo
Meus textos relacionados
- Códigos de status HTTP: a lista completa para SEO — meu guia completo dos códigos de status relevantes para SEO, com 503 no contexto de
5xx. Este mergulho em um único tema é a versão ampliada do tratamento de uma linha naquele guia. - Guia para iniciantes em SEO técnico — onde rastreamento, códigos de status e manutenção se encaixam no quadro maior.
Da indústria
- Pausar ou desativar temporariamente um site (Google Search Central) — a orientação canônica e atual; leia primeiro.
- Como lidar com a indisponibilidade planejada de um site (Google Search Central Blog, 2011) — o artigo original e o exemplo clássico de PHP com
Retry-After. - 503s (John Mueller, johnmu.com) — a explicação de Mueller, em linguagem simples, sobre por que usar 503 durante uma indisponibilidade.
- Google sobre o impacto dos códigos de status 503 no SEO (Search Engine Journal) — Gary Illyes sobre o dado de que “10–15 minutos está tudo bem”.
- O Google desindexará páginas se o site ficar fora do ar por vários dias (Search Engine Journal) — o limiar de Mueller de “alguns dias… vamos removê-las”.
- HTTP 503: como conduzir corretamente a manutenção do site para SEO (Yoast) — um guia prático, com foco em WordPress, da mecânica de
Retry-After. - 503 Serviço indisponível (MDN) — a referência de padrões para o status.
Vídeos
- Google Search Central (YouTube) — a série Como a Pesquisa Google funciona e os arquivos de sessões de atendimento sobre SEO, nos quais Mueller e Illyes responderam às perguntas sobre 503/manutenção e cronogramas de desindexação citadas nesta página. Canal
Estatísticas que vale citar
- 1–2 dias — o teto documentado pelo Google para usar um 503 no site inteiro durante uma retirada urgente; depois disso, mude para um placeholder 200. Fonte
- 10–15 minutos, ocasionalmente = tranquilo — Gary Illyes sobre quanto uma janela 503 breve pode durar sem reduzir a taxa de rastreamento. Fonte
- “Alguns dias” — o ponto em que o Google começa a tratar um 503 como permanente e remove páginas do índice (John Mueller). Fonte
- Sem prazo fixo de recuperação — a documentação do Google sobre recuperar-se de uma remoção completa do índice: não há cronograma definido nem forma de acelerá-lo. Fonte
Teste seus conhecimentos: 503 Service Unavailable
Cinco perguntas rápidas sobre usar 503 para manutenção planejada. Escolha uma resposta para cada uma e depois confira.
Registro de alterações
Atualizado em 9 de ago. de 2026.
Resumo editorial e detalhes registrados da alteração.Detalhes da alteração
-
As notas detalhadas sobre as alterações estão disponíveis atualmente em inglês.
-
As notas detalhadas sobre as alterações estão disponíveis atualmente em inglês.
-
As notas detalhadas sobre as alterações estão disponíveis atualmente em inglês.
Não é possível fazer a comparação completa — nenhum instantâneo anterior foi arquivado para esta revisão.
Atualizado em 8 de ago. de 2026.
Resumo editorial e detalhes registrados da alteração.Detalhes da alteração
-
As notas detalhadas sobre as alterações estão disponíveis atualmente em inglês.
Não é possível fazer a comparação completa — nenhum instantâneo anterior foi arquivado para esta revisão.
Atualizado em 17 de jul. de 2026.
Resumo editorial e detalhes registrados da alteração.Detalhes da alteração
-
As notas detalhadas sobre as alterações estão disponíveis atualmente em inglês.
Não é possível fazer a comparação completa — nenhum instantâneo anterior foi arquivado para esta revisão.
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.