Prod0

Free tool

Desktop app
icon generator.

One image in, a complete icon set out. Real .icns for macOS, real .ico for Windows, PNGs for Linux, with the padding each platform actually expects. Your image never leaves the browser.

Drop a PNG, or click to choose

1024x1024 recommended. PNG, JPEG, WebP, or SVG.

Platforms

Output layout

macOS padding

macOS shadow

What you get

Pick a layout and the files come out named and nested the way your build tool expects, so you can drop the folder in and commit it.

macOS

icon.icns

A single .icns containing all ten icon types Apple defines, from 16px up to 1024px retina.

ic10, ic09, ic14, ic08, ic13, ic07, ic12, icp5, ic11, icp4

Windows

icon.ico

One multi-resolution .ico with PNG-compressed entries, which Windows has read since Vista.

256, 64, 48, 32, 24, 16

Linux

512x512.png and friends

The hicolor theme PNG ladder, named by dimension so it drops straight into a desktop entry.

512, 256, 128, 64, 48, 32, 16

Why one resized PNG isn't enough

Most generators take your image, resize it seven times, and hand back a folder. That works for Windows and Linux, where icons are full-bleed and fill their box. It does not work for macOS, and the result is the single most common reason a new app looks amateur in the Dock.

macOS icons sit inside a rounded square that occupies about 80% of the canvas, with transparent margin around it. Ship a full-bleed icon and yours renders visibly larger than every native app beside it. We measured the margin off Brave's shipped .icns, where the solid body is 824 pixels on a 1024 canvas, and default to 10% per side to match.

So this tool keeps two versions of your artwork through the whole pipeline. The macOS one gets a squircle mask and the margin. The Windows and Linux one stays full-bleed. If your source art already has the margin baked in, set padding to none and only the corner shaping is applied.

The corner shape is a superellipse rather than a plain rounded rectangle. A rounded rectangle meets its straight edges at a sudden change in curvature, which reads as slightly pinched next to the continuous corners macOS uses. At icon sizes the difference is small but visible.

Common questions

What size should my source image be?

1024x1024 PNG with transparency. That is the largest size macOS uses, so everything else is a downscale and nothing gets upscaled. Anything smaller than 1024 will still work but the largest icon entries will be soft. Non-square images are letterboxed into a square rather than cropped, so nothing gets cut off.

Is my image uploaded to a server?

No. The whole pipeline runs in your browser using canvas and a web worker, including the .icns and .ico encoding. There is no upload, no server-side processing, and no copy of your artwork anywhere but your own machine. You can confirm it by opening devtools and watching the network tab while you generate, or by disconnecting from the network after the page loads.

Does this work for both Tauri and Electron?

Yes. Choose the Tauri layout to get the icons/ directory with icon.icns, icon.ico, icon.png, 32x32.png, 128x128.png and 128x128@2x.png. Choose the Electron layout to get electron-builder's build/ directory with icon.icns, icon.ico, icon.png and the build/icons/ hicolor PNG set. There are dedicated pages for each if you want the config snippets alongside.

Why is my macOS icon smaller than the image I uploaded?

That is the 10% padding, and it is deliberate. Native macOS icons leave transparent margin so they all optically match in the Dock. If your artwork already includes that margin, set macOS padding to none and the tool will only apply the corner shaping.

Does the .ico file work on older Windows versions?

The entries are PNG-compressed, which Windows has supported since Vista. If you need to target Windows XP you would want BMP-encoded entries instead, which this tool does not produce. In practice every currently supported Windows version reads these files correctly.