The Tiny UI Detail That Sent Me Down a Rabbit Hole

Published

Favicons feel like one of those tiny UI details you shouldn’t have to think about.

Add one beside a link and everything feels a little more polished. Remove it or replace it with a blurry mess and suddenly things feel oddly unfinished.

While building Readmore.dev, I assumed adding favicons beside articles would be a quick win.

It turned into a rabbit hole.

There are a few existing options, but most come with trade-offs. Google has a favicon service, which works fine if all you need is a tiny icon for a browser tab, but it only serves 16px or 32px images. Once you start rendering those in modern UIs, in larger cards, denser lists, retina displays, they quickly look soft and blurry.

Other services exist, but many require API keys, have rate limits, unreasonable pricing tiers, questionable uptime, or seem to quietly disappear over time. I didn’t want another dependency to sign up for or babysit. I just wanted a simple way to get a clean, high-resolution favicon for any domain.

So I built getfavicon.dev.

It does exactly one thing: give you a favicon.

Pass a domain in the URL and it returns the site icon. By default you’ll get a 32px image, but if you want the highest quality version available you can append /high, or request a specific size such as /64.

That’s the entire API.

No API keys. No accounts. No SDKs. No setup.

If an image URL works somewhere, getfavicon.dev works there too. Drop it into an <img /> tag, a CSS background, markdown, a dashboard, a browser extension, or wherever else you happen to be rendering links.

For Readmore.dev, it made an immediate difference. Feeds suddenly became easier to scan, sources felt more visually distinct, and it gave a bit of life and character to the app. It’s one of those small improvements that sounds insignificant until you see it in practice.

But the use case goes well beyond RSS readers.

Anything that dynamically displays URLs can benefit from having a recognisable visual identity beside them: bookmarking tools, internal dashboards, link previews, browser extensions, startup directories, knowledge bases etc, basically anywhere links show up at scale.

Hopefully this comes in use for someone else!