App Icon Maker for Flutter Project: A Practical Guide
An app icon maker for a Flutter project saves you from hand-cutting dozens of PNGs for Android, iOS and web. This guide explains which sizes Flutter expects, how adaptive icons work on Android, and how to produce a complete icon set in Lyxvo AI.
Flutter uses a single codebase, but each platform still expects its own icon files. Android reads launcher icons from `android/app/src/main/res`, iOS reads an `AppIcon.appiconset` folder inside `ios/Runner/Assets.xcassets`, and web reads icons from `web/icons` and the manifest. Getting all of these right by hand is slow and error-prone, so the practical approach is to start from one high-resolution master image and generate every size from it.
What a Flutter app needs
Flutter does not generate icons for you. You are responsible for placing the right files in the right folders, and you need the correct dimensions for each. The list below covers the sizes most Flutter projects use in 2026.
| Platform | Location in project | Sizes you need |
|---|---|---|
| Android (launcher) | `android/app/src/main/res/mipmap-*` | 48, 72, 96, 144, 192 px |
| Android (adaptive) | `mipmap-*` foreground and background layers | 108 px base, 432 px at xxxhdpi |
| iOS | `ios/Runner/Assets.xcassets/AppIcon.appiconset` | 20 to 1024 px, including @2x and @3x |
| Web | `web/icons` plus `manifest.json` | 192 and 512 px, plus maskable variants |
| Store listing | Play Console and App Store Connect | 512 px (Android), 1024 px (iOS) |
The iOS marketing icon is 1024 x 1024 px with no transparency and no pre-rounded corners, because the system applies the mask itself.
Build an adaptive icon for Android
Since Android 8, most devices use adaptive icons: a foreground layer and a background layer that the launcher crops into different shapes (circle, squircle, rounded square). Keep the important part of your logo inside the central safe zone, roughly the inner 66 percent of the canvas, so nothing gets cut off. Android 17, which reached general availability on June 16, 2026, continues to rely on these adaptive masks, so the same rule applies. Your foreground layer should be transparent; the background can be a solid color or a simple gradient.
If your logo has fine details near the edge, shrink it inside the safe zone before exporting. A clipped letter is the most common adaptive icon mistake.
Step-by-step: generate the full set
- Create a master image. Use 1024 x 1024 px, square, PNG, with no transparency for iOS. Keep the design simple so it reads at 20 px.
- Create an Android foreground layer. Export your mark on a transparent background, scaled into the safe zone.
- Choose a background color. Use a solid fill that contrasts with the foreground.
- Generate every size. Export all Android, iOS and web sizes from the master so they match exactly.
- Copy files into the Flutter project. Place Android icons in each `mipmap` folder, the iOS set in `AppIcon.appiconset`, and web icons in `web/icons`.
- Check the manifest. Make sure `web/manifest.json` references the 192 and 512 px icons.
- Run and verify. Run `flutter clean`, then `flutter run` on a device or emulator, and check the home screen icon on each platform.
If you change the app name or launcher later, repeat the process from the master file rather than editing exported PNGs.
Using Lyxvo AI to make the icon set
Lyxvo AI's design agent can create a logo and brand kit, including every Android, iOS and web icon size, so you do not have to resize files manually. You can start from the AI logo generator or the app icon generator, describe your app, and generate candidate designs. Then edit colors and text directly in the Canva-style editor, and export the icon sets as PNG at real size. For a full app mock-up before you write any Flutter code, the AI app design tool can produce complete app screens for iOS, Android and web. You can also open the design studio for apps directly.
Lyxvo AI also exports Flutter and Kotlin Jetpack Compose code, which is useful when you want to turn a design into a starting screen. Check the exported code against your project's conventions before committing it.
Common mistakes to avoid
- Using a rasterized logo smaller than 1024 px as the master, which blurs on iOS.
- Adding transparency to the iOS marketing icon, which the store rejects.
- Forgetting the maskable version of the web icon, so it looks cropped on some devices.
- Leaving old icons in `mipmap` folders after a rename, which can cause the wrong icon to show.
- Designing a detailed illustration that becomes unreadable at 48 px.
Quick checklist
- [ ] 1024 x 1024 master, square, simple shape
- [ ] Android adaptive foreground and background layers, safe zone respected
- [ ] All iOS sizes in `AppIcon.appiconset`, no transparency on the 1024 px icon
- [ ] Web 192 and 512 px icons, manifest updated
- [ ] `flutter clean` and a test run on each platform
Once the icons are in place, you can explore free design templates for store screenshots and marketing graphics that match your new brand.
Try it in Lyxvo AI
Describe it in your own words and the design agent starts on the right flow. Free to start.
Related tool: AI app icon generator with every size in one zip