Meta refresh redirects: why they hurt SEO and what to use instead
A meta refresh redirect (<meta http-equiv="refresh" content="0;url=...">) is a legacy way to redirect inside HTML. It is slow, breaks the back button, and Google treats it inconsistently. Replace with a proper 301 server-side redirect.
A meta refresh redirect (<meta http-equiv="refresh" content="0;url=...">) is a legacy way to redirect inside HTML. It is slow, breaks the back button, and Google treats it inconsistently. Replace with a proper 301 server-side redirect. A meta refresh is an HTML element instructing the browser to navigate to another URL after N seconds. With content="0;..." it fires immediately. Google may pass link equity, but it's unreliable; some crawlers and screen readers handle it poorly.
Last updated·
What it is
A meta refresh is an HTML element instructing the browser to navigate to another URL after N seconds. With content="0;..." it fires immediately. Google may pass link equity, but it's unreliable; some crawlers and screen readers handle it poorly.
Why it matters
It is the wrong tool for the job. 301 (permanent) and 302 (temporary) HTTP redirects are faster, fully understood by every crawler, and accessibility-clean. Meta refresh is a sign of a legacy CMS or a workaround that should be retired.
How to fix it
- Identify meta-refresh redirects via crawl. A site audit will list every page containing <meta http-equiv="refresh">.
- Replace with a 301 in server config or framework. Apache/.htaccess, nginx, or your framework's redirect config. Test with curl -IL.
- Remove the meta tag. Once the server-side redirect is live, delete the meta tag so the redirect happens before HTML is even parsed.
Authoritative sources
- Google Search Central documentation — Google
- Schema.org vocabulary — schema.org
- SEO Starter Guide — Google Search Central
- MDN — HTML meta and link elements — Mozilla MDN