Maskable Icons and the Safe Zone
Android crops your app icon to whatever shape the launcher uses. A maskable icon is one designed to survive that crop: full-bleed background, art kept inside the safe zone.
Why a normal icon gets clipped
Different Android launchers use different icon shapes. To keep them consistent, Android takes your icon and crops it to whatever shape the device uses. A standard icon with a logo near the edge loses its corners, and an icon with a transparent background gets an ugly crop line.
A maskable icon is built for that crop. It fills the entire canvas with a background so there is no transparency, and it keeps everything important away from the edges that might get cut.
The safe zone
The rule is simple: keep critical art inside the inner circle, roughly the center 80 percent of the canvas. On a 512x512 icon that is a centered circle about 410 pixels across. Anything outside it is fair game for the crop.
The outer ring is bleed. It should be background only, no logo, no text, no edge you would mind losing. Because you do not know which shape a given device will use, design so the icon reads correctly whether it ends up a circle, a squircle, or a rounded square.
Declare it in the manifest
{
"icons": [
{
"src": "/icon-512.png",
"sizes": "512x512",
"type": "image/png",
"purpose": "any"
},
{
"src": "/icon-maskable-512.png",
"sizes": "512x512",
"type": "image/png",
"purpose": "maskable"
}
]
}The purpose field tells Android which icon to mask. Ship a maskable one alongside your standard any icon so both cases are covered. You can also set "purpose": "any maskable" on a single icon if it works well cropped and uncropped.
Common questions
What is a maskable icon?
An app icon designed to survive Android cropping it to the launcher shape. It has a full-bleed background and keeps important art inside a central safe zone, so no shape clips the logo.
How big is the maskable safe zone?
Keep critical content inside the inner 80 percent of the canvas, a centered circle. On a 512x512 icon that circle is about 410 pixels wide. Treat everything outside it as croppable bleed.
How do I mark an icon as maskable?
Add "purpose": "maskable" to the icon entry in your manifest icons array. Ship it next to a standard purpose any icon, or use "any maskable" on one icon that works cropped and uncropped.
Why does my Android home-screen icon look clipped?
Your icon is not maskable, so Android cropped a design that was not built for it. Add a maskable version with a full-bleed background and padded art, and declare it with purpose maskable.