What is the Meta Refresh Tag?
The meta refresh tag is an HTML element on the page that instructs the web browser to refresh the page after a given interval. It can be used to automatically update a page whose content could change frequently while the user is still on the same page, and you want to provide the most up-to-date information to them.
The refresh URL can also be set to a different URL and the redirect time could be set very low or to 0, thus acting as a kind of redirect. This type of redirect is done on the client side, instead of on the server side as is the case with 301 or 302 redirects.
A meta refresh tag that refreshes the same page after 10 seconds:
<meta http-equiv="refresh" content="10">
A meta refresh tag that immediately redirects to a different URL:
<meta http-equiv="refresh" content="0; url=http://example.com/">
Why It's Important
In general, using the meta refresh is a poor and outdated technique, and is best avoided – especially for redirects. Many search engines, including Google have recommended against it in their webmaster guidelines to avoid SEO and usability issues:
- When used for redirection, the meta refresh tag does not pass much or any link juice.
- It's commonly-abused webspam technique used for cloaking – showing different content to users and search engines. If not done correctly, it's possible your site could get flagged as being spam.
- The meta refresh tag often causes the browser's back button to not work properly – clicking the back button takes you right back to the page you were already on.
- The user experience can be a bit jarring, as users have no control when a page is refreshed or redirected.
If you cannot fix these issues, as long as you're not engaging in cloaking (intentionally or unintentionally), it shouldn't have a drastic effect on the SEO of your site. However, to maximize the flow of link juice and minimize user experience issues, it would be best to avoid using the meta refresh tag.
How to Fix
There are better alternatives for redirection or live page updates that should be used in place of the meta refresh tag:
- For Redirects - Use a server-side 301 redirect. These redirects will pass all or most of the link juice to the target URL, and provide a much better user experience.
- For Page Updates - Use AJAX to update page content after a given interval. This method is much more seamless, will not confuse search engines, and provides a better user experience. Most news or social media sites that do frequent live updates use this technique.