¿Qué es el formato ICO?
ICO (Icon) es un formato de archivo utilizado para iconos en Microsoft Windows y como favicons para sitios web. Desarrollado por Microsoft e introducido por primera vez con Windows 1.0 en 1985, el formato ICO ha evolucionado significativamente a lo largo de las décadas. Su característica definitoria es la capacidad de almacenar múltiples imágenes de diferentes tamaños y profundidades de color dentro de un único archivo, permitiendo a los sistemas operativos y navegadores seleccionar la versión más apropiada para cada contexto de visualización.
Los archivos usan la extensión .ico. Un formato relacionado, CUR (Cursor), usa la misma estructura pero añade coordenadas de punto activo para el posicionamiento del cursor.
Estructura del archivo ICO
Los archivos ICO usan una estructura binaria simple:
Archivo ICO
├── Cabecera ICONDIR (6 bytes)
│ ├── Reservado: 0x0000 (2 bytes)
│ ├── Tipo: 0x0001 [1 = ICO, 2 = CUR]
│ └── Recuento de imágenes: N (2 bytes)
│
├── ICONDIRENTRY[0] (16 bytes por imagen)
│ ├── Ancho: 0-255 [0 = 256]
│ ├── Alto: 0-255 [0 = 256]
│ ├── Profundidad de color
│ ├── Tamaño de los datos de imagen
│ └── Desplazamiento a los datos de imagen
│
└── Datos de imagen[N] (BMP o PNG)
Tamaños de imagen en archivos ICO
| Tamaño | Profundidad de color | Contexto de uso |
|---|---|---|
| 16×16 | 32 bits RGBA | Barra de tareas, iconos pequeños de barra de herramientas |
| 32×32 | 32 bits RGBA | Escritorio (iconos medianos), barra de herramientas estándar |
| 48×48 | 32 bits RGBA | Escritorio (iconos grandes), Explorador de Windows |
| 64×64 | 32 bits RGBA | Escritorio (iconos extra grandes) |
| 128×128 | 32 bits RGBA | Vista de iconos grandes en Windows 10+ |
| 256×256 | Formato PNG | Escritorio (iconos enormes), Windows 10/11 |
Para iconos de aplicaciones Windows, el conjunto mínimo recomendado es 16×16, 32×32, 48×48 y 256×256. La imagen 256×256 debe almacenarse como PNG (no BMP) según la especificación Vista+.
Favicon: ICO para la web
El uso más común de ICO en 2024 es como favicon — el pequeño icono mostrado en las pestañas del navegador, marcadores, historial y barras de direcciones.
Configuración estándar de favicon
La configuración mínima es un único archivo favicon.ico en la raíz del sitio web:
<link rel="icon" href="/favicon.ico" type="image/x-icon">
Sin embargo, los sitios web modernos deben proporcionar múltiples formatos y tamaños:
<!-- ICO heredado para navegadores antiguos -->
<link rel="icon" href="/favicon.ico" sizes="32x32">
<!-- Favicons PNG modernos -->
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<!-- Icono táctil de Apple (marcador de pantalla de inicio iOS) -->
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<!-- Favicon SVG (escalable, compatible con Firefox y Chrome) -->
<link rel="icon" type="image/svg+xml" href="/favicon.svg">
Los favicons SVG son la mejor práctica moderna para sitios web — un único archivo SVG escala perfectamente a cualquier tamaño. Firefox y Chrome usan el SVG cuando está disponible; los navegadores más antiguos recurren al ICO.
Profundidades de color en ICO
| Profundidad de color | Colores | Uso |
|---|---|---|
| 1 bit | 2 (monocromo) | Iconos de Windows antiguos |
| 4 bits | 16 | Era Windows 3.x |
| 8 bits | 256 (paleta) | Era Windows 95/98 |
| 24 bits | 16,7 millones | Color verdadero sin transparencia |
| 32 bits | 16,7 millones + alfa de 8 bits | Iconos modernos — RGBA |
Los archivos ICO modernos deben usar profundidad de color de 32 bits para todas las imágenes, que almacena datos BGRA completos con transparencia suave para sombras y bordes con anti-aliasing.
Crear archivos ICO
Desde la línea de comandos (ImageMagick)
# Crear ICO con múltiples tamaños desde un único PNG
magick convert icono-256.png \
\( -clone 0 -resize 256x256 \) \
\( -clone 0 -resize 128x128 \) \
\( -clone 0 -resize 64x64 \) \
\( -clone 0 -resize 48x48 \) \
\( -clone 0 -resize 32x32 \) \
\( -clone 0 -resize 16x16 \) \
-delete 0 favicon.ico
# Versión más simple (dejar que ImageMagick elija los tamaños)
magick convert icono.png -define icon:auto-resize=256,128,64,48,32,16 favicon.ico
Desde GIMP
Archivo → Exportar como → elige .ico → el diálogo pregunta qué tamaños incluir
Herramientas online
- RealFaviconGenerator.net — genera el paquete completo de favicon con ICO + PNG + manifiesto
- favicon.io — convierte PNG/texto/emoji a conjunto ICO + PNG
ICO vs. SVG para aplicaciones modernas
| Caso de uso | ICO | SVG |
|---|---|---|
| Icono de aplicación Windows | ✅ Requerido | ❌ |
| Favicon de navegador (moderno) | Funciona | ✅ Mejor (escala perfectamente) |
| Aplicación Web Progresiva | ✅ + PNG | ✅ Mejor |
| Icono de aplicación macOS | ❌ (usar ICNS) | ❌ |
Para aplicaciones Windows, ICO sigue siendo requerido por el sistema operativo. Para favicons web, SVG + fallback ICO es la mejor práctica moderna. Para macOS, Apple usa el formato ICNS (un contenedor multi-tamaño similar para iconos Mac).
Conversiones relacionadas
Conversiones frecuentes del catálogo: