Drop in one image and get every file a site needs, plus the markup that points at them. It runs in your browser, so nothing is uploaded.
Drop your logo here, or click to choose
PNG, JPEG, WebP, GIF, BMP or SVG. Square works best, and 512 pixels or larger is ideal. Up to 12 MB.
Paste into <head>
site.webmanifest
A favicon stopped being one file somewhere around 2011, when phones started putting websites on home screens. The set below is what a site actually needs in 2026, and it is deliberately shorter than what most generators hand you.
favicon.ico — one container holding 16, 32 and 48 pixel versions. Browsers request this from the site root on their own, without being told to.favicon-32x32.png and favicon-16x16.png — what a modern browser prefers for the tab when you point it at them.favicon-48x48.png — useful when something wants a single mid-size PNG rather than reading the ICO.apple-touch-icon.png at 180×180 — iOS reads this when a page is saved to the home screen. Give it a solid background: iOS composites a transparent icon onto white or black depending on the wallpaper, and the result is unpredictable.android-chrome-192x192.png and android-chrome-512x512.png — referenced from the manifest, used for the Android home screen and the splash screen.site.webmanifest — a small JSON file naming the site and listing those two icons.Five lines go in the <head> of every page, and the tool writes them out ready to paste. What they mean:
rel="icon" points at the ICO and declares it as 32×32. That size attribute is a hint, not a constraint — the file holds three sizes and the browser still picks from all of them.rel="apple-touch-icon" is read by iOS. There is no sizes attribute because one 180-pixel icon covers every current device.rel="manifest" hands Android and installable web apps the JSON file, which is where the two large PNGs are declared. They do not need <link> tags of their own.Order matters slightly: browsers generally take the last declaration they understand, so leaving these in the order given is the safe move.
This is the part no generator can do for you, and it is the difference between a favicon that reads and one that is a coloured smudge in the tab. A 16-pixel square holds 256 pixels in total. That is roughly the amount of detail in one letter of body text, and it has to carry your entire identity at a size the reader is not looking directly at.
The practical rules are short. Use the mark, not the wordmark — three letters is already too many. Drop thin strokes, because a one-pixel line at 16 becomes a grey blur once it is anti-aliased. Increase the contrast between the mark and its ground beyond what looks right at full size. And check it against both a light and a dark tab bar, since a dark navy monogram on a transparent ground vanishes completely in dark mode.
Two controls here help. Breathing room insets the mark so it is not jammed against the edges of a surface that will put a title immediately beside it. Pad to fit against crop to fill decides what happens to a source that is not square: padding keeps the whole mark and renders it smaller, cropping fills the square and cuts the ends off. Padding is the default because losing part of a logo is the worse failure.
All of them belong at the root of the domain, so that favicon.ico answers https://example.com/favicon.ico. Browsers have requested that exact path since before the <link> tag existed and still do, which means a site without a file there collects a 404 on every first visit even when the markup is perfect.
Then expect the change to take a while to appear. Favicons are cached far more aggressively than the pages that reference them, and a hard refresh often will not shift one. Testing in a private window is the quickest way to see the new icon; on a live site, waiting is usually the answer.
A generator that emits a file you cannot check is worse than one that tells you it is missing.
browserconfig.xml. This was for the Windows 8 tile. Nothing reads it now, and generators that still emit it are shipping you a dead file.If all you need is the container itself rather than the full set — converting an existing mark, or picking exactly which sizes go inside it — the PNG to ICO converter exposes the size list directly and explains what belongs in one.
Your image is decoded by the browser, resized on a canvas, encoded to PNG at each size, packed into an ICO container and a ZIP archive written byte by byte on this page, and handed back to you. No server sees it, there is no queue, and no copy of an unreleased identity ends up on someone else’s disk. Load this page once and it keeps working with the network switched off.
SVG to PNG
Convert SVG files to PNG at any scale, in the browser. Batch and transparent background.
HEX to RGB
Paste a hex colour, get RGB, HSL and CSS you can copy.
RGB to HEX
The other direction, with the same converter underneath.
PNG to SVG
Trace a bitmap into vector paths, in the browser. Honest about when it works.
CSS Grid generator
Draw a grid, copy the CSS. Flexbox on a second tab.
Mesh gradient generator
Layered radial gradients, exportable as CSS or PNG.
OG image generator
Make a 1200x630 share card, and check the tags on a page you already have.
Website mockup generator
Drop a screenshot into a browser or device frame and export it.
PNG to ICO
Build a real multi-size favicon.ico from any image, in the browser.
Designing a site? Siter.io builds it from Figma.