Skip to content

Generate Favicons

One square image in — the complete set out: favicon.ico, every PNG size, the Apple touch icon, a web manifest and the exact HTML tags, bundled as one ZIP.

  • Never stored
  • No queue, no waiting
  • No signup, no watermark

How it works

1

Add your logo

Drop a square image — SVG or a PNG of 512px+ gives the sharpest set.

2

Preview the set

See every size as it will render, down to the 16px tab icon.

3

Download the ZIP

All files plus a ready-to-paste HTML snippet and site.webmanifest.

Why one icon became nine files

Each file in the set exists because something specific reads it and reads nothing else. favicon.ico carrying 16, 32 and 48 is still what a browser looks for at the site root by default, and what a great deal of older software checks first. favicon-16x16.png and favicon-32x32.png are what current browsers prefer for the tab, because a PNG at the exact size beats scaling. apple-touch-icon.png at 180 pixels is what iOS puts on the home screen — with no transparency support, so it is composited onto a solid background rather than arriving with black corners. android-chrome-192x192.png and 512x512.png are what an installed progressive web app uses for its launcher icon and its splash screen, declared in site.webmanifest.

Serving one large PNG for all of them works badly everywhere and is the most common shortcut. The browser downloads half a megabyte to draw sixteen pixels, iOS ignores the transparency rules and puts your logo on a black square, and the launcher icon gets cropped by whatever mask the platform applies. The set is tedious precisely because each consumer is particular.

The HTML snippet matters as much as the images. Browsers do not discover most of these files on their own — only favicon.ico at the root is found by convention — so the link tags are what connect them, and the manifest needs its own. The snippet uses root-relative paths, which work unchanged as long as the files sit in the web root; if you put them in a subfolder, the paths in both the snippet and the manifest need adjusting.

Design for 16 pixels first. At that size you have room for a shape and perhaps two colours — no text, no gradient, no fine detail, and certainly no full wordmark. A square, bold, high-contrast source of at least 512 pixels, or an SVG, gives the cleanest set; the preview shows the 16px rendering honestly rather than flatteringly, because that is the one that will disappoint you later. Non-square sources are padded to square with transparency rather than cropped or stretched.

When you want something else

The set generated here is the practical modern core. If you need the complete long tail — Windows tile images, Safari's pinned-tab mask icon, Microsoft browserconfig, the older Apple sizes — RealFaviconGenerator covers them and checks your live site afterwards, which is a genuinely useful thing this cannot do.

For a build pipeline, generating icons by hand is the wrong shape of work entirely. favicons, pwa-asset-generator and the framework plugins built on sharp produce the whole set from one source file every time you deploy, so the icons cannot drift out of date when the logo changes — which, in practice, is what always happens.

Frequently asked questions

What exactly is in the ZIP?

favicon.ico (16+32+48), favicon-16x16.png, favicon-32x32.png, apple-touch-icon.png (180px), android-chrome-192x192.png and 512x512.png, site.webmanifest, and an HTML snippet with the matching link tags.

Why so many files for one little icon?

Browser tabs, iOS home screens, Android launchers and PWA installs each read a different file at a different size. Serving one giant PNG works badly everywhere; serving the right sizes is what this generates.

What source image should I use?

Square, simple and bold — 512×512 or larger, or an SVG. Fine details vanish at 16px, so the preview shows you that size honestly before you commit.

Where do the files go on my site?

Drop them in the web root, paste the snippet into your <head>, done. The snippet in the ZIP uses root-relative paths that work as-is.

Are my files stored anywhere?

No — nothing is stored at any point.

Good to know: Non-square sources are padded to square with transparency, not cropped or stretched — crop first if you want a different framing.

Put this tool on your website

Free for any blog, class page or help article. Paste one snippet and your visitors can use it right on your page.