Favicon ToolsVerifyBuild
WordPress · Not updating

WordPress Favicon Not Updating? Here's the Fix

You set a new Site Icon and the old one won't budge. On WordPress that's almost always a caching layer (a page-cache plugin or CDN serving stale HTML) with the browser's own favicon cache as a second suspect.

Read the cropped- filename to see which cache

View source and find the icon link. Its filename starts with cropped- and carries your upload's name. If it points at the new attachment, the HTML is correct and you're looking at a cached favicon in the browser. If it still names the old attachment, your page cache or CDN is serving stale HTML.

That one check splits the problem cleanly: right filename means clear the browser; wrong filename means clear the page cache.

Clear the right layer

  1. 1

    Purge the page cache and CDN

    If the cropped- filename is stale, flush your caching plugin (WP Rocket, W3 Total Cache, LiteSpeed) and any CDN in front, so fresh HTML with the new icon link is served.

  2. 2

    Load the site in a private window

    If the filename is already the new one, the browser cached the favicon. A private window or a different profile shows the truth.

  3. 3

    Rule out a theme override

    A theme printing its own icon tag can win over core's. Count the rel=icon tags in the source if the wrong icon persists after both caches are clear.

WordPress favicon not updating: FAQ

I changed the Site Icon and the tab shows the old one.

View source and check the cropped- filename in the icon link. If it points at the new attachment, the HTML is fine and it's a cached favicon: clear the browser. If it points at the old one, your page cache or CDN is stale.

Which caches are involved on WordPress?

Up to three: a page-cache plugin, a CDN in front of the site, and the browser's own favicon cache. The cropped- filename in the source tells you whether to clear the server-side caches or the browser.

Do I still need a favicon.ico at the root?

Browsers read the link tags, so no, but some feed readers and crawlers request /favicon.ico by path and never read your HTML, so a file at the domain root is a cheap safety net.

Keep going