What is a meta refresh redirect? Definition and SEO impact

A meta refresh redirect is an HTML instruction in the page’s head that tells the browser to load another URL after a set number of seconds. Unlike a 301 or 302, it is not an HTTP status code: the server returns the page normally and the browser performs the redirect. Google treats a 0-second meta refresh as a permanent redirect and any delay above 0 seconds as a temporary one.

Updated: 17 October 20263 min read
Infographic comparing a 301 redirect with a meta refresh redirect: where it runs, status code and how Google treats it
Source: Google Search Central, MDN Web Docs

How does a meta refresh redirect work?

A meta refresh redirect works by placing a meta tag with http-equiv=”refresh” in the head of an HTML page. The content attribute holds a number of seconds, then a semicolon and the target URL. A typical instant version looks like this in plain text: meta http-equiv=”refresh” content=”0; url=https://example.com/new-page/”.

According to MDN, the timer starts only after the page has fully loaded. The same instruction can be sent as a Refresh HTTP header (for example Refresh: 0; url=https://example.com/new-page/), which MDN describes as exactly equivalent to the meta tag. Without a URL, the tag simply reloads the same page after the delay.

Meta refresh vs HTTP 3xx redirects

A meta refresh differs from 3xx redirects because it happens in the browser after the page is delivered, not in the HTTP response. RFC 9110 defines 3xx status codes, such as 301 and 302, as responses where the server points the client to another resource through the Location header. A page with a meta refresh is usually served with status 200, so the redirect only exists once the HTML is parsed.

MDN lists the order in which redirects fire: HTTP redirects first, then JavaScript redirects, and HTML meta refresh last. That makes meta refresh the least reliable method.

Feature301 / 308Meta refresh
Where it happensServer, HTTP responseBrowser, HTML page
Status code301 or 308Usually 200
Works for images, PDFsYesNo, only HTML
Google treatmentPermanent0 s: permanent, delay: temporary
RecommendedFirst choiceFallback only

How does Google treat meta refresh redirects?

Google treats a meta refresh as permanent when the delay is 0 seconds and as temporary when there is any delay. Google Search Central groups the instant meta refresh with 301 and 308 as signals that the target URL should become canonical. A delayed meta refresh sits with 302, 303 and 307: the original URL usually stays in search results. Google advises using meta refresh only when server-side redirects are not possible on your platform.

Meta refresh vs JavaScript redirect

A meta refresh is more dependable for Google than a JavaScript redirect. Google runs JavaScript only when it renders a page, and Search Central notes that rendering can fail, in which case Google never sees the redirect. Google’s order of preference is therefore server-side redirects first, meta refresh second and JavaScript (window.location) last.

When should you use a meta refresh?

Use a meta refresh only when you cannot configure redirects on the server. Typical cases are:

  • Static hosting where you cannot set response headers.
  • Closed CMS or website builders without a redirect manager.
  • Single legacy pages you cannot move to a new server setup.

In every other case, set a 301 in the server configuration. On Apache it is one line in .htaccess: Redirect 301 /old-page/ https://example.com/new-page/. On Nginx it is: location = /old-page/ { return 301 https://example.com/new-page/; }. Avoid mixing methods: MDN warns that keeping an HTTP redirect and a meta refresh for the same URL can create a loop or a redirect chain.

Meta refresh, accessibility and SEO risks

A delayed meta refresh is an accessibility failure under WCAG. Technique F40 from W3C lists timed meta redirects as failing success criteria 2.2.1, 2.2.4 and 3.2.5, because screen reader users may be moved before they finish reading. A 0-second redirect is accepted, but W3C still calls server-side redirects preferable.

For SEO, the main risks are slower redirects, wasted crawl budget on pages that only forward users, and spam signals when a page shows one thing to Googlebot and redirects users elsewhere after a few seconds. In my technical SEO audits I list every meta refresh found in a crawl and replace it with a 301 wherever the server allows.

Pro tip: Run a crawler such as Screaming Frog and filter for meta refresh. If any delayed refresh points to an important URL, change it to 0 seconds as a quick fix, then plan a proper 301 so Google consolidates signals on the target page.

Frequently asked questions about Meta refresh redirect

Is meta refresh bad for SEO?

A 0-second meta refresh is not harmful, because Google treats it as a permanent redirect. Delayed versions act as temporary redirects and keep the old URL indexed, so a server-side 301 is always the better choice.

Is a meta refresh a 301 or a 302?

A meta refresh is neither, because it is not an HTTP status code. Google interprets an instant meta refresh like a 301 and a delayed one like a 302.

How do I write a meta refresh redirect?

Add a meta tag with http-equiv="refresh" and content="0; url=https://example.com/new-page/" inside the head of the page. Use 0 seconds so Google treats it as permanent and users are not stuck on the old page.

Does Google follow meta refresh redirects?

Yes, Google Search Central confirms that Googlebot follows meta refresh redirects. It still recommends server-side redirects whenever your platform allows them.

Related terms

Sources
  1. Redirects and Google Search · Google Search Central
  2. Redirections in HTTP · MDN Web Docs
  3. <meta> http-equiv attribute · MDN Web Docs
  4. Refresh header · MDN Web Docs
  5. RFC 9110: HTTP Semantics · IETF HTTP Working Group
  6. F40: Failure due to using meta redirect with a time limit · W3C WAI
International SEO · AI SEO (GEO)

Grow in every market, and get cited by AI

Leftover meta refresh redirects are common after migrations, and they quietly split ranking signals between old and new URLs. During international site migrations I map every redirect per language version so Google and AI crawlers land on the right page in each market.

I help SaaS and e-commerce brands win organic traffic across Europe and the US, and get their brand recommended in ChatGPT, Gemini, Perplexity and Google AI Overviews. Every project starts with a free audit of your site, your markets and your visibility in AI answers.

Write to Adrian

Have a question about this term or your SEO?

Send a short message about your website, the markets you sell in and what you want to achieve. You get a reply from me, not from a sales team.

  • Free preliminary SEO and AI visibility audit
  • Strategy for international and multilingual markets
  • Reply within one business day
Book a free call
Adrian Dąbrowiecki

Write to Adrian

Adrian Dąbrowiecki · Marketer Coffee

Tell me about your site and your goals. I usually reply within one business day.