A favicon is the small icon shown in browser tabs, bookmarks, and home screen shortcuts. Despite appearing tiny, different contexts require different sizes: 16×16 for tabs, 32×32 for bookmark bars, 180×180 for iOS home screen shortcuts (apple-touch-icon), and 192×192 for Android.
This tool uses the Canvas API to resize your uploaded image to each required size and export it as PNG. The process is simple: set canvas.width and canvas.height to the target size, call drawImage() with the source image, and the browser handles the scaling automatically.
favicon.ico is a special container format that bundles multiple image sizes into one file. Rather than relying on an external library, this tool assembles the ICO binary structure directly in JavaScript — a header listing each image's position, followed by the BMP data for each size concatenated together.
All the generated files are then bundled into a ZIP archive using the JSZip library and downloaded to your device. The entire process runs in the browser, so your image never touches a server.