Why PNG is the natural starting point for a favicon
Most favicons begin life as a PNG. Design tools export to it by default, it stores an alpha channel with 256 levels of transparency, and it is lossless, so the logo you drew is exactly the logo you export. That matters for an icon that will be squeezed down to 16 pixels: any softness or compression noise in the source becomes very visible once there are only 256 pixels to work with. If your logo currently exists only as a JPG, it is worth going back to the original artwork rather than converting the JPG.
What this converter actually builds
An ICO file is not a single image. It is a small container with a directory at the front and one or more image entries behind it. This tool draws your PNG onto a canvas at five sizes, 16, 32, 48, 64 and 256 pixels, encodes each one as a PNG, and writes them into one .ico file with a 6 byte header and a 16 byte directory record per entry. Storing PNG data inside an ICO has been supported by Windows since Vista and by every current browser, and it keeps the alpha channel intact at every size. There is no quality slider on this page because nothing lossy happens: PNG in, PNG entries out.
Each size has a job. Browsers use 16 and 32 pixels for tabs and bookmarks, Windows uses 48 for desktop shortcuts and file lists, and the 256 pixel entry covers high resolution displays and the large icon views in Explorer. Serving all five in one file means the operating system or browser picks the closest match instead of scaling a single image badly.
Transparency, edges and the square rule
Transparent PNG pixels stay transparent in the output, which is what you want for a logo that sits on a light tab strip in one browser and a dark one in another. The scaling is done by the browser canvas, which smooths edges rather than snapping them to the pixel grid. Thin lines and small text usually turn to mush at 16 pixels, so a favicon works best as a bold shape with a solid fill. If the mark is intricate, consider a simplified version for the icon.
One thing to know: the canvas draws the source into a square at each size, so a non-square PNG will be stretched, not cropped or padded. Crop to a square first with the crop tool or export a square canvas from your design app. Starting from at least 256 by 256 pixels avoids upscaling the largest entry.
A worked example
Take a 512 by 512 logo saved as a 38 KB PNG with a transparent background. After conversion the ICO is typically around 25 to 45 KB. Almost all of that is the 256 pixel entry; the 16 pixel entry is often under 1 KB. Flat colour logos compress far better than gradients or photos, so a photographic PNG of the same size can produce an ICO of 120 KB or more. These are typical figures, not guarantees, because PNG compression depends entirely on the content.
Using the file and when ICO is not the answer
Put favicon.ico at the root of your site and add a link tag with rel set to icon and type image/x-icon in the head. Many sites also ship the plain PNG at 32 and 180 pixels for Apple touch icons and Android home screens, which ICO does not cover. If you want the full set generated in one pass, the favicon generator does that. And if your only target is modern browsers, an SVG favicon can replace ICO entirely; ICO remains the safest fallback for older browsers and for Windows shortcuts. Whichever route you take, the conversion on this page runs on your device and the PNG is never uploaded.