troubleshooting

Favicon looks blurry? Fix size, scaling, and transparency in minutes

Blurry favicons usually come from a small source image, bad downscaling, or missing sizes in your <link> tags. Use this checklist to regenerate clean icons and verify what is live.

FaviconMaker Editorial Team

4 min read
#troubleshooting#design#setup
Share this guide
Favicon looks blurry? Fix size, scaling, and transparency in minutes
On this page9 sections

A blurry favicon is rarely a browser bug. It is usually one of these:

  • Your source image is too small.
  • The browser is upscaling a tiny icon because your tags are missing or wrong.
  • The icon has too much detail for 16x16 and turns into mush.

The fastest way to stop guessing is:

  • Generate a fresh pack with the Favicon Generator.
  • Deploy the whole set to one folder (for example, /favicons/).
  • Verify what your site serves with the Favicon Checker.

Step 1: confirm what file the browser is using

Before you redesign anything, answer this question:

Is the browser using your 32x32 icon, or is it using a 16x16 and scaling it up?

Two quick checks:

  • Open the page HTML and look for <link rel="icon" ... sizes="..."> tags.
  • Run the Favicon Checker to see the icon URLs it detects, their status codes, and their dimensions.

If the only thing detected is favicon.ico, or your PNG tags have no sizes, you can end up with unpredictable selection and blurry scaling.

Step 2: start from a source that can survive downscaling

If you generate icons from a 64x64 logo, you are forcing the pipeline to invent detail that does not exist.

Use one of these as your source:

  • A square SVG logo (ideal if it is simple)
  • A square PNG at 512x512 (safe baseline)

If your logo is wide, do not cram it edge-to-edge. Add padding so the mark has breathing room at small sizes.

Step 3: ship explicit 16 and 32 PNG icons (do not rely on resizing)

For browser tabs, 16x16 and 32x32 are the sizes that matter most. Shipping them explicitly avoids browser guesswork.

This is the shape you want:

<link rel="icon" type="image/png" sizes="16x16" href="/favicons/favicon-16.png" />
<link rel="icon" type="image/png" sizes="32x32" href="/favicons/favicon-32.png" />

If you generated a full pack, keep favicon.ico too. It is still widely recognized:

<link rel="icon" type="image/x-icon" href="/favicons/favicon.ico" />

For background reading on icon link tags and what browsers look for, MDN has a solid overview of the <link> element.

If you want a clean baseline snippet that matches your chosen path and colors, generate it with the Favicon Generator and paste it as-is.

Step 4: simplify the art for 16x16

You can have a beautiful logo and a bad favicon at the same time. The tab icon is tiny.

When an icon looks blurry, it is often not blur. It is detail collapse.

Try these adjustments:

  • Remove thin lines and small interior gaps.
  • Increase contrast between the mark and the background.
  • Prefer one bold shape over multiple elements.
  • Avoid text. Letters become unreadable fast at 16x16.

If your logo cannot survive simplification, use initials for the favicon and keep the full logo for the site header.

Our generator supports a text-based mode for exactly this situation. You can create a clean, high-contrast initial icon and still keep your full brand elsewhere.

Step 5: fix transparency and edge artifacts

Transparency is useful, but it can create ugly edges when your icon is downscaled or shown on different tab backgrounds.

Common symptoms:

  • A halo around the mark
  • Jagged edges on dark mode tabs

Fixes that work:

  • Use a solid background behind the mark (square or rounded) so the edges are intentional.
  • Ensure your source art has clean edges before you downscale.

If you want automatic dark mode variants, generate them and include the media-query tags. This is covered in: Dark mode favicons: how to ship light and dark variants.

Step 6: verify in a clean environment (favicon caches are stubborn)

Once you redeploy, test in a way that avoids stale favicon cache:

  • Use a private window or a clean browser profile.
  • Test on a second browser.

If the icon does not change, you might be fighting cache, not blur. Use this checklist: Favicon not updating? Fix it with a cache-busting checklist.

A quick diagnosis table

What you seeLikely causeFix
Soft, smudgy edgesSource is too small; browser is upscalingStart from 512x512 (or SVG); ship explicit 16 and 32 PNGs
Icon looks fine on desktop, bad on iOS home screenMissing apple-touch-iconDeploy and link apple-touch-icon.png (180x180)
Icon looks wrong only in dark modeLow contrast; transparency haloUse a background shape; generate dark variants
Icon looks sharp sometimes, blurry other timesWrong sizes tags; multiple systems competingUse one favicon pack and one snippet; verify with the checker

Privacy and uploads (for generator users)

If you generate a pack here, your image is uploaded for processing. It is processed in memory and discarded immediately after generation. Details live in the Privacy Policy.

Put this guide into practice

Build a complete favicon pack, then test the live result before you ship.

Written by

FaviconMaker Editorial Team

Practical favicon guidance for designers, developers, and site owners, with a focus on files you can verify in production.

Follow new guides via RSS

Worth sharing?

Send this guide to someone fixing their site icon.

Keep learning

wix3 min

How to Change Favicon on Wix

Step-by-step: change your Wix favicon from the dashboard Settings, understand Premium + domain requirements, choose the right file format/size, and troubleshoot caching and Google display.

Read guide
shopify4 min

How to Change Favicon on Shopify

Step-by-step: change your Shopify store favicon via Theme settings, pick the right 16×16/32×32 image, understand plan limitations, and fix common caching and Google display issues.

Read guide
wordpress4 min

How to Change Favicon in WordPress

Step-by-step: set (or change) your WordPress Site Icon / favicon in WordPress 6.5+ and older versions, choose the right image size, and troubleshoot caching and Google search display.

Read guide