La Ventana, Baja California Sur, México. [email protected]
←Journal
·7 min read

Keep a Staging Site Out of Search Before a Redesign Launch

A redesign in progress can turn up in search results with placeholder copy, or launch carrying the block meant for staging. Here is what Google, Bing, and the IETF's robots.txt standard say about keeping a staging site out of search, and what to change on launch day.

Windware Studio· Design & Development Team

During a redesign, the new site usually lives somewhere before it lives on the real domain: a subdomain such as staging.example.com, or a preview address from the hosting platform. It holds placeholder copy, test inquiries, and pages that are not ready. If a search engine finds it, those pages can appear next to the live site. The opposite failure happens at launch, when the setting that hid staging is copied to production and quietly hides the new site.

A staging site is a working copy of a website used for building and review before changes go live. This article sets Google’s Search Central documentation beside the IETF standard for robots.txt and Bing’s Webmaster Guidelines to explain which methods actually keep a staging site out of search, why the most common one does not, and what to check on launch day.


Search engines discover pages mainly by following links. A staging address does not need to be advertised to be found: a preview link pasted into a public document, a forum post, or a social update can be enough to lead a crawler to it.

What goes wrong when staging is left open

  1. Unfinished pages appear in results. A visitor searching for your firm lands on a page with draft prices or “lorem ipsum” text.
  2. Two copies compete. Bing’s guidelines warn that serving the same content across multiple URLs dilutes signals and reduces its confidence in choosing one. A staging copy of the live site is exactly that.
  3. The block becomes a signpost. The robots.txt standard notes that listing paths in the file exposes them publicly and makes them discoverable.
  4. The block ships to production. A noindex rule or a site-wide robots.txt disallow copied to the live site tells search engines to stop showing, or stop visiting, the new pages.

Three tools that do different jobs

Most of the confusion comes from treating three separate mechanisms as interchangeable. Each answers a different question.

robots.txt is a text file at the root of a site that asks crawlers which addresses they may request. Its rules were first defined by Martijn Koster in 1994 and standardized by the IETF as RFC 9309 in September 2022. The standard says plainly that these rules “are not a form of access authorization.” Google describes robots.txt as a way to manage crawler traffic and states that it “is not a mechanism for keeping a web page out of Google.” Bing’s guidelines are just as direct: “robots.txt controls crawl access, not indexing.”

noindex is a rule, sent either as <meta name="robots" content="noindex"> in the page or as an X-Robots-Tag: noindex HTTP header, that asks search engines not to show a page in results. Google says that once Googlebot crawls a page and reads the rule, it drops that page from its results regardless of whether other sites link to it, and Bing’s guidelines name NOINDEX as the way to keep a URL out of Bing search and Copilot experiences.

Authentication requires a password before the server returns anything. RFC 9309’s security section points to HTTP Authentication as the kind of “valid security measure” robots.txt cannot replace, and Google lists password protection alongside noindex as the ways to keep a page out of its results.

A useful comparison is a “Staff only” sign on an unlocked door. Courteous visitors stay out, nothing stops anyone else, and the sign tells every passer-by that a room exists. robots.txt behaves much the same way. The comparison has a limit: crawlers that honor the sign may still list the door, as the next section explains.

MethodStops compliant crawlers fetching pagesKeeps pages out of resultsStops people and non-compliant bots
robots.txt disallowYesNo; a linked URL can still be indexedNo
noindex (meta or header)No; the page must be crawledYes, for engines that support itNo
Password (HTTP authentication)YesYesYes

The trap of combining robots.txt and noindex

The intuitive fix is to use both: disallow everything in robots.txt and add noindex to every page. Google’s documentation explains why that backfires. A crawler blocked by robots.txt never fetches the page, so it never sees the noindex rule. Google states that such a URL can still be indexed if other pages link to it, appearing in results without a description.

In other words, robots.txt can stop a search engine from reading the instruction that would have kept the page out.


The studio approach: staging to launch

Phase A: Before staging goes up

  • Put the whole staging host behind HTTP authentication or the host’s password feature.
  • Add X-Robots-Tag: noindex at the server or host level for the staging environment as a second layer. Google’s documentation shows how a server configuration can apply the header site-wide.
  • Keep the header in environment settings, not in page templates, so it cannot travel to production with the code.
  • Leave the staging robots.txt permissive, so that any crawler that does get through can read the noindex rule.
  • Share preview links privately, never in public documents or posts.

Phase B: If staging is already in results

Google’s Search Console Removals tool can hide URLs quickly, but its help page sets out the conditions. The URL must belong to a Search Console property you own, so the staging host has to be covered by a property you have verified, and the help page notes that blocking https://staging.domain does not block the main domain. A successful request lasts “only about six months” and does not stop crawling. To make the removal permanent, Google lists returning a 404 or 410 status, requiring a password, or using noindex, which it calls “less secure than the other methods,” and adds: “Do not use robots.txt as a blocking mechanism.”

Phase C: Launch day

  • Confirm the production response sends no X-Robots-Tag: noindex header and no robots meta tag with noindex.
  • Confirm production robots.txt does not disallow the whole site. Bing lists blocking Bingbot in robots.txt among practices to avoid.
  • Check that /robots.txt returns successfully. Under RFC 9309, a server error on that file tells crawlers to assume everything is disallowed.
  • Keep staging password-protected after launch, or take it down, so two copies do not linger.
  • Use Google’s URL Inspection tool to check what Googlebot received from key pages.

Timing matters if a mistake slips through. RFC 9309 says crawlers should not use a cached copy of robots.txt for more than 24 hours, so a corrected file may take up to a day to reach crawlers that follow the standard. A stray noindex can take longer: Google notes that, depending on a page’s importance, it “may take months” for Googlebot to revisit a page, although URL Inspection can request a recrawl.

“Lock the staging site; don’t just label it. Then make sure the label stays behind at launch.”
— Windware Studio Practice Note


Limits and tradeoffs

A password adds friction. Clients and colleagues need credentials to review work, and automated checks such as performance or accessibility scans may need credentials too. That cost is usually smaller than the cost of draft pages in public results, but it should be planned for rather than discovered mid-review.

noindex alone is a reasonable fallback when a host offers no password option, with clear limits. Google notes that other search engines may interpret the rule differently, and Google’s own guidance ranks it below a password. The rule also depends on crawlers choosing to honor it. Google’s robots.txt documentation makes the same point about crawl rules: respectable crawlers obey them, and others might not.

Finally, the Removals tool affects Google Search only. It does not remove copies elsewhere on the web or in other search engines.


Practical takeaways for your next website

  1. Password-protect staging from the first deploy; it is the only method here that also stops people and non-compliant bots.
  2. Add noindex as a header at the environment level, not in templates that ship to production.
  3. Do not block staging in robots.txt; a blocked crawler cannot read the noindex rule.
  4. Make launch day include a search check: no noindex, no site-wide disallow, and a robots.txt that loads.
  5. Clean up quickly if staging leaks, using a verified Search Console property and a permanent block, not the six-month removal alone.

Ready to Discuss Your Website?

If you are planning a new website, a service redesign, or custom development for your business, we’re here to help shape the work.