503 Service Unavailable

Why 503 is the correct status for planned maintenance, how the Retry-After header guides Googlebot, how Google backs off crawling on 503s, and how to avoid accidental deindexing.

First published: Jun 28, 2026 · Last updated: Jul 17, 2026 · Advanced
demand #7 in HTTP Errors#8 in HTTP Status Codes#25 in Technical SEO#34 on the site

503 Service Unavailable is the correct status code for planned, temporary downtime — Google explicitly recommends it over a 404 or a 200 'coming soon' page. Pair it with a Retry-After header so Googlebot knows when to come back, keep robots.txt crawlable (never 503 it), and treat 1–2 days as the ceiling for a full-site 503. Beyond a few days Google starts reading the 503 as permanent, your indexed titles/descriptions freeze rather than refresh, and pages can drop from the index with no guaranteed 1:1 recovery. For longer closures, switch to an indexable 200 placeholder instead.

TL;DR — 503 is the correct code for temporary unavailability, and Google explicitly prefers it over 404/410 (permanent) or a 200 error page (indexable junk). Pair it with Retry-After. Google’s own ceiling for a full-site 503 is 1–2 days; past “a couple of days” it treats the 503 as permanent and drops URLs. A 503 also freezes your indexedStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. metadata — titles, descriptions, and structured dataStructured data is a standardized way of labeling page content (using the schema.org vocabulary in JSON-LD, Microdata, or RDFa) so search engines can understand its meaning. It's not a direct ranking factor — its value is rich results and entity understanding. won’t refresh while it’s served. Never 503 your robots.txt. Google treats 429429 Too Many Requests is an HTTP client-error status code that means a client sent too many requests in a given time window — a mechanism called rate limiting. Unlike other 4xx codes, Google treats 429 as a server-overload signal and slows crawling instead of removing content. and 503 the same for crawl-rate backoff. And recovery from a long outage is likely but not guaranteed to be 1:1. For anything longer than a day or two, serve an indexable 200 placeholder instead.

What 503 is — and isn’t

A 503 is a temporary server condition, not a permanent removal signal. 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 Search behavior depends on duration and repeated responses; recovery timing is not guaranteed. 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

RFC 9110 keeps the language soft on purpose: the server is currently unable to handle the request, relief is described as likely, not certain, and the Retry-After header is optional — a MAY, not a requirement. The standard doesn’t compel a crawlerA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index. to return at any particular time, and a server can even skip the 503 entirely and just refuse the connection instead. That matters for this whole page: everything below about Google’s crawl behavior and recovery timing describes what tends to happen, not a contractual guarantee.

503 is for temporary server-side unavailability. It is not a general-purpose “hide this page” tool, and it is not interchangeable with its neighbors:

  • 404 / 410 — permanent removal. During maintenance these tell Google your pages are gone, and it will start dropping them (410 a touch faster than 404).
  • 200 with error content — a “we’ll be right back” page returning 200 OK looks like real content. Google indexes it, and if every URL returns the same page, it may treat them as duplicates.
  • 503 — “I’m here, just temporarily unable.” The one code that says pause, not delete.

What Google actually recommends (in order)

Google’s current, actively-maintained guidance (Temporarily pause or disable a website) lays out a preference order that most competitor articles skip past. Lead with it:

1. Don’t go fully dark at all — limit functionality instead. Google’s top recommendation is to keep the site live and just disable the risky parts (turn off the cart, show a banner, update your structured data / Merchant CenterGoogle Merchant Center (GMC) is a free platform where retailers upload and manage product data so their products can appear across Google — Shopping, organic Search product grids, Images, Lens, and AI surfaces. Since 2020 it powers free (organic) product listings, not just paid Shopping ads. feed), because that “minimizes any negative effects on your site’s presence in Search.” Full-site 503 is the fallback, not the default.

2. If you must disable the whole site: the 1–2 day rule. Google calls a full-site takedown “an extreme measure that should only be taken for a very short period of time (a few days at most),” and is specific about the mechanism: “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.”

3. Longer than that: switch to an indexable 200 placeholder. Once you’re past a day or two, stop serving 503s. Google: “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 codeAn HTTP status code is the three-digit number a server returns with every response to tell a browser or crawler what happened to its request — success, redirect, client error, or server error. For SEO the code matters as much as the content: it tells Google and Bing whether to index a page, follow a redirect, retry later, or drop the URL from the index..”

The duration spectrum (there’s no single hard cutoff)

Different Google sources give you a spectrum, not one magic number — and it’s directional, not a compliance guarantee. The only figure that comes from Google’s own current documentation is the 1–2 day ceiling below; the minute- and day-level figures are Google staff comments relayed by Search Engine Journal from office-hours sessions, not primary-sourced statements you can hold Google to.

  • Minutes, occasionally. Gary Illyes, via Search Engine Journal: “Serving a 503 status code for an extended period of time will cause a decrease in crawl rateCrawl rate is how fast a search engine crawler fetches pages from your site — the number of simultaneous requests it makes and the delay between them. Google sets it automatically based on your server's health; it's the supply side of crawl budget, not a ranking factor.. Fortunately for you, 10-15 minutes every now and then is not ‘extended’ by any means, so you should be fine.”
  • A day or so. 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.”
  • 1–2 days. Google’s own documented ceiling for an urgent full-site 503 — the one figure in this list from Google’s current, primary-sourced guidance.
  • “A couple of days” and beyond. This is where it turns. 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.”
  • Weeks. Near-guaranteed index loss, and — per the docs — recovery from a full removal has “no fixed time … and there’s no mechanism to speed that up.”

None of this adds up to a safe-harbor countdown clock. It describes what tends to happen, not a rule you can rely on for a specific outcome — treat the 1–2 day figure as the outer edge to plan around, not a guarantee that anything inside it is risk-free.

The metadata-freeze side effect (the risk nobody talks about)

Even a short, correct 503 has a cost that gets missed: while you’re serving 503s, Google can’t update what it already has. Straight from the docs: “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.”

So a 503 freezes your indexed metadata — it doesn’t erase it and it doesn’t update it. If you changed a title or a schema markupSchema markup is code that uses the schema.org vocabulary to label what your content means so search engines can understand it and show rich results. It's most often written in JSON-LD, and it's not a direct ranking factor. right before maintenance, a stale SERP snippet can persist through the whole window. “Safe” means “not permanently harmful when brief,” not “invisible.”

Never return a 503 for robots.txt

This is a real-world foot-gun: some maintenance-mode plugins and blanket CDN rules 503 everything, including robots.txt. Don’t. Google is explicit: “Don’t return a 503 HTTP response status code for the robots.txtA plain-text file at the root of a host that tells crawlers which URLs they may and may not request. It controls crawling, not indexing — a blocked URL can still be indexed if it's linked from elsewhere. file because this blocks all crawlingCrawling is how search engines use automated bots (like Googlebot and Bingbot) to discover URLs and download pages. A page has to be crawlable to be indexed, but crawling on its own isn't a ranking factor..” A 503’d robots.txt stops Google from crawlingCrawling is how search engines use automated bots (like Googlebot and Bingbot) to discover URLs and download pages. A page has to be crawlable to be indexed, but crawling on its own isn't a ranking factor. anything at all — including the recrawl that would confirm you’re back. Keep robots.txt returning 200 even during a full-site outage.

503 vs 429 — Google treats them the same

People search “429 or 503” interchangeably in rate-limiting contexts. For crawl-rate purposes they’re equivalent to Google. Mueller (on a page he himself later marked as older): “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.” Same backoff logic; a 429 Too Many Requests and a 503 both tell GooglebotGooglebot is Google's web crawler — the software that fetches pages so Google can index and rank them. It comes in two variants, Googlebot Smartphone (primary, under mobile-first indexing) and Googlebot Desktop, and runs an evergreen Chromium renderer. to ease off. (Its 502/504 siblings, the other transient gateway/timeout errors, get similar treatment — sustained 5xx of any flavour slows crawling.)

TIP Confirm the maintenance endpoint is really returning 503

A branded maintenance page can look correct while returning 200. Check the HTTP response itself, then confirm Retry-After separately because this result does not display the header.

Test the affected URLs with my free HTTP Status Checker Free

  1. Test representative page URLs and the robots.txt URL during the maintenance window.
  2. Confirm affected pages return 503 while robots.txt remains reachable, and inspect Retry-After with a header-capable client.
  3. Restore 200 responses promptly and rerun the same URL list after maintenance.
The observed status is temporary by intent; duration, Retry-After, and robots.txt availability determine whether the implementation is safe.

The checker shows one URL returning HTTP 503, grouped in the 5xx server-error filter. The verification panel identifies the URL and status and provides a rerun action.

Recovery is likely — not guaranteed

The most useful myth-buster in this whole topic: if a long outage does drop your pages, they usually come back, but not always the same. 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.” Plan your maintenance windows as if recovery could be imperfect, because it can be.

A few FAQs worth answering directly

  • Does a 503 hurt SEO? Not when it’s brief and correct. A short 503 with Retry-After is the intended signal for planned downtime. The harm comes from leaving it up too long, or from 503’ing robots.txt.
  • Is 503 or 404 better for maintenance? 503, every time. A 404 says “gone” and starts deindexingDeindexing means getting a URL to stop appearing in Google's search results. There's no single delete button — the right method depends on whether you own the page, whether removal is temporary or permanent, and whether the content should still exist.; a 503 says “back soon.”
  • Does WordPress return a 503 during updates? Yes — WordPress serves a 503 automatically while core or plugins update. That’s the correct behaviour; the window is normally seconds.
  • Can I just show a “coming soon” page at 200 instead? No. A 200 error page gets indexed as content, and if it’s the same page across every URL, Google may treat those URLs as duplicates.

The single rule to remember

Google’s own ceiling for an urgent full-site 503 is 1–2 days — treat that as the outer edge to plan around, not a guaranteed-safe window. Even inside it, a 503 still pauses your crawl rateCrawl rate is how fast a search engine crawler fetches pages from your site — the number of simultaneous requests it makes and the delay between them. Google sets it automatically based on your server's health; it's the supply side of crawl budget, not a ranking factor. and freezes your metadata, and nothing here promises a specific ranking, indexingStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed., or recovery outcome. Past that ceiling, switch to an indexable 200 placeholder before Google decides your pages are gone. Everything else on this page is a footnote to that.

For the neighbouring codes, see the rest of the HTTP status codesAn HTTP status code is the three-digit number a server returns with every response to tell a browser or crawler what happened to its request — success, redirect, client error, or server error. For SEO the code matters as much as the content: it tells Google and Bing whether to index a page, follow a redirect, retry later, or drop the URL from the index. cluster.

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.