Custom Favicons for Production and Order
Tags: browser, favicon, tricks, productivity
Published: 2020-10-08 13:50:37

---
title: Custom Favicons for Production and Order
published: true
date: 2020-07-31 00:00:00 UTC
tags: browser, favicon, tricks, productivity
canonical_url: https://xeraa.net/blog/2020_custom-favicons-for-production-and-order/
---

Favicons — the little pictures in your bookmarks and (way too many) open browser tabs — are great to see what is what quickly. Unless it all looks like this: ![Multiple similar favicons](https://xeraa.net/blog/2020_custom-favicons-for-production-and-order/similar.png)

Those tabs are the [Elastic Cloud admin UI](https://cloud.elastic.co), the [Elasticsearch documentation](https://www.elastic.co/guide/en/elasticsearch/reference/current/index.html), [elastic.co](https://www.elastic.co), Kibana on Elastic Cloud, and Kibana on localhost.

## Why Are All My Icons the Same?

From a company’s perspective, it makes sense to stick to a single consistent icon. Especially casual users might have a hard time remembering a set of icons for a single organization. The same goes for the product view — those are all pieces of the Elastic Stack. What started as a UI for Elasticsearch has evolved into more than just the classic visualizations, which are part of a bigger picture. Kibana has become the general window into the Elastic Stack with different solutions and the overall management. ![Kibana navigation in 7.8](https://xeraa.net/blog/2020_custom-favicons-for-production-and-order/navigation.png)

But none of that helps you as a heavy user if you have multiple tabs open and no easy way to tell what was the documentation and what the production or development Kibana instances. It is a bit of a [pain point](https://github.com/elastic/kibana/issues/65585), but you can fix it with a little hack.

## Tab Modifier Plugin to the Rescue

The [Tab Modifier](https://github.com/sylouuu/chrome-tab-modifier) plugin for Chrome and compatible browsers can replace favicons based on the URL fragment. While it hasn’t been updated in over two years, it’s doing its job.

After installing the plugin, you can define its rules. For example, the Elastic documentation is under the URL `https://www.elastic.co/guide/`, which you can target with the following rule: ![Chrome plugin single rule](https://xeraa.net/blog/2020_custom-favicons-for-production-and-order/rule.png)

The only thing missing now is the icon. For this scenario, you can download the [Elastic brand assets](https://www.elastic.co/brand), which contain both the company as well as the solution and product logos. Picking the intended logo as an SVG ([Chrome supports that since version 80](https://www.chromestatus.com/feature/5180316371124224)) from the download you can [convert it to a data URI](https://dopiaza.org/tools/datauri/index.php) and paste the result into the icon field. That’s it.

You need to add three more rules to fix the example from the top:

- The Elastic Cloud admin UI starts with `https://cloud.elastic.co`.
- Any Kibana instance on Elastic Cloud contains `.found.io:9243/`.
- Any local Kibana installation contains `localhost:5601/` — supporting both HTTP and HTTPS but expecting the default Kibana port (so I won’t confuse it with [Hugo](https://gohugo.io) on `localhost:1313/`).

![Chrome plugin rules overview](https://xeraa.net/blog/2020_custom-favicons-for-production-and-order/rules.png)

Reloading each tab, you will now know what is what right away: ![Different favicons based on the domain](https://xeraa.net/blog/2020_custom-favicons-for-production-and-order/combined.png)

**PS:** This approach can also “hide” your Twitter, YouTube,… tabs at work, which seems to be one of the [intended use-cases](https://github.com/sylouuu/chrome-tab-modifier#demo).