Guía práctica para acelerar WordPress: reduce LCP, INP y CLS con ajustes de hosting, Elementor y LiteSpeed. Checklists listos para aplicar.
1)Auditoría exprés: mide antes de tocar (PSI, Lighthouse, GTmetrix, WebPageTest)
Antes de optimizar, necesito una foto «antes». Es el mismo punto de partida de una auditoría web en condiciones: medir para saber qué tocar. Yo sigo este ritual rápido:
Entorno de prueba
- Móvil primero, red simulada 4G y sin sesión iniciada.
- Navegador limpio, modo incógnito, desactivo extensiones.
- Tres pasadas mínimas por herramienta para sacar un promedio (PSI, Lighthouse en Chrome, GTmetrix y WebPageTest).
Qué anoto en la línea base
- Core Web Vitals:
- LCP (Largest Contentful Paint) objetivo ≤ 2,5 s.
- INP (Interaction to Next Paint) objetivo ≤ 200 ms.
- CLS (Cumulative Layout Shift) objetivo ≤ 0,1.
- Apoyo: TTFB, FCP, Speed Index, TBT.
- Páginas clave: home, landing principal, post más leído y plantilla de producto si es tienda.
Mapa de calor del rendimiento
- Localizo el LCP real (suele ser la imagen hero o el H1 con fondo).
- Marco scripts de terceros (Analytics, chat, píxeles) y cuántos KB de JS/CSS cargan por página.
- En Elementor, reviso si hay secciones anidadas en exceso y widgets pesados (sliders, formularios complejos, mapas, icon libraries enteras).
Umbrales de CWV y métricas de apoyo
- LCP: impacta la sensación de «carga rápida». Ataca servidor, hero y CSS crítico.
- INP: mide interacción real; si el sitio «se traba» al hacer clic, INP se dispara. Culpa típica: JS pesado.
- CLS: saltos de diseño. Culpa típica: imágenes sin dimensiones, fuentes, banners e iframes sin reserva de espacio.
- TTFB: servidor, caché y CDN. FCP/Speed Index/TBT me ayudan a priorizar JavaScript y CSS.
Configurar pruebas: móvil primero y condiciones realistas
- Viewport tipo móvil (por ejemplo, 360 × 640), CPU throttling moderado.
- Red: 4G/rápida en PSI, «Good 4G» en WebPageTest.
- Si usas CDN, prueba desde ubicaciones cercanas al público objetivo (en España me voy a Dublín/Frankfurt).
- Repite tras cada bloque de cambios; si INP empeora al delay de JS, ajusta exclusiones.
2)Base sólida: hosting, PHP y servidor
Con una mala base no hay milagros. Yo trabajo con un hosting WordPress optimizado sobre Hostinger (plan de agencia) y, por 60 €/año, mis clientes suelen notar el salto solo con estos ajustes iniciales:
- PHP actualizado (8.2/8.3 estable) + OPcache activo.
- HTTP/3 + QUIC habilitado, TLS moderno y compresión Brotli/Gzip.
- LiteSpeed como servidor + LiteSpeed Cache (plugin) para caché a nivel servidor.
- DNS rápido (Cloudflare/Route 53) y, si procede, CDN con edge cercana a tu audiencia.
- Object Cache (Redis/Memcached) si tu plan lo soporta.
Mi checklist de arranque
- Subo de PHP 7.x a 8.x y reviso compatibilidades.
- En Hostinger habilito HTTP/3 y confirmo Keep-Alive.
- Activo OPcache y reviso límite de memoria.
- CDN (Cloudflare) con caché de estáticos agresiva y minificación desactivada en Cloudflare si la hago con LiteSpeed (evito duplicidades).
- TTFB: si parte de 800–1200 ms en móvil, tras CDN + caché bien puesta, mi objetivo es < 400–500 ms.
Reducir TTFB: DNS, CDN y caché de objeto
- DNS: usa un proveedor con baja latencia.
- CDN: activa caché de página y de imágenes cuando aplique; habilita HTTP/3 en el borde.
- Object Cache: con WordPress dinámico (tiendas, membresías) marca diferencia. Con Redis suelo bajar queries repetitivas y estabilizar tiempos.
3)Elementor sin fricción: lo que más ralentiza y cómo arreglarlo
Elementor es potente, pero permite «hacer de todo»… y eso pesa. Mis reglas de oro:
Arquitectura limpia
- Cambia secciones anidadas por Containers.
- Evita el slider en el hero: mejor imagen fija o vídeo poster + play bajo demanda.
- Reutiliza plantillas y limita librerías de iconos/tipografías.
Hero que vuela (LCP)
- Exporto la imagen hero a WebP/AVIF, recortada al tamaño real en móvil y desktop.
- Añade
preloaddel hero y de fuentes críticas. - Critical CSS para el above-the-fold (lo automatizo con LiteSpeed; luego corrijo exclusiones).
Fuentes
- Usa
display: swap, sub-conjuntos (latin, latin-ext) y evita cargar 5 pesos si solo usas 2. - Cuando busco el máximo rendimiento, tiro de sistema (Inter/System UI) o variable optimizada.
Widgets pesados
- Formularios: carga AJAX solo si hace falta, valida en servidor y evita reCAPTCHA v2 (prueba Turnstile o hCaptcha).
- Mapas/embeds: miniatura + click para cargar (lite-embeds).
Fuentes: preload, display-swap y subset
- Pre-carga una fuente por familia (la más usada en el above-the-fold).
- Usa
font-display: swap. - Crea subset (solo glifos necesarios).
- Revisa que el
preloadcoincida con el archivo realmente usado (peso y estilo).
Plantilla/tema predeterminado: ajustes finos
- Desactiva estilos globales que no uses.
- Quita JS/CSS de widgets no presentes en la página (hazlo con la optimización de LiteSpeed o con control de assets).
- Activa las opciones de carga optimizada que Elementor incorpora (experimentos de rendimiento).
4)Caché de verdad con LiteSpeed Cache
Lo que mejor me funciona (y lo que no conviene mezclar):
A) Caché (Settings → Cache)
- Enable Cache: ON
- Cache Mobile: ON (con device group si tu tema varía por dispositivo)
- TTL por defecto: OK (ajusto si hay contenido muy dinámico)
- Purge on Update: ON
- Browser Cache: ON
B) Object Cache
- Redis si está disponible; TTL 3600–7200 s; probar
WP_REDIS_MAXTTL. - No activo si el hosting no lo soporta bien (evita latencia añadida).
C) Page Optimization
- CSS: Minify ON, Combine OFF (no combino si uso UCSS).
- UCSS (Unused CSS): ON + Per-page si hay roturas.
- Critical CSS: ON (regenero tras grandes cambios).
- JS: Minify ON, Combine OFF, Delay JS ON con exclusiones:
jquery.js,elementorFrontend, menús críticos, carruseles above-the-fold. - HTML Minify: ON (si no rompe nada).
D) Media
- Lazy Load de imágenes ON con umbral (hero sin lazy).
- Conversión a WebP (o AVIF si estable).
- Responsive Placeholder para evitar CLS.
E) CDN
- Integra con Cloudflare (API) pero evita minificar en dos sitios. Minificación y combinación, en un solo layer (LiteSpeed o CDN, no ambos).
Critical CSS, UCSS y delay/defer de JS sin romper la web
- Genera Critical CSS global y revisa plantillas clave (home, post, producto).
- Si UCSS rompe estilos, añade exclusiones por selector.
- Con Delay JS, excluye lo imprescindible para el above-the-fold (menú, hero interactivo). Haz un «smoke test» visual tras limpiar cachés.
Caché de objeto (Redis/Memcached) y ESI
- ESI (Edge Side Includes) en LiteSpeed te permite no-cachear solo el trozo dinámico (por ejemplo, mini-carrito) manteniendo la página cacheada.
- Con tiendas y membresías, ESI + Object Cache suele estabilizar tanto TTFB como INP.
5)Medios optimizados: imágenes y vídeo
Imágenes (reglas cortas que aplico)
- Exporto WebP/AVIF con calidad 60–80; nada de PNG salvo logos/elementos con transparencia que lo necesiten.
- Tamaños responsivos: genero variantes y uso
srcset/sizes; evito subir a 3000 px si el contenedor es 1200 px. - Lazy-load en todo menos el hero; placeholder con proporción correcta para evitar CLS.
- CDN de imágenes si el proyecto lo justifica (transformaciones en el edge = menos CPU en el servidor).
Vídeo
- Evita autoplay/loop en el hero; usa miniatura + botón (carga bajo demanda).
- YouTube con lite-embed: iframe solo al hacer clic.
- Si el vídeo es vital, optimiza el poster y define dimensiones siempre.
6)Menos es más: plugins, scripts de terceros y bloat
Mi protocolo de «dieta de plugins»
- Inventario: lista de todos los plugins y por qué existen.
- Duplicidades: cache + optimización (quédate con LiteSpeed); varios constructores a la vez, fuera.
- Sustituciones: formularios más ligeros, galerías nativas, bloques cuando procede.
- Desinstalación limpia: borra datos residuales y cron jobs.
Terceros (Analytics, chat, ads, mapas, píxeles)
- Consentimiento primero: no cargues nada sin permiso (además de legal, mejora INP).
- Cargar al clic: chatbots y mapas, solo cuando el usuario los pide.
- Agrupa/pospone lo demás con Delay JS y
preconnecta los dominios clave.
CSS/JS por página
- Con Elementor y/o LiteSpeed, desactiva assets no usados en páginas concretas.
- Mide peso de JS: si pasas de 250–300 KB minificados en móvil, revisa librerías e iconos.
7)Checklist por métrica: LCP, INP y CLS
Playbook LCP (qué atacar primero)
- TTFB < 500 ms: base, CDN y caché listas.
- Hero optimizado: WebP/AVIF, tamaño correcto, sin lazy y con
preload. - Critical CSS: above-the-fold estable; UCSS para el resto.
- Fuentes:
display: swap,preloadde la principal. - JS render-blocking: quítalo del above-the-fold (delay/defer).
Playbook INP (interacción y JS)
- Delay JS a todo lo no crítico (terceros incluidos).
- Exclusiones mínimas: menú, carrusel visible, búsqueda.
- Reduce listeners pesados y evita bibliotecas duplicadas.
- Object Cache activo en sitios dinámicos.
prefetch/preconnecta orígenes críticos (CDN, fuentes).
Playbook CLS (layout estable)
- Dimensiones en imágenes/iframes; placeholder con relación de aspecto correcta.
- Fuentes: usa
font-metric overrideodisplay: swap. - Banners (cookies, barras): reserva espacio o muéstralos sobrepuestos sin empujar contenido.
- Ads/embeds: contenedores con altura fija o responsive bien calculada.
- Evita insertar elementos por encima del contenido ya renderizado.
8)Control de calidad continuo
- Budgets de rendimiento: por ejemplo, ≤ 1500 ms LCP en home móvil, ≤ 200 ms INP, ≤ 0,1 CLS, ≤ 1 MB de transferencia y ≤ 70 peticiones.
- Alertas: reviso PSI tras deployments y tengo una batería de pruebas semanales en GTmetrix/WebPageTest.
- Regresiones: si un editor añade un bloque pesado, la caché no lo arregla; detecta con comparativas (antes/después).
- Informe al cliente: incluyo capturas antes/después, nota de cambios y listado de tareas pendientes (p. ej., sustituir un chat invasivo por otro ligero).
Conclusión
Mejorar el rendimiento en WordPress no va de «instalar un plugin mágico»: es método. Mide (móvil primero), asegura base de servidor, doma Elementor, afina LiteSpeed, optimiza medios y pon a dieta plugins/terceros. Con esa secuencia he llevado sitios lentos y que no pasaban Core Web Vitals a verdes estables.
Si usas un hosting similar al mío (Hostinger, plan de agencia) y replicas la receta (HTTP/3, PHP 8.x, LiteSpeed + Redis, CDN y mis exclusiones JS), verás resultados reales y sostenibles.
Y si prefieres no pelearte con todo esto, es justo lo que hacemos en optimización de rendimiento web: te dejamos los Core Web Vitals en verde y tú a lo tuyo.
Quiero los Core Web Vitals en verde
Preguntas frecuentes
¿Qué toco primero si «todo está en rojo»?
Base (PHP/HTTP3/CDN), luego hero + fuentes y por último JS (delay + exclusiones). Esa trilogía suele tumbar LCP.
¿Necesito cambiar de hosting sí o sí?
Si TTFB es alto y no hay Redis/HTTP/3 estables, compensa migrar. No hay frontend que arregle un backend lento. Si dudas, repasa las 5 señales de que necesitas cambiar de hosting.
¿LiteSpeed o WP Rocket/otros?
Con servidor LiteSpeed, su plugin es lo más eficiente (caché a nivel servidor + UCSS/CCSS). Evita mezclar soluciones.
¿CDN gratis o de pago?
Depende del tráfico y orígenes. Si tu audiencia está repartida o usas muchas imágenes/vídeos, un CDN con transformaciones en el edge compensa.
¿Qué puntuación PSI debo perseguir?
No te obsesiones con el 100. Apunta a verde (CWV OK) y experiencia fluida. Un 85 con INP/LCP buenos es mejor que un 98 inestable.
