
Logo Asset Generation Best Practices
Master the art of creating perfect logo assets for all platforms with our comprehensive guide

Referência prática de tamanhos 192×192 e 512×512, zona segura de 80%, ícones maskable e configuração do manifest.json.
Uma PWA deve incluir no manifest.json pelo menos dois PNGs: 192×192 e 512×512. Para Android, adicione uma versão maskable de 512×512 e mantenha todos os elementos importantes dentro da zona segura central de 80%.
Não reutilize o mesmo arquivo com purpose: "any maskable". Prepare uma imagem comum, que pode aproveitar todo o canvas, e outra maskable, com fundo opaco e margem para o recorte.
| Tamanho | Prioridade | purpose | Uso comum |
|---|---|---|---|
| 192×192 | Essencial | any | Instalação e tela inicial em tamanhos menores |
| 512×512 | Essencial | any | Telas de maior densidade e apresentação da aplicação |
| 192×192 maskable | Recomendado | maskable | Launchers Android em contextos menores |
| 512×512 maskable | Muito recomendado | maskable | Recortes adaptativos em alta densidade |
| 144×144, 168×168, 384×384 | Opcional | any | Densidades específicas quando o projeto exigir |
| 1024×1024 | Opcional | any | Material de alta resolução e usos futuros |
Conjunto mínimo prático: 192×192 comum, 512×512 comum e 512×512 maskable.
any e maskablepurpose: "any"purpose: "maskable"any maskableUm ícone maskable inclui margem para sobreviver aos recortes. Se o mesmo arquivo for usado como ícone comum, essa margem continua visível e o logo pode parecer menor do que os ícones ao redor. Por isso, web.dev recomenda declarar entradas separadas.
A especificação define a zona mínima como um círculo central com raio equivalente a 40% da largura do ícone. Uma forma simples de aplicar a regra é manter o conteúdo essencial dentro dos 80% centrais, deixando aproximadamente 10% de margem em cada lado.
Imagem completa: 512 × 512 px
Área central de 80%: cerca de 410 × 410 px
Margem por lado: cerca de 51 px
Zona garantida: círculo com raio de 205 pxO preview do launcher deve ser tratado como simulação. O arquivo exportado continua quadrado; quem aplica a máscara final é o sistema operacional.
manifest.json{
"name": "Your PWA Name",
"short_name": "YourPWA",
"start_url": "/",
"display": "standalone",
"background_color": "#ffffff",
"theme_color": "#000000",
"icons": [
{
"src": "/icons/icon-192.png",
"sizes": "192x192",
"type": "image/png",
"purpose": "any"
},
{
"src": "/icons/icon-512.png",
"sizes": "512x512",
"type": "image/png",
"purpose": "any"
},
{
"src": "/icons/maskable-192.png",
"sizes": "192x192",
"type": "image/png",
"purpose": "maskable"
},
{
"src": "/icons/maskable-512.png",
"sizes": "512x512",
"type": "image/png",
"purpose": "maskable"
}
]
}No HTML, aponte para o arquivo:
<link rel="manifest" href="/manifest.json">
<meta name="theme-color" content="#000000">Os caminhos são relativos à URL do manifest. Abra cada endereço diretamente no navegador para confirmar que não retorna 404.
Uma imagem transparente pode ser usada como fonte, desde que o gerador a componha sobre um fundo opaco antes da exportação maskable.
Instale a PWA em mais de um dispositivo ou launcher. Compare pelo menos um recorte circular e um squircle ou quadrado arredondado. A cor final, a máscara e alguns efeitos visuais são definidos pelo sistema.
Causa: nenhuma entrada usa purpose: "maskable".
Correção: adicione uma entrada separada. A validação do manifest não confirma a qualidade visual da imagem, portanto confira a zona segura depois.
Verifique, nesta ordem:
<link rel="manifest">;sizes, type e purpose correspondem aos arquivos;Causa: a versão maskable contém pixels transparentes.
Correção: gere novamente o arquivo com um fundo opaco que combine com a marca. A versão any pode continuar transparente.
Causa: o arquivo com margem de segurança está sendo usado também como ícone any.
Correção: use arquivos diferentes para os dois propósitos.
Launchers compatíveis usam a versão maskable e aplicam a própria forma. O resultado final pode variar conforme aparelho, launcher, papel de parede e tema.
O Safari usa apple-touch-icon quando ele é declarado. Para uma cobertura previsível, forneça também um PNG de 180×180:
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">O Apple Touch Icon e o ícone maskable têm requisitos diferentes. Não presuma que um único arquivo dará o melhor resultado nos dois sistemas.
O Windows costuma usar a versão any em atalhos e na barra de tarefas. Versões atuais do macOS podem aproveitar um ícone maskable quando disponível e recorrer ao any como alternativa.
any e maskable separadasheadany e maskablepurpose: "any"purpose: "maskable"Por que evitar any maskableRegra da zona segura de 80%Exemplo completo de manifest.jsonComo criar a versão maskableComo testarChrome DevToolsTeste em aparelhosErros frequentesO manifest não possui ícone maskableO ícone não aparece depois da instalaçãoAparece um fundo branco ou cinzaO logo parece pequeno demaisObservações por plataformaAndroidiOSWindows e macOSChecklist finalFerramentas relacionadas
Master the art of creating perfect logo assets for all platforms with our comprehensive guide

Aprenda a combinar SVG, PNG e ICO para exibir favicons nítidos no Chrome, Firefox, Safari, Edge, iOS, Android e Windows.

Announcing the launch of Logo Foundry, the developer's solution to multi-platform logo deployment challenges
Join the community
Subscribe to our newsletter for the latest news and updates