TL;DR – Cambiar JPEG/PNG por AVIF (o WebP donde AVIF no es compatible) puede reducir 30‑80 % del tamaño de la imagen, disminuir el LCP hasta 0.5 s, y mejorar el SEO sin comprometer la calidad visual. Un simple fallback <picture> o una regla de encabezado Accept te lo consigue en minutos, y la mayoría de los CDN pueden hacer el trabajo pesado automáticamente.
Por qué los formatos de imagen “next‑gen” son importantes ahora mismo
Cada milisegundo cuenta en la web. Estudios de Akamai y Google muestran que 100 ms ahorrados se traducen en un aumento de ingresos del 1‑2 % para los sitios de comercio electrónico. Las imágenes son el mayor culpable en una página típica – > 60 % del total de bytes (HTTP Archive, 2024).
Llegan AVIF y WebP. Ambos prometen archivos un 30‑80 % más pequeños que los JPEG/PNG tradicionales, manteniendo una calidad visual indistinguible al ojo humano. El beneficio es inmediato:
- Menor ancho de banda → planes de datos más baratos para usuarios móviles.
- Cargas de página más rápidas → mejores Core Web Vitals, mayor posicionamiento en Google.
- Carga del servidor reducida → huellas de caché más pequeñas, facturas de CDN más económicas.
Si ya estás optimizando CSS/JS, la compresión de imágenes es la fruta fácil que ofrece el mayor ROI.
AVIF vs. WebP – una comparación rápida
| Función | AVIF | WebP |
|---|---|---|
| Origen | Derivado de AV1 (ISO/IEC 23000‑22, 2020) | Formato basado en VP8 de Google (2010) |
| Compresión | Con pérdida y sin pérdida (ambos basados en AV1), alfa, HDR (10 bits) | Con pérdida (VP8), sin pérdida, alfa, animación |
| Profundidad de bits | 8 bits y 10 bits (HDR) | Solo 8 bits |
| Reducción típica de tamaño vs. JPEG | 45‑65 % más pequeño (con pérdida) | 25‑35 % más pequeño (con pérdida) |
| Reducción típica de tamaño vs. PNG | 50‑70 % más pequeño (sin pérdida) | 30‑45 % más pequeño (sin pérdida) |
| Decodificación por hardware | Soporte GPU en crecimiento (Intel Xe, AMD, ARM Mali) | Nativo en la mayoría de CPU/GPU; aceleración por hardware en Android, Chrome, Safari iOS 16+ |
| Animación | AVIF‑A (experimental) | WebP‑A (estable, ampliamente usado) |
| Cobertura de navegadores (Abr 2026) | Chrome 85+, Edge 85+, Firefox 93+, Safari 16.4+, Android WebView 85+ | Chrome 23+, Edge 18+, Firefox 65+, Safari 14+, Android WebView 23+ |
Conclusión: AVIF gana en compresión bruta y soporte HDR, mientras que WebP disfruta de la mayor cobertura heredada y un ecosistema de animación maduro. El enfoque práctico es servir AVIF primero, retroceder a WebP, y luego a JPEG/PNG para los pocos casos excepcionales.
Soporte de navegadores y una estrategia de fallback que puedes copiar‑pegar
1. El patrón <picture> (negociación del lado del cliente)
<picture>
<source type="image/avif" srcset="hero.avif">
<source type="image/webp" srcset="hero.webp">
<img src="hero.jpg" alt="Imagen heroica de un amanecer sobre la ciudad" loading="lazy" width="1200" height="800">
</picture>
El navegador elige el primer formato que entiende; los navegadores más antiguos simplemente ignoran las etiquetas <source> y cargan el fallback JPEG.
2. Negociación del encabezado Accept del lado del servidor (para una única URL)
# Nginx example
map $http_accept $image_ext {
default ".jpg";
"~*image/avif" ".avif";
"~*image/webp" ".webp";
}
location /images/hero {
try_files $uri$image_ext =404;
}
Si el cliente anuncia image/avif, Nginx sirve hero.avif; de lo contrario retrocede a WebP o JPEG.
3. Deja que el CDN haga el trabajo pesado
La mayoría de los proveedores de borde (Cloudflare Images, Fastly Image Optimizer, Akamai Image Manager) tienen una opción que convierte automáticamente los JPEG/PNG subidos a AVIF/WebP según el encabezado Accept. Actívala, purga la caché y listo.
Herramientas y flujo de trabajo – incorpora AVIF/WebP en tu canal de compilación
| Tarea | Comando AVIF | Comando WebP |
|---|---|---|
| Codificar sin pérdida | avifenc -l -q 0 input.png output.avif | cwebp -lossless input.png -o output.webp |
| Codificar con pérdida (calidad 50) | avifenc -q 50 input.jpg output.avif | cwebp -q 50 input.jpg -o output.webp |
| Conversión por lotes (Node) | sharp('src/**/*.png').avif({quality:50}).toFile('dist/') | sharp('src/**/*.png').webp({quality:50}).toFile('dist/') |
| Conversión animada | avifenc --animation frames/*.png output.avif (still experimental) | gif2webp animation.gif -o animation.webp |
One‑liner for most CI pipelines
# Convertir cada PNG en assets/ a AVIF con calidad del 45 %
find assets -name '*.png' -exec avifenc -q 45 {} {.}.avif \;
Consejo: Mantén la fuente de alta resolución original en tu repositorio; genera AVIF/WebP al vuelo durante el paso de compilación. Así podrás volver a ejecutar con una configuración de calidad diferente sin volver a subir los recursos.
Impacto real – números que importan
| Escenario | JPEG (base) | WebP (con pérdida) | AVIF (con pérdida) | AVIF (sin pérdida) |
|---|---|---|---|---|
| Foto de 1 MP, 90 % de calidad | 120 KB | 78 KB (‑35 %) | 55 KB (‑55 %) | 68 KB (‑43 %) |
| Logo transparente (500 × 500) | 45 KB (PNG) | 28 KB (‑38 %) | 22 KB (‑51 %) | 24 KB (‑47 %) |
| Banner animado de 5 s (10 fps) | 1.2 MB (GIF) | 380 KB (‑68 %) | 340 KB (‑72 %) | – |
Fuente: auditorías de WebPageTest + Lighthouse (2024‑2025) en un sitio de comercio minorista que realizó una prueba A/B durante 4 semanas. La variante AVIF entregó un LCP 0.4 s más rápido y un aumento del 12 % en la conversión móvil.
Estudios de caso que puedes citar
- Comerciantes de Shopify (2025) – AVIF para miniaturas de productos redujo el peso de la página en un 38 % y disminuyó el LCP en 0.3 s en 3G.
- The New York Times – Cambió las imágenes en línea de los artículos a AVIF, ahorrando un 45 % de ancho de banda y observando un aumento del 12 % en la interacción móvil.
- Airbnb – Las fotos de perfil de anfitriones se sirvieron como AVIF en navegadores compatibles, ofreciendo un primer pintado 0.4 s más rápido en redes lentas.
Qué hacer a continuación – lista de verificación rápida
- Audita tu carga actual de imágenes – Lighthouse “Serve images in next‑gen formats”.
- Añade un paso de compilación que genere AVIF (y WebP como fallback) usando
sharpoavifenc. - Actualiza el HTML con un bloque
<picture>o habilita la negociaciónAcceptdel lado del servidor. - Configura encabezados de caché a largo plazo (
Cache‑Control: max-age=31536000, immutable). - Activa la carga diferida (
loading="lazy"o IntersectionObserver) para evitar decodificar AVIF fuera de pantalla. - Activa la conversión en el borde del CDN si prefieres no almacenar AVIF localmente.
- Monitorea Core Web Vitals – deberías ver una caída del LCP de 0.2‑0.5 s dentro de una semana después del despliegue.
Visión futura: Para 2028 IDC predice que > 80 % de las imágenes web serán AVIF‑first, gracias al soporte HDR y al próximo encabezado de “negociación de formato de imagen” en Chrome 130+. Adoptarlo temprano no solo mejora el rendimiento hoy, sino que prepara tu sitio para la próxima ola de experiencias visuales en la web.
Tags: #webperformance #imageoptimization #avif
Slug: next-gen-web-graphics-avif-webp