In my application the admin of the application can upload different favicon from time to time. Right now I am using the favicon on my page like this:

 <link rel="shortcut icon" href="/img/favicon.ico?v=4f32ecc8f43d">

I have no issue updating the new favicon from my application.

The issue is that it doesn't get updated to end user unless he clears his cache (because it is a static file). To overcome this I have one solution in my mind: Update the favicon every time with new guid so that it can be updated at end machine on the next page load. The url for favicon will look like this then:

 <link rel="shortcut icon" href="/img/c96e9689-e6af-4b36-839b-e2014f269f69.ico?v=4f32ecc8f43d">

This will solve the favicon refresh on end user's machine.

My concern is that on replacing the name of favicon from "favicon.ico" with .ico will impact SEO?

  • Can you set up a redirect for /favicon.ico to your GUID filename? Commented Mar 7, 2016 at 19:15
  • In this case I have to update the redirect rule every time when I update the favicon. It will be difficult to change this redirect every time. I am worried abut the SEO impact with favicon having guid as its name.
    – raj
    Commented Mar 7, 2016 at 19:19
  • Possibly a bit of an aside, but... assuming your query string is varying when the file changes, then the query string should work to break the cache, without having to resort to changing the actual filename?
    – MrWhite
    Commented Mar 7, 2016 at 19:36
  • I would watch the length of the icon filename as this affects the length of the total HTML file size. I'd suggest using a new system timestamp (which is roughly 10 digits) for the icon filename when the file changes. Example: example.com/time242342355-foruser123.ico Commented Mar 7, 2016 at 20:00

1 Answer 1


You can name the favicon whatever you want - the minimal needed for a client to read it is:

<link rel="icon" href="some-changing-file-name.ico">

The 'shortcut' part is depreciated. If you're changing the file name, there's no need for the querystring. The whole point of a query string on a favicon is to force an update even though the assets URI remains identical. If the client isn't updating - then set file expiry using the Web Server. If you're using Apache, then try this link. You need to set files with these values:

Cache-Control: no-cache, must-revalidate

Edit: And to answer the question, Favicons are not a ranking factor. They are promoted to increase usability, which in turn creates positive user signals on Google.

  • The querysting is just represent the product build number.
    – raj
    Commented Mar 7, 2016 at 19:21
  • Keeping different name will impact SEO? Is there any documentation for that?
    – raj
    Commented Mar 7, 2016 at 19:22
  • 1
    Favicons are not a ranking factor. When it's mentioned, it's because it increases useability. These are indirect influences - your focus should be on the main ranking factor it affects: How easy to use and recognise is your site? A favicon is completely non-essential.
    – L Martin
    Commented Mar 7, 2016 at 19:24
  • 1
    I'm not even sure they would increase usability in a way that Google would notice. Google typically click to a site from Google search results but then turn back because the site is bad. The favicon in the URL bar is so small and inconspicuous that I wouldn't expect it to have much impact at that point. Favicons are much more important when people leave the tab open and want to switch back to it. Also for people who bookmark the site or add it to their mobile home screen. Commented Mar 7, 2016 at 19:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.