DEV Community

Miguel Figueroa
Miguel Figueroa

Posted on

Core Web Vitals: Guía completa de optimización

⚡ INTRODUCCIÓN

Core Web Vitals son 3 métricas que Google usa EXPLÍCITAMENTE en ranking desde mayo 2021.

⚠️ Ignorarlas = perder 40-80 posiciones en búsqueda orgánica

💡 PERO: Son relativamente fáciles de mejorar.

🎯 QUÉ SON CORE WEB VITALS

Son 3 métricas críticas para experiencia del usuario:

1️⃣ LCP (Largest Contentful Paint) - Velocidad de carga
2️⃣ CLS (Cumulative Layout Shift) - Estabilidad visual
3️⃣ INP (Interaction to Next Paint) - Responsividad

🔥 LCP - LARGEST CONTENTFUL PAINT

Qué mide: Tiempo hasta que usuario VE el contenido principal.

📊 Objetivos 2026:

Verde (Good): < 2.5 segundos
⚠️ Amarillo (Needs): 2.5-4 segundos
Rojo (Poor): > 4 segundos

💬 ¿Por qué importa?

Si tarda 4 segundos:
70% de usuarios se van
• Bounce rate DISPARA
• Revenue CADE

🚀 CÓMO MEJORAR LCP:

1️⃣ Optimizar Imágenes AGRESIVAMENTE
• Compresión máxima: -70-80%
• Convertir a WebP: -40-50%
• Lazy load: -20-30%
• Herramientas: TinyPNG, ImageOptim
📉 Impacto: -15-20% LCP

2️⃣ Minimizar CSS/JavaScript
• Quitar código no usado (PurgeCSS)
• Minify todo (Terser para JS)
📉 Impacto: -10-15%

3️⃣ Preload Recursos Críticos

📉 Impacto: -10-15%

4️⃣ Usar CDN Global
• Firebase, Cloudflare, AWS CloudFront
📉 Impacto: -30-40%

5️⃣ Mejorar Server Response Time
• Caching en servidor
• Database optimization
• Reduce API calls
📉 Impacto: -10-20%

⚖️ CLS - CUMULATIVE LAYOUT SHIFT

Qué mide: Cuánto "salta" o "se mueve" contenido mientras carga.

😤 Escenario: Estás leyendo artículo, imagen carga abajo, texto sube 100px. Accidentalmente clickeas botón equivocado. 😞

📊 Objetivos 2026:

Verde: < 0.1
⚠️ Amarillo: 0.1-0.25
Rojo: > 0.25

🚀 CÓMO MEJORAR CLS:

1️⃣ Definir Dimensiones de Imágenes

• Navegador reserva espacio ANTES de cargar
📈 Impacto: +30-40%

2️⃣ Evitar Contenido Dinámico
• Ads que aparecen después
• Notificaciones que empujan
📈 Impacto: +20-30%

3️⃣ Transform/Opacity para Animaciones
• NO cambiar width/height
.box { transform: translateX(100px); }
📈 Impacto: +15-25%

4️⃣ Fonts Sin FOIT/FOUT
• font-display: swap en CSS
📈 Impacto: +10-20%

5️⃣ Evitar Scripts que Muevan DOM
• JavaScript dinámico
📈 Impacto: +10-20%

⚡ INP - INTERACTION TO NEXT PAINT

Qué mide: Tiempo para responder cuando clickeas.

Clickeas "Add to Cart" - ¿cuánto esperas?

📊 Objetivos 2026:

Verde: < 200ms
⚠️ Amarillo: 200-500ms
Rojo: > 500ms

💡 200ms no suena mucho, PERO:
Es la diferencia entre "instantáneo" vs "lento"

🚀 CÓMO MEJORAR INP:

1️⃣ Reducir Main Thread Work
• Operaciones computacionales pesadas
• Loops largos
• Canvas manipulation
📈 Impacto: +20-30%

2️⃣ Defer JavaScript No-Crítico
• Cargar después de interacción
📈 Impacto: +10-20%

3️⃣ Web Workers para Cálculos Pesados
• Off-thread computation
📈 Impacto: +30-50%

4️⃣ Debounce Event Listeners
• Si evento dispara 100x/s, procesarlo cada 100ms
📈 Impacto: +15-25%

5️⃣ Code Splitting por Ruta
• Cada ruta solo código necesario
📈 Impacto: +10-20%

🛠️ HERRAMIENTAS PARA MEDIR

1️⃣ Google PageSpeed Insights
✓ Gratis, web, resultado en 10s
✓ Simula 4G y mobile

2️⃣ Chrome DevTools Lighthouse
✓ Integrado en navegador
✓ Corre localmente, más control

3️⃣ WebPageTest
✓ Gratuito, muy detallado
✓ Múltiples locaciones

4️⃣ Unlighthouse
✓ Scanea 1000s URLs automáticamente

5️⃣ Real User Monitoring
✓ Datos reales de usuarios
✓ Google Analytics, Sentry

💎 CASO REAL: MEJORA DRAMÁTICA

ANTES (sitio Ecommerce Chile):
• LCP: 4.2 segundos
• CLS: 0.35
• INP: 280ms
• Lighthouse: 38
• Google Ranking: Posición 45-60

⚙️ Optimizaciones (20 horas trabajo):

1️⃣ Compresión WebP imágenes (2h)
2️⃣ Lazy load imágenes (1h)
3️⃣ Minify CSS/JS (2h)
4️⃣ Preload critical (1h)
5️⃣ Image dimensions (2h)
6️⃣ Font optimization (1h)
7️⃣ Code splitting (3h)
8️⃣ Debounce listeners (1h)
9️⃣ Reduce main thread (4h)

RESULTADO FINAL:

📊 Métricas:
• LCP: 1.8s (-57% mejora 🎉)
• CLS: 0.04 (-89% mejora 🎉)
• INP: 95ms (-66% mejora 🎉)
• Lighthouse: 92 (+54 puntos 🎉)
• Google Ranking: Posición 5-10 (después 2 meses)

💰 Impacto negocio:
• Ranking: +40-55 posiciones
• Traffic búsqueda: +40% en 2 meses
• Leads: +120/mes nuevos
• Conversión: +40% (mejor UX)

💵 Inversión vs ROI:
• Inversión: 2,000 USD (20 horas)
• ROI: +500 USD/mes ingresos
• Payback: 4 meses

✨ CONCLUSIÓN

🎯 Core Web Vitals no son complicadas

Son 3 métricas medibles

🚀 Mejora las 3 y tu ranking sube dramáticamente

Hazlo ahora

Top comments (0)