Mini-plan de esta fase
• Hacerte una guía 100% práctica, pensada para sitios con Elementor + LiteSpeed.
• Integrar mi experiencia real (hosting en Hostinger, plan de agencia, scripts propios y auditorías CWV).
• Dejarte checklists accionables por cada métrica: LCP, INP y CLS.
1) Auditoría exprés: mide antes de tocar (PSI, Lighthouse, GTmetrix, WebPageTest)
Antes de optimizar, necesito una foto “antes”. 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).
- En mi caso, si el cliente viene “muy rojo”, corro PSI y GTmetrix para detectar los “sospechosos habituales”: imágenes gigantes, JavaScript de terceros y TTFB alto.
- 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).
Tip rápido (lo aplico siempre): anota peso total (KB/MB), peticiones y TTFB. Con esto puedes celebrar victorias tempranas (por ejemplo, bajar de 2,2 MB a 900 KB y de 120 a 65 peticiones).
Umbrales de CWV (LCP/INP/CLS) y métricas de apoyo (TTFB/FCP/Speed Index/TBT)
- 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 y 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 Hostinger (plan profesional 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 (lo que realmente hago):
- 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.
En mi experiencia, solo con base + CDN + caché de servidor he visto pasar de PSI móvil 40 → 70–80 en 48 h, incluso antes de tocar Elementor.
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).
En mi caso, al reemplazar un slider por un hero fijo optimizado y pre-cargar la fuente principal, he reducido LCP entre 0,5 y 1,2 s en la home de clientes con Elementor.
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 preload coincida 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).
Lo que NO activo a la vez
- Combine CSS + UCSS (suele romper o quitar ventajas).
- Dos lazy load (del tema/Elementor y del plugin) → elige uno.
- Minificación en CDN y en LiteSpeed → duplicar trabajo y errores.
Con mis scripts personalizados, suelo diferir todo JS de terceros y bloquear su carga hasta interacción/consentimiento. Esto mejora INP y reduce TBT sin romper analíticas.
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.
En mi día a día, el simple cambio a WebP + lazy-load bien configurado suele recortar 400–900 KB por página. En móviles se nota muchísimo.
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.
En los proyectos que heredo, suelo eliminar un 20–30 % de plugins sin perder funcionalidad. Es el recorte de JS/CSS más barato que existe.
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 preconnect a 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, preload de la principal. - JS render-blocking: quítalo del above-the-fold (delay/defer).
“En mi caso, solo con hero optimizado + fuentes bien pre-cargadas, LCP suele caer 0,5–1,2 s.”
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/preconnect a orígenes críticos (CDN, fuentes).
“Con mis scripts bloqueo terceros hasta interacción/consentimiento. El INP mejora notablemente sin perder analítica.”
Playbook CLS (layout estable)
- Dimensiones en imágenes/iframes; placeholder con relación de aspecto correcta.
- Fuentes: usa font-metric override o
display: 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).
Yo cierro cada proyecto con un documento de mantenimiento: qué optimizaciones están activas, qué no tocar, y cómo validar cambios con un checklist.
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.
Preguntas frecuentes sobre la guía de mejora de rendimiento WordPress
¿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.
¿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.








