Favicon Generator

Upload a source image (ideally square) and get the full standard favicon set: 16×16, 32×32, and 48×48 PNGs, a 180×180 apple-touch-icon, 192×192 and 512×512 icons for a web manifest, a hand-assembled multi-size favicon.ico, and a matching site.webmanifest file. Everything is generated with canvas in your browser; no server involved.

PrivateFreeWorks offline

Reviewed by Vincenzo Manto, Founder & Lead Developer · Last updated September 27, 2026

How it works

  1. 1

    Upload a source image, ideally a square logo or icon at least 512×512px.

  2. 2

    The tool instantly renders every standard favicon size (16, 32, 48, 180, 192, 512px) via canvas.

  3. 3

    Download each PNG individually, or download the multi-size favicon.ico built from the 16/32/48 renders.

  4. 4

    Enter a site name and download a matching site.webmanifest referencing the 192/512 icons.

One image, every favicon size you need

Modern browsers, phones, and PWA install prompts each expect a slightly different icon size. Instead of resizing your logo six times by hand in an image editor, this tool produces the full set in one pass, sized and named the way most static site generators and frameworks expect.

A hand-built favicon.ico

Rather than calling a third-party API to produce the multi-resolution .ico file, this tool assembles the ICO container format itself: header, directory entries, and embedded PNG data for the 16, 32, and 48 pixel sizes, matching how modern browsers read favicon.ico files.

Starting from a vector logo instead of a photo?

If your source is an SVG rather than a raster image, open it in our SVG editor first to flatten colors or adjust the artwork, export it as a PNG, then bring that PNG here to generate the full favicon set.

Frequently asked questions

Is my image uploaded anywhere?

No. The image is resized and re-encoded entirely in your browser using the canvas API. Nothing is sent to a server.

What exactly is inside the generated favicon.ico?

A multi-image ICO container built byte by byte in this tool: a 6-byte header, one 16-byte directory entry per image, then the raw PNG-compressed data for the 16×16, 32×32, and 48×48 sizes. Modern browsers read PNG-compressed data inside ICO files directly, so no legacy BMP encoding is needed.

Why do I need a site.webmanifest file?

It lets browsers show the right name and icon when a site is added to the home screen or installed as a PWA. This tool generates one that references the 192×192 and 512×512 icons you just created.

Does the source image need to be square?

No, but a square image avoids distortion, since every favicon size is also square. Non-square images get stretched to fit.

Where do I put these files on my site?

Typically favicon.ico and apple-touch-icon.png go at your site's root, and the manifest.json/site.webmanifest is linked from your HTML <head> along with the icon PNGs.

Related tools