Chrome Extension Icon Sizes: A Practical Packaging Guide
A Chrome extension can show a sharp 128-pixel logo in one place but turn into a muddy square in the toolbar. That usually points to asset sizing, not the brand mark: choosing Chrome extension icon sizes correctly means treating toolbar, extension, and store artwork as related but distinct jobs.
These assets are not website favicons. The HTML Standard defines rel='icon' as a page link relation, while an extension declares icons in manifest.json and can define separate action artwork. If you also need the site icon, our favicon size guide covers that separate setup.
Chrome extension icon sizes: what each asset does
For an extension, icon sizes are the pixel dimensions of files supplied for different UI and packaging contexts. A dimension does not determine placement by itself; the manifest property and requesting surface do.
Manifest artwork: General extension artwork declared in the top-level icons object. Keep this identity set consistent.
Action artwork: The toolbar mark, supplied through action.default_icon when it should differ from the general icon.
Store artwork: A 128x128 PNG prepared for the Chrome Web Store listing workflow. Treat it as a separate deliverable rather than assuming the package supplies every listing asset.
The conservative baseline is 16x16, 24x24, 32x32, 48x48, and 128x128 pixels. These are recommended working sizes, not one universal display rule.
Why extension icon sizes matter
Small sizes remove detail. Fine lettering, thin strokes, and a complex mark can collapse into a colored blob at 16 pixels. If an exact-size file is missing, the browser must scale an available image, and that fallback can look soft or blurred.
A useful set separates purpose from resolution. Use compact artwork for toolbar density, a consistent family for general extension surfaces, and a high-resolution square for store presentation. Each export then has a defined job instead of relying on one oversized file to fit every slot.
How to build the icon set in manifest.json
In Manifest V3, numeric keys in icons declare the pixel dimensions of referenced files. Paths are relative to the extension root and should match the file names exactly, including case. This conservative example separates identity artwork from toolbar artwork:
The icons object gives Chrome several general-purpose representations. The default_icon map supplies denser toolbar versions at 16, 24, and 32 pixels, where a simplified mark may read better than the full logo. If you omit an action-specific icon, the general icon can serve as the fallback, so declaring the toolbar set gives you tighter visual control.
Do not copy website favicon syntax into the manifest. The sizes attribute belongs in HTML such as <link rel='icon' sizes='32x32' ...>, not in the JSON map. Likewise, an .ico file that works as a favicon is not automatically the right extension asset; PNG is the conservative package format.
Best practices for a consistent extension icon
Design for 16 pixels first. Reduce the mark to a clear silhouette, limited colors, and shapes that remain distinct in light and dark toolbars. Refine larger exports afterward.
Center it optically. Equal mathematical padding can still make a mark look low or crowded. Compare every variant in a real toolbar-sized preview.
Match file dimensions. A file named icon-32.png should be 32x32 pixels, and its manifest key should say 32. Check the package path as well.
Keep one visual family. Toolbar, management, and store artwork should share geometry and color, even when the smallest version removes decoration.
Verify what you package. Load the unpacked extension, inspect chrome://extensions, and confirm that every referenced image is present in the ZIP. Reload the extension after changes.
Use Mzu favicondl to export PNG variants from a clean SVG or PNG source. If the site also needs a favicon, the favicon HTML code guide covers its separate markup path.
If an icon is missing after installation, check JSON syntax first, then verify the files, paths, and dimensions. Refreshing the underlying webpage does not necessarily reload packaged extension metadata, so use the extension's reload control while testing.
Conclusion: ship a deliberate icon stack
Chrome extension icon sizes matter because toolbar, extension-management, and store contexts have different visual budgets. A practical 16, 24, 32, 48, and 128-pixel PNG set gives Chrome exact source artwork instead of forcing one file into every slot. Treat those dimensions as a maintainable baseline, check the current Chrome Web Store upload rules before release, and keep extension icons separate from your website favicon.
Chrome 扩展的 logo 可能在一个位置清晰锐利地显示为 128 像素,到了工具栏却糊成一个模糊的方块。这通常说明资源尺寸设置有问题,而不是品牌标识本身有问题:正确选择 Chrome extension icon sizes,意味着要把工具栏、扩展本身和商店展示图视为相互关联、但用途不同的资源。
Chrome extension icon sizesは、toolbar、extension management、storeという不同的なコンテキストで利用できる視覚領域が異なるため重要です。実用的な16、24、32、48、128ピクセル単位のPNG一式を用意すれば、1つのファイルをすべてのスロットに流用する必要がなく、Chromeにサイズごとの正確なartworkを渡せます。これらのdimensionsは維持しやすいbaselineとして扱い、release前に現在のChrome Web Storeのupload rulesを確認し、extension iconはwebサイトのfaviconとは分けて管理してください。
Chrome extension은 어떤 위치에서는 선명한 128픽셀 로고를 보여주지만, toolbar에서는 흐릿하고 탁한 정사각형으로 보일 수 있습니다. 이는 대개 brand mark 자체가 아니라 asset sizing 때문입니다. Chrome extension icon sizes를 올바르게 선택하려면 toolbar, extension, store artwork를 서로 연관되지만 역할은 다른 각각의 작업으로 다뤄야 합니다.
이 asset들은 웹사이트용 favicon과는 별개입니다. HTML Standard는 rel='icon'을 페이지 link relation으로 정의하지만, extension은 manifest.json에서 icon을 선언하고 별도의 action artwork를 정의할 수도 있습니다. 사이트 icon도 필요하다면 별도 설정 방법은 favicon size guide에서 다룹니다.
Chrome extension icon sizes: 각 asset의 역할
extension에서 icon size는 서로 다른 UI와 packaging 환경에 제공되는 파일의 픽셀 크기입니다. 픽셀 크기만으로 배치 위치가 결정되는 것은 아니며, manifest property와 asset을 요청하는 surface에 따라 달라집니다.
Manifest artwork: 최상위 icons object에 선언하는 일반 extension artwork입니다. 이 아이콘 세트는 일관된 정체성을 유지해야 합니다.
Action artwork: toolbar에 표시되는 mark로, 일반 icon과 구분해야 할 때 action.default_icon을 통해 제공합니다.
Store artwork: Chrome Web Store의 listing workflow를 위해 준비하는 128x128 PNG입니다. package가 모든 listing asset을 제공한다고 가정하지 말고 별도 deliverable로 관리하세요.
보수적인 기준선은 16x16, 24x24, 32x32, 48x48, 128x128 픽셀입니다. 이 크기들은 작업 시 권장하는 크기이며, 모든 화면에 공통으로 적용되는 단일 표시 규칙은 아닙니다.
왜 extension icon size가 중요한가
작은 크기에서는 세부 디테일이 사라집니다. 세밀한 글자, 가는 획, 복잡한 mark는 16픽셀에서 색 덩어리로 뭉개질 수 있습니다. 정확히 맞는 크기의 파일이 없으면 브라우저는 사용 가능한 이미지를 scaling해야 합니다. 이 fallback은 부드럽거나 흐리게 보일 수 있습니다.
목적과 해상도를 나눠 준비한 icon set이 유용합니다. toolbar의 밀도에 적합한 compact artwork, 일반 extension 표면 전반에 사용할 일관된 icon family, store presentation용 고해상도 정사각형 이미지를 준비하면 됩니다. 그러면 각 export에 정해진 역할이 생기고, 하나의 oversized file을 모든 slot에 맞추는 데 의존할 필요가 없습니다.
manifest.json에서 icon set을 만드는 방법
Manifest V3에서 icons의 숫자 키는 참조 대상 파일의 픽셀 크기를 선언합니다. 경로는 확장 프로그램 루트를 기준으로 하며, 대소문자를 포함해 파일명과 정확히 일치해야 합니다. 다음 예시는 확장 프로그램 식별용 이미지와 toolbar용 이미지를 분리한 보수적인 구성입니다:
icons 객체는 Chrome에 일반적인 용도로 사용할 수 있는 여러 아이콘 표현을 제공합니다. default_icon 맵은 16, 24, 32픽셀 크기의 더 세밀한 toolbar용 버전을 지정합니다. 이 크기에서는 전체 로고보다 단순화된 심벌릿이 더 잘 읽힐 수 있습니다. action 전용 아이콘을 생략하면 일반 아이콘이 fallback으로 사용될 수 있으므로, toolbar용 아이콘 세트를 선언하면 아이콘 표시를 더 정밀하게 제어할 수 있습니다.
웹사이트 favicon 구문을 manifest에 그대로 복사하지 마세요. sizes 속성은 <link rel='icon' sizes='32x32' ...> 같은 HTML에 넣어야 하며, JSON 맵에 넣는 것이 아닙니다. 마찬가지로 favicon으로 작동하는 .ico 파일이 자동으로 올바른 확장 프로그램 asset이 되는 것은 아닙니다. PNG가 보수적인 패키지 형식입니다.
일관된 확장 프로그램 아이콘을 위한 권장 사항
먼저 16픽셀을 기준으로 디자인하세요. 아이콘을 선명한 실루엣과 제한된 색상으로 구성하고, 밝고 어두운 toolbar에서도 형태가 구분되도록 해야 합니다. 더 큰 크기의 export는 그다음에 다듬으면 됩니다.
시각적 중심을 맞추세요. 수학적으로 동일한 여백을 적용해도 아이콘이 낮거나 답답해 보일 수 있습니다. 각 변형을 실제 toolbar 크기의 preview에서 비교해 보세요.
파일 dimensions를 일치시키세요.icon-32.png의 실제 크기는 32×32픽셀이어야 하고, manifest key도 32로 지정해야 합니다. package path도 함께 확인하세요.
하나의 visual family를 유지하세요. toolbar, extension 관리 화면, store에 사용하는 artwork는 가장 작은 버전에서 장식 요소를 줄이더라도 도형 구성과 색상을 공유해야 합니다.
패키징한 내용을 확인하세요. unpacked extension을 로드하고 chrome://extensions에서 참조된 모든 이미지가 ZIP에 들어 있는지 확인하세요. 변경 사항을 적용한 뒤에는 extension을 reload하세요.
설치 후 아이콘이 표시되지 않는다면 먼저 JSON syntax를 확인한 다음 파일, 경로, dimensions를 검증하세요. underlying webpage을 새로 고치는 것만으로는 packaged extension metadata가 반드시 reload되지 않을 수 있으므로, 테스트할 때는 extension의 reload control을 사용하세요.
결론: 목적에 맞게 구성한 아이콘 세트를 배포하세요
Chrome extension 아이콘 크기가 중요한 이유는 toolbar, extension 관리 화면, store처럼 사용 context마다 시각적 여유가 다르기 때문입니다. 실용적인 16, 24, 32, 48, 128픽셀 PNG 세트를 준비하면 하나의 파일을 모든 슬롯에 억지로 사용하는 대신 Chrome에 크기별 원본 artwork를 정확하게 제공할 수 있습니다. 이러한 dimensions를 관리 가능한 baseline으로 삼고, release 전에 현재 Chrome Web Store upload rules를 확인하며, extension 아이콘과 website favicon은 분리해서 관리하세요.
Una extensión de Chrome puede mostrar un logotipo nítido de 128 píxeles en un lugar y convertirse en un cuadrado borroso en la barra de herramientas. Eso suele indicar que el problema son las dimensiones de los recursos, no la marca: elegir correctamente los tamaños de los iconos de las extensiones de Chrome implica tratar los recursos de la barra de herramientas, de la extensión y de la tienda como funciones relacionadas pero distintas.
Estos recursos no son favicons de sitios web. El estándar HTML define rel='icon' como una relación de enlace de página, mientras que una extensión declara sus iconos en manifest.json y puede definir recursos de action independientes. Si también necesitas el icono del sitio, nuestra guía de tamaños de favicon cubre esa configuración aparte.
Tamaños de los iconos de las extensiones de Chrome: qué hace cada recurso
Para una extensión, los tamaños de los iconos son las dimensiones en píxeles de los archivos proporcionados para distintos contextos de UI y empaquetado. Una dimensión no determina por sí sola la ubicación; de eso se encargan la propiedad del manifest y la superficie que solicita el recurso.
Recursos del manifest: son los recursos generales de la extensión declarados en el objeto icons de nivel superior. Mantén la coherencia de este conjunto de identidad.
Recursos de action: el símbolo de la barra de herramientas, proporcionado mediante action.default_icon cuando debe diferir del icono general.
Recursos de la tienda: un PNG de 128x128 preparado para el flujo de trabajo de publicación en Chrome Web Store. Trátalo como un entregable independiente, en lugar de asumir que el paquete proporciona todos los recursos necesarios para el listado.
El punto de partida conservador es 16x16, 24x24, 32x32, 48x48 y 128x128 píxeles. Son tamaños de trabajo recomendados, no una regla universal de visualización.
Por qué importan los tamaños de los iconos de las extensiones
Los tamaños pequeños hacen que desaparezcan los detalles. Las letras finas, los trazos delgados y un símbolo complejo pueden fundirse en una mancha de color a 16 píxeles. Si falta un archivo del tamaño exacto, el navegador debe escalar una imagen disponible, y ese recurso de reserva puede verse blando o desenfocado.
Un conjunto útil separa el propósito de la resolución. Usa recursos compactos que se adapten a la densidad de la barra de herramientas, una familia coherente para las superficies generales de la extensión y un cuadrado de alta resolución para la presentación en la tienda. Así, cada exportación tiene una función definida en lugar de depender de un único archivo sobredimensionado que tenga que encajar en todos los espacios.
Cómo crear el conjunto de iconos en manifest.json
En Manifest V3, las claves numéricas de icons declaran las dimensiones en píxeles de los archivos referenciados. Las rutas son relativas a la raíz de la extensión y deben coincidir exactamente con los nombres de archivo, teniendo en cuenta las mayúsculas y minúsculas. Este ejemplo conservador separa las piezas gráficas de identidad de las destinadas a la barra de herramientas:
El objeto icons proporciona a Chrome varias representaciones de uso general. El mapa default_icon aporta representaciones con mayor densidad visual para la barra de herramientas a 16, 24 y 32 píxeles, donde un símbolo simplificado puede resultar más legible que el logotipo completo. Si omites un icono específico de action, el icono general puede servir como fallback, por lo que declarar el conjunto de iconos de la barra de herramientas te ofrece un control visual más preciso.
No copies la sintaxis del favicon de un sitio web al manifest. El atributo sizes pertenece a HTML, como en <link rel='icon' sizes='32x32' ...>, y no al mapa JSON. Del mismo modo, un archivo .ico que funciona como favicon no es automáticamente el recurso adecuado para una extensión; PNG es el formato conservador para el paquete.
Prácticas recomendadas para un icono de extensión coherente
Diseña primero para 16 píxeles. Reduce la marca a una silueta clara, con colores limitados y formas que sigan siendo distinguibles en toolbars claros y oscuros. Después, refina las exportaciones de mayor tamaño.
Centra el icono ópticamente. Aunque el padding sea igual en términos matemáticos, la marca todavía puede parecer baja o apretada. Compara cada variante en una vista previa con el tamaño real del toolbar.
Haz coincidir las dimensiones del archivo. Un archivo llamado icon-32.png debe medir 32x32 píxeles, y la clave de su manifest debe indicar 32. Comprueba también la ruta del paquete.
Mantén una única familia visual. Los gráficos para el toolbar, la gestión de extensiones y la tienda deben compartir geometría y color, aunque la versión más pequeña elimine los adornos.
Verifica lo que empaquetas. Carga la extensión desempaquetada, inspecciona chrome://extensions y confirma que cada imagen referenciada esté presente en el ZIP. Recarga la extensión después de los cambios.
Usa Mzu favicondl para exportar variantes PNG desde un origen SVG o PNG limpio. Si el sitio también necesita un favicon, la guía de código HTML para favicons cubre su ruta de marcado independiente.
Si un icono no aparece después de la instalación, comprueba primero la sintaxis JSON y luego verifica los archivos, las rutas y las dimensiones. Recargar la página web subyacente no necesariamente recarga los metadatos empaquetados de la extensión, así que usa el control de recarga de la extensión mientras realizas las pruebas.
Conclusión: publica un conjunto de iconos bien pensado
Los tamaños de los iconos de las extensiones de Chrome importan porque los contextos del toolbar, la gestión de extensiones y la tienda tienen presupuestos visuales distintos. Un conjunto práctico de archivos PNG de 16, 24, 32, 48 y 128 píxeles proporciona a Chrome los gráficos de origen exactos en lugar de obligarlo a usar un único archivo en todos los espacios. Trata esas dimensiones como una línea base fácil de mantener, consulta las reglas de carga vigentes de Chrome Web Store antes de publicar y mantén los iconos de las extensiones separados del favicon de tu sitio web.
Build a consistent extension icon set
Convert your source artwork into the PNG sizes you need, then package each file with the correct manifest path.