chain
Favicon Generator
// about this tool

Favicon Generator Online

Updated 2026-08-02

Turn one image into every favicon size that still matters, with the HTML link tags and the web manifest to go with them. Six files — 16, 32 and 48 pixel PNGs for browsers, a 180px Apple touch icon, and 192/512 for Android and install prompts — rather than the twenty-file dump that most generators still produce, because the legacy Apple sizes and Microsoft tiles have not been needed for years.

The previews are shown at actual size, which is the point: a logo that looks fine in a design file often turns to mush at 16×16, and it is better to discover that here than after deploying. If your source is smaller than 512px or is not square, the tool says so rather than quietly upscaling or stretching it. Background colour, padding and corner rounding are all adjustable, since a detailed mark on a transparent background is one of the most common reasons a favicon reads badly.

Everything is resized on a canvas in your browser. There is no API endpoint, because an API would have to receive the file this page promises not to send.

// how to use

  1. 1 Drop a square image in — ideally 512×512 or larger, or an SVG. It is read and resized in your browser.
  2. 2 Adjust the background, padding and corner rounding until the 16px preview still reads.
  3. 3 Download the PNGs and copy the HTML link tags and the web manifest.

// examples

What you get from one image
Input
logo.png — 512×512
Output
favicon-16x16.png          browser tabs
favicon-32x32.png          tabs on high-DPI screens, taskbar shortcuts
favicon-48x48.png          Windows site shortcuts
apple-touch-icon.png       180×180, iOS home screen
android-chrome-192x192.png Android home screen
android-chrome-512x512.png splash screens and install prompts
The HTML you need
Input
copy the HTML tab
Output
<link rel="icon" href="/favicon-32x32.png" sizes="32x32" type="image/png">
<link rel="icon" href="/favicon-16x16.png" sizes="16x16" type="image/png">
<link rel="apple-touch-icon" href="/apple-touch-icon.png">
<link rel="manifest" href="/site.webmanifest">
A source that is too small says so
Input
logo.png — 128×128
Output
The source is only 128×128. The 512px icon is being upscaled, so it will look
soft — start from 512×512 or larger, or use an SVG.

// common uses

Getting a complete favicon set from a logo without installing anything Checking whether a mark is still legible at 16 pixels before committing to it Producing the web manifest icons for an installable web app Regenerating favicons after a rebrand, with the HTML to paste in

// faq

Why only six files instead of twenty?
Because most of the twenty stopped mattering. The old Apple sizes (57, 72, 114…) and the Microsoft tile images are legacy — modern iOS scales a single 180px icon and Windows uses the web manifest. Six files cover browsers, iOS, Android and install prompts, and shipping fourteen more that nothing requests is clutter, not thoroughness.
Do I still need a favicon.ico?
Usually not. Every current browser accepts PNG favicons via a link tag. An .ico is only worth adding if you must support very old Internet Explorer, or if you want the icon to appear when someone requests /favicon.ico with no link tag at all — in which case serving the 32×32 PNG at that path works for every browser released this decade.
Why does my logo look like a smudge at 16 pixels?
Because 16×16 is 256 pixels in total, and most logos carry more detail than that can hold. The preview shows every size at true scale precisely so you find this out now. A simplified mark — one letter, one shape — almost always beats a shrunken full logo, and a solid background often helps more than transparency.
What should I upload?
A square image at 512×512 or larger, or an SVG at any size. Non-square images are letterboxed rather than stretched, and the tool tells you when that has happened. SVG is the best source because it scales to every size without softening.
Is my image uploaded?
No. The resizing happens on a canvas in your browser, so the image never leaves your machine. There is no API endpoint for this tool, because an API would have to receive the file this page promises not to send.
Esc
↑↓ navigate open Esc close