Any way to use custom icons?

Hi all, I would need to know if there is any workaround for loading custom icons on bitwarden. I know that the icon is retrieved from the first URI and so I could exploit it only for the icon using never as match detection, but how could I create URIs containing my icons? Thank you

You would need to host your own web domain (or otherwise have root access to a web server), then you can set up webpages that serve the icons you want to use. Instructions are available here:

Hi there,
I know it’s been a long time since our last exchange, but I now have a custom domain available and I tried using it to serve custom icons for my Bitwarden records. Unfortunately, I wasn’t able to make it work.

From what I can see, Bitwarden always retrieves icons based on the favicon of the actual website’s domain, or through the Bitwarden icon server (icons.bitwarden.net/{domain}/icon.png).
So even if I host my own images on my custom domain, Bitwarden doesn’t seem to fetch them for individual entries — it keeps looking only at the favicon of the real site’s domain.

Given this limitation, I’m not sure how a custom domain could actually be used to assign different icons to different Bitwarden records.

Could you please clarify how exactly a custom domain is supposed to help in this case?
Do I need to follow a specific structure or method for Bitwarden to pick up the icons from my domain?

Thank you!

Did you make your custom domain URL the first URI listed in the login item?

And, if so, for troubleshooting purposes, what happens if you create a new login item in your vault, for which your custom domain is the only stored URI?

Thanks for your reply.

Yes, I tried both approaches:

  1. setting my custom domain as the first URI in the login item

  2. creating a new login item where my custom domain is the only URI stored

In both cases Bitwarden does not retrieve the favicon hosted on my domain.
The icon is never loaded from my domain’s root URL or from the favicon file I placed there.
So that’s the first issue I’m encountering.

The second question is about the logic behind icon retrieval:
even if Bitwarden did load the favicon from my domain, that would still result in the same icon for every login item, since the favicon lives at the domain root.

So I’m wondering:

How would it be possible to assign different custom icons to different Bitwarden entries if the favicon mechanism is domain-wide?
Is Bitwarden actually able to load icons from pages beyond the root favicon?
Or does it exclusively rely on the Bitwarden icon server at:

https://icons.bitwarden.net/{domain}/icon.png

Understanding the exact lookup logic would really help clarify whether a custom domain can be used for per-item icons, or only for a single favicon per domain.

Thanks again for your assistance

Does the domain root also contain an index.html file with a favicon link in the HTML header (as per the example below)?

<html>
   <head>
      <title>My Page Title</title>
      <link rel="icon" type="image/x-icon" href="favicon.ico">
   </head>
</html>

 

With regards to your second question:

I haven’t experimented with this to verify, but I believe that Bitwarden would use the <link> element in the index.html file for any given URL to locate the favicon to use for that URL. For example, you could set up two folders on your web server, as follows:

www.mydomain.com/site1
www.mydomain.com/site2

Each folder would then contain a favicon.ico file and an index.html file as shown above. Note that the href attribute has been set to fetch an image in the same directory as the index.html file, not in the root directory. You can change the favicon image locations, as long as you update the href attributes to point to the correct file location.

The above should allow you to display different favicons on your browser tabs. However, it may not work for Bitwarden, for the following reason:

The icons server is a cache, so it will always look for the favicon there first. If not found on the icon server, then it is supposed to go to the URL and fetch the original favicon.

The problem is that on the icons server, each favicon is associated with the domain from which it came, not with the full path (subfolders, etc.). Fortunately, however, it does use the FQDN (not just the base domain), so the solution for storing multiple custom favicons would be to set up multiple subdomains on your custom domain:

subdomain1.mydomain.com
subdomain2.mydomain.com
subdomain3.mydomain.com

Each subdomain could then store its own favicon (and a corresponding index.html file).