Last updated: August 25, 2026.
The HTML meta refresh directive can reload the current page after a delay or send a visitor to another URL. It still works in modern browsers, but it should be used carefully because an unexpected refresh can interrupt someone who is reading, entering data, or using assistive technology.
Reload the current page
Place the following element inside the document’s <head>:
<meta http-equiv="refresh" content="30">The number in content is the delay in seconds. This example reloads the page after 300 seconds, or five minutes.
Redirect to another page
You can also include a destination URL:
<meta http-equiv="refresh" content="5; url=https://example.com/new-page">This example redirects after five seconds. Include a normal link to the destination as well, so visitors can continue if the automatic redirect is blocked or paused.
When not to use meta refresh
- Permanent or temporary redirects: configure an HTTP redirect on the server instead. A 301 or 308 is normally used for a permanent move; a 302 or 307 is normally used for a temporary one.
- Updating live data: fetch and replace only the data that changed instead of reloading the whole page. Depending on the application, this can use
fetch(), server-sent events, or WebSockets. - Pages containing forms or long text: an automatic reload may discard work, move keyboard focus, or interrupt reading.
Accessibility and search considerations
Avoid very short or repeated refresh intervals. Give visitors enough time to read the page and provide a clear manual link when redirecting. For pages that have permanently moved, a server-side redirect also gives browsers and search engines a clearer signal than a delayed meta refresh.