Cómo optimizar la velocidad de WooCommerce: guía completa para una tienda online rápida
La velocidad de WooCommerce de tu tienda online no es un lujo: es un factor directo en tus ventas, en tu posición en Google y en la satisfacción de tus clientes. Un estudio de Google demuestra que el 53 % de los visitantes móviles abandona una tienda online que tarda más de 3 segundos en cargar. Cada segundo de retraso te cuesta de media un 7 % de conversión. Para una tienda online con una facturación mensual de 10.000 €, eso supone 700 € menos al mes por culpa de una web lenta.
En esta guía completa te llevamos paso a paso por todas las optimizaciones que mejoran drásticamente la velocidad de WooCommerce. Desde la configuración de LiteSpeed Cache y la caché de objetos con Redis hasta la optimización de imágenes, la limpieza de la base de datos y los ajustes de la CDN. Nada de consejos vagos, sino ajustes concretos, ejemplos de código y resultados medibles. Tanto si estás empezando con tu tienda online como si eres un desarrollador con experiencia, después de leer este artículo sabrás exactamente qué tienes que hacer.
En el hosting WooCommerce de Theory7 usamos LiteSpeed Enterprise con almacenamiento NVMe SSD y caché de objetos con Redis. Esa es la base. Pero incluso en el servidor más rápido hay optimizaciones que puedes aplicar tú mismo como propietario de la tienda online para sacar el máximo partido a tu hosting.
¿Por qué es crucial la velocidad en las tiendas online?
Antes de entrar en los detalles técnicos, es esencial entender por qué la velocidad de WooCommerce tiene tanto impacto. Se trata de tres factores medibles: conversión, posicionamiento SEO y experiencia de usuario.
Impacto en la conversión: cada segundo cuenta
La relación entre el tiempo de carga y la conversión se ha estudiado a fondo y las cifras son innegables. Amazon calculó que cada 100 milisegundos de retraso le cuestan un 1 % de sus ventas. Walmart informó de que cada segundo menos de tiempo de carga aumentaba la conversión un 2 %. Para una tienda online neerlandesa media rige la misma ley, aunque a menor escala.
| Tiempo de carga | Tasa de rebote | Impacto en la conversión | Pérdida de ventas (con 10k/mes) |
|---|---|---|---|
| 0-1 segundos | Línea base (9 %) | Óptimo | Ninguna |
| 1-2 segundos | +9% (18%) | -3 a -5 % | -300 a -500 € |
| 2-3 segundos | +32% (41%) | -7 a -12 % | -700 a -1200 € |
| 3-5 segundos | +90% (81%) | -15 a -25 % | -1500 a -2500 € |
| 5+ segundos | +123% (>90%) | -25 a -40 % | -2500 a -4000 € |
Como muestra la tabla, la diferencia entre una tienda online que carga en 1 segundo y otra que tarda 4 puede ser de miles de euros al mes. Optimizar la velocidad es, por tanto, una de las inversiones más rentables que puedes hacer en tu tienda online.
Posicionamiento en Google y Core Web Vitals
Desde la Page Experience Update, Google utiliza las Core Web Vitals como factor de posicionamiento oficial. Para las tiendas online hay tres métricas cruciales:
- LCP (Largest Contentful Paint): mide la rapidez con la que carga el elemento visible más grande. En las páginas de producto suele ser la imagen principal. Objetivo: menos de 2,5 segundos.
- INP (Interaction to Next Paint): mide la rapidez con la que tu web responde a la interacción del usuario. Piensa en hacer clic en «añadir al carrito» o en filtrar. Objetivo: menos de 200 ms.
- CLS (Cumulative Layout Shift): mide la estabilidad visual. Elementos que saltan por imágenes o anuncios que cargan tarde. Objetivo: menos de 0,1.
Una tienda online que obtiene una puntuación «buena» en las tres métricas consigue una ventaja de posicionamiento frente a los competidores que no la alcanzan. En el competitivo mercado del comercio electrónico, esto puede marcar la diferencia entre la página 1 y la página 2 de Google.
Experiencia de usuario y confianza
Una tienda online rápida resulta profesional y fiable. Los clientes que introducen los datos de su tarjeta de crédito online quieren tener la sensación de estar tratando con una empresa seria. Una web lenta y entrecortada provoca la sensación contraria. Este efecto es difícil de expresar en cifras, pero lo reconoce todo empresario de comercio electrónico: la confianza es la base de la venta online y la velocidad es un pilar de esa confianza.
Configurar LiteSpeed Cache para WooCommerce
LiteSpeed Cache es la solución de caché más potente para WooCommerce, siempre que esté bien configurada. El plugin se comunica directamente con el servidor web LiteSpeed Enterprise, de modo que la caché se aplica a nivel de servidor y no a nivel de aplicación. El resultado: cargas de página drásticamente más rápidas.
En el hosting WooCommerce de Theory7 LiteSpeed Enterprise viene de serie y puedes instalar y configurar el plugin LiteSpeed Cache al instante. A continuación encontrarás los ajustes óptimos específicos para WooCommerce.
Ajustes básicos de caché
Ve a LiteSpeed Cache > Cache en tu escritorio de WordPress y configura los siguientes ajustes:
| Ajuste | Valor recomendado | Explicación |
|---|---|---|
| Enable Cache | Activado | Activa toda la caché |
| Cache Logged-in Users | Desactivado | Los usuarios que han iniciado sesión ven contenido personal (carrito) |
| Cache Commenters | Desactivado | Evita problemas con los formularios de reseñas |
| Cache REST API | Activado | Acelera las llamadas a la API de WooCommerce |
| Cache Mobile | Desactivado (salvo que haya un tema aparte) | Los temas responsive sirven el mismo HTML |
| Private Cached URIs | /carrito, /mi-cuenta | Caché por usuario para páginas personales |
| Drop Query String | fbclid, gclid, utm_* | Evita entradas de caché independientes por cada parámetro de seguimiento |
Exclusiones de caché para WooCommerce
WooCommerce tiene páginas que nunca se deben almacenar en caché porque contienen contenido único para cada usuario. Añádelas en LiteSpeed Cache > Cache > Do Not Cache URIs:
/afrekenen/o/checkout/(la página de pago siempre tiene que ser en tiempo real)/winkelwagen/o/cart/(contenido único por sesión)/mijn-account/o/my-account/(datos personales y pedidos)?add-to-cart=*: añadir al carrito mediante un parámetro de URL/wc-api/*: endpoints de la API de WooCommerce para pagos
Además, tienes que excluir las siguientes cookies en Do Not Cache Cookies:
woocommerce_items_in_cartwoocommerce_cart_hashwp_woocommerce_session_*
ESI (Edge Side Includes) para bloques dinámicos
ESI es una potente función de LiteSpeed Cache que te permite mantener dinámicas partes de una página en caché. Es perfecta para WooCommerce: la página de producto puede almacenarse por completo en caché mientras el icono del carrito en la cabecera muestra en tiempo real el número correcto de productos.
Activa ESI en LiteSpeed Cache > ESI:
- Activa Enable ESI
- Activa Cache Admin Bar
- Activa Cache Cart Widget: es la clave para WooCommerce. El widget del carrito se trata como un bloque ESI independiente y se almacena en caché por sesión
Con ESI configurado, el resto de la página se sirve desde la rápida caché de página completa y solo el elemento del carrito se genera por usuario. Así obtienes lo mejor de los dos mundos: la velocidad de la caché completa con la funcionalidad de un carrito dinámico.
Caché de objetos con LiteSpeed Cache
LiteSpeed Cache también ofrece una caché de objetos integrada que funciona con Redis (más información en el siguiente capítulo). Ve a LiteSpeed Cache > Object y configura:
- Object Cache: Activado
- Method: Redis
- Host: 127.0.0.1 (o la ruta a tu socket de Redis)
- Port: 6379
- Persistent Connection: Activado
¿Cómo configurar la caché de objetos con Redis?
Redis es un almacén de datos en memoria que guarda en caché las consultas a la base de datos en la memoria RAM. Para WooCommerce esto es especialmente valioso porque cada visualización de página requiere decenas de consultas a la base de datos: información de producto, precios, niveles de stock, categorías, widgets, elementos de menú y datos de sesión. Redis intercepta todas estas consultas para que no tengan que ir cada vez a la base de datos MySQL.
Cómo funciona Redis en WooCommerce
Sin Redis, cada visualización de página transcurre así:
- El visitante abre la página de producto
- WordPress ejecuta 40-80 consultas a la base de datos
- MySQL procesa cada consulta (lee del disco o de su propia caché)
- Los resultados se devuelven a PHP
- PHP construye la página HTML
Con Redis, los pasos 2-4 se sustituyen por una única consulta rápida en la memoria. El resultado: el TTFB baja un 30-50 % en las páginas que no están en caché. Para los usuarios con sesión iniciada (que no reciben caché de página completa), la diferencia es aún mayor.
Configurar Redis en Theory7
En Theory7, Redis está disponible a partir del plan Basic. La configuración es sencilla:
- Redis ya está activado a nivel de servidor: no tienes que solicitar nada
- Instala y activa el plugin LiteSpeed Cache (si aún no lo has hecho)
- Ve a LiteSpeed Cache > Object Cache
- Establece el método en Redis y el host en
127.0.0.1 - Haz clic en Test Connection: deberías ver una marca de verificación verde
- Guarda los cambios y vacía la caché
Puedes comprobar que Redis está activo yendo en tu escritorio de WordPress a LiteSpeed Cache > Object. Allí verás estadísticas de aciertos y fallos de caché. Una instalación de Redis que funciona bien muestra una tasa de aciertos del 85 % o superior.
Optimización de Redis para WooCommerce
Por defecto Redis funciona bien, pero para las tiendas WooCommerce con mucho tráfico hay optimizaciones adicionales:
| Ajuste | Por defecto | Optimizado | Motivo |
|---|---|---|---|
| maxmemory | 64 MB | 128-256 MB | WooCommerce tiene más objetos que almacenar en caché |
| maxmemory-policy | noeviction | allkeys-lru | Elimina las claves menos usadas recientemente cuando la memoria está llena |
| TTL (duración de la caché) | 3600s | 7200s | Los datos de producto no cambian a menudo, una caché más larga es segura |
Si notas que la tasa de aciertos de Redis cae por debajo del 80 %, es probable que la memoria sea demasiado pequeña y que los objetos se eliminen demasiado rápido. En ese caso, ponte en contacto con tu proveedor de hosting para aumentar la memoria de Redis.
Optimizar las imágenes
Las imágenes suponen de media el 60-70 % del peso total de página de una tienda online WooCommerce. Una sola foto de producto sin optimizar puede pesar más que todo el HTML, CSS y JavaScript de tu página juntos. La optimización de imágenes es, por tanto, una de las mejoras con más impacto en la velocidad de WooCommerce que puedes llevar a cabo.
Formato WebP: más pequeño sin perder calidad
WebP es un formato de imagen moderno desarrollado por Google que pesa un 25-35 % menos que JPEG con la misma calidad visual. Para las fotos de producto esto significa imágenes más nítidas que cargan más rápido. Todos los navegadores modernos admiten WebP (Chrome, Firefox, Safari, Edge).
Con LiteSpeed Cache puedes activar WebP automáticamente:
- Ve a LiteSpeed Cache > Image Optimization
- Activa Auto Request Cron
- Activa Auto Pull Cron
- En la pestaña Image WebP Replacement: actívalo
- Haz clic en Send Optimization Request
LiteSpeed envía tus imágenes a sus propios servidores de optimización, las convierte a WebP y te las devuelve. Esto ocurre en segundo plano sin que tu web se vuelva lenta. Las imágenes originales se conservan como alternativa.
Dimensiones correctas para las imágenes de producto
WooCommerce genera automáticamente varios tamaños de cada imagen que subes. Configúralos en WooCommerce > Ajustes > Productos > Visualización:
| Tipo de imagen | Tamaño recomendado | Se usa en |
|---|---|---|
| Imagen de catálogo | 450 x 450 px | Página de la tienda, páginas de categoría |
| Imagen de producto individual | 800 x 800 px | Página de producto individual |
| Miniatura de producto | 150 x 150 px | Carrito, ventas cruzadas, miniaturas de galería |
Sube tus fotos de producto con un tamaño máximo de 1200 x 1200 píxeles. Las imágenes más grandes se reducen, pero el original sigue ocupando espacio de almacenamiento y la reducción consume tiempo de procesamiento. Para la compresión usa un nivel de calidad del 82-85 %: es el punto ideal en el que el ojo humano ya no ve diferencia, pero el tamaño del archivo es notablemente menor.
Lazy loading: carga lo que se ve
El lazy loading hace que las imágenes solo se carguen cuando entran en la zona visible de la pantalla (o cerca de ella). En una página de categoría con 24 productos, esto significa que solo las primeras 6-8 imágenes se cargan al instante. El resto llega cuando el visitante se desplaza hacia abajo.
LiteSpeed Cache ofrece un excelente lazy loading:
- Ve a LiteSpeed Cache > Page Optimization > Media Settings
- Activa Lazy Load Images
- Activa Basic Image Placeholder: muestra un fondo gris claro mientras se carga la imagen
- Activa Responsive Placeholder: evita los saltos de diseño (CLS) reservando el espacio adecuado
- Activa Lazy Load Iframes: para vídeos incrustados en las páginas de producto
Importante: excluye la imagen de producto superior (hero image) del lazy loading. Este elemento determina tu puntuación LCP y tiene que cargar lo más rápido posible. Puedes hacerlo añadiendo la clase CSS de tu hero image a Lazy Load Image Excludes.
Lista de comprobación de compresión para fotos de producto
Sigue estos pasos con cada foto de producto que subas:
- Haz la foto en alta resolución (mínimo 1200 x 1200 px)
- Edítala y recórtala al tamaño deseado
- Expórtala como JPEG con una calidad del 85 % o como PNG para imágenes con transparencia
- Comprímela con una herramienta como ShortPixel, Imagify o Squoosh (gratis online)
- Súbela a WordPress: LiteSpeed Cache crea automáticamente una versión WebP
- Comprueba que el tamaño del archivo se mantiene por debajo de 200 KB por imagen
Limpiar la base de datos
La base de datos de WordPress es el corazón de tu tienda online WooCommerce. Cada visualización de producto, cada pedido y cada cálculo de precio requiere consultas a la base de datos. Una base de datos hinchada y sin optimizar ralentiza todas estas operaciones. Tras meses o años de uso, la base de datos puede estar considerablemente llena de datos innecesarios.
Los mayores culpables
Los siguientes tipos de datos son las causas más habituales de una base de datos de WooCommerce lenta:
Revisiones de entradas
WordPress guarda por defecto cada cambio como una revisión independiente. Un producto que se ha editado 20 veces tiene 20 revisiones en la base de datos. Con 500 productos, son potencialmente 10.000 filas adicionales. Limita las revisiones añadiendo a tu wp-config.php la siguiente línea:
define('WP_POST_REVISIONS', 3);: conserva como máximo 3 revisiones por entrada/producto
Las revisiones antiguas existentes se eliminan con la siguiente consulta SQL (haz primero una copia de seguridad):
DELETE FROM wp_posts WHERE post_type = 'revision' AND post_date < DATE_SUB(NOW(), INTERVAL 30 DAY);
Transients caducados
Los transients son datos temporales que WordPress y los plugins guardan en la tabla wp_options. WooCommerce hace un uso intensivo de los transients para cachés de producto, datos de sesión y cálculos temporales. Los transients caducados no se limpian automáticamente y se acumulan.
DELETE FROM wp_options WHERE option_name LIKE '_transient_timeout_%' AND option_value < UNIX_TIMESTAMP();DELETE FROM wp_options WHERE option_name LIKE '_transient_%' AND option_name NOT LIKE '_transient_timeout_%' AND option_name IN (SELECT REPLACE(option_name, '_transient_timeout_', '_transient_') FROM (SELECT option_name FROM wp_options WHERE option_name LIKE '_transient_timeout_%' AND option_value < UNIX_TIMESTAMP()) AS expired);
Sesiones de WooCommerce caducadas
WooCommerce guarda las sesiones del carrito en la tabla wp_woocommerce_sessions. En las tiendas con mucho tráfico, esta tabla puede crecer rápidamente hasta decenas de miles de filas. Las sesiones caducadas no siempre se limpian correctamente:
DELETE FROM wp_woocommerce_sessions WHERE session_expiry < UNIX_TIMESTAMP();
La tabla wp_options: el cuello de botella oculto
La tabla wp_options es un cuello de botella oculto muy habitual. WordPress carga en cada visualización de página todas las filas con autoload = 'yes'. En una instalación típica de WooCommerce con 30 plugins puede haber cientos de opciones con autoload que se cargan en cada petición, aunque no hagan falta.
Comprueba el tamaño de tus datos con autoload:
SELECT SUM(LENGTH(option_value)) AS autoload_size FROM wp_options WHERE autoload = 'yes';
Si este número supera 1 MB, hace falta optimizar. Muchos plugins cargan toda su configuración como autoload aunque no es necesario. Puedes encontrar a los mayores culpables con:
SELECT option_name, LENGTH(option_value) AS size FROM wp_options WHERE autoload = 'yes' ORDER BY size DESC LIMIT 20;
Limpieza automatizada con WP-Optimize
Ejecutar consultas SQL a mano es propenso a errores. Es mejor usar un plugin como WP-Optimize para la limpieza automatizada:
- Instala y activa WP-Optimize
- Ve a WP-Optimize > Base de datos
- Selecciona: revisiones antiguas, auto-drafts, entradas eliminadas, comentarios de spam, transients caducados
- Haz clic en Run all selected optimizations
- En la pestaña Ajustes: programa una limpieza automática semanal
Acelerar la página de checkout
La página de checkout es el momento en que un visitante se convierte en cliente. Un checkout lento provoca el abandono del carrito, y eso supone una pérdida directa de ventas. De media, el 70 % de los compradores abandona su carrito, y un tiempo de carga lento es una de las razones más citadas.
Minimiza los plugins en el checkout
Muchos plugins de WordPress cargan su CSS y JavaScript en todas las páginas, también en el checkout. Esto es innecesario y perjudicial. Usa un plugin como Asset CleanUp o Perfmatters para decidir por página qué scripts se cargan:
- Desactiva los plugins de formularios de contacto en el checkout (Contact Form 7, WPForms)
- Desactiva los widgets de redes sociales y los botones para compartir
- Desactiva los sliders y los scripts de animación
- Desactiva los scripts de analítica que no sean esenciales para el seguimiento de conversiones
- Desactiva los widgets de chat (o cárgalos solo después de 5 segundos mediante defer)
El objetivo: que la página de checkout cargue solo el núcleo de WooCommerce, tu tema, el proveedor de pagos y el seguimiento esencial. Nada más.
Pago directo: menos pasos, conversión más rápida
Cuantos más pasos y cargas de página requiere tu checkout, más oportunidades hay de perder clientes. Optimiza el proceso de pago:
- Checkout de una sola página: usa un plugin como CheckoutWC o activa el WooCommerce Block Checkout, que lo muestra todo en una página
- Métodos de pago exprés: Apple Pay, Google Pay e iDEAL directo reducen drásticamente el número de clics
- Compra como invitado: no obligues a crear una cuenta para hacer un pedido. Ofrécela como opción después de pagar
- Autocompletado de direcciones: usa PostcodeAPI o Google Places Autocomplete para que los clientes solo introduzcan su código postal y el número de casa
Prefetching de recursos del checkout
Puedes hacer que el navegador obtenga de antemano los recursos que se necesitan en el checkout. Añade este código al functions.php de tu tema o mediante un plugin de code snippets:
- Añade
dns-prefetchpara tu proveedor de pagos (p. ej. Mollie, Stripe, MultiSafepay) - Añade
preconnectpara los dominios externos que se usan en el checkout - En la página del carrito: añade
prefetchpara el CSS y el JS de la página de checkout
Así, las conexiones con los servicios externos ya están establecidas antes de que el cliente haga clic en «pagar», lo que reduce de forma notable el tiempo de carga percibido del checkout.
Configurar la CDN con QUIC.cloud
Una CDN (Content Delivery Network) distribuye tus archivos estáticos por servidores de todo el mundo. Para las tiendas online neerlandesas con tráfico principalmente neerlandés, el efecto sobre el tiempo de carga es más limitado que para las tiendas internacionales, pero hay otras ventajas que hacen que merezca la pena.
Por qué QUIC.cloud para el hosting LiteSpeed
QUIC.cloud es la CDN desarrollada específicamente para servidores LiteSpeed. Se distingue de las CDN genéricas como Cloudflare en un punto crucial: también puede almacenar en caché y optimizar contenido dinámico. Para WooCommerce esto significa que incluso las páginas que no están en caché se sirven más rápido.
Ventajas de QUIC.cloud para WooCommerce:
- Caché de página dinámica: almacena en caché las páginas de producto a nivel de CDN, incluida la compatibilidad con ESI para los carritos
- Optimización de imágenes: convierte y comprime las imágenes al vuelo a WebP
- Optimización de CSS/JS: minifica y combina archivos a nivel de CDN
- Protocolo QUIC: conexiones que se establecen más rápido que con el TCP tradicional, algo que se nota sobre todo en el móvil
- Protección contra DDoS: protege tu tienda online contra ataques
Configurar QUIC.cloud desde LiteSpeed Cache
La configuración se realiza por completo desde el plugin LiteSpeed Cache:
- Ve a LiteSpeed Cache > CDN
- Haz clic en QUIC.cloud y crea una cuenta gratis (o inicia sesión)
- Vincula tu dominio: QUIC.cloud genera una API key
- Introduce la API key en LiteSpeed Cache > General > Domain Key
- Activa CDN
- Configura el CDN Mapping: añade tus carpetas de archivos estáticos (wp-content/uploads, wp-includes)
QUIC.cloud ofrece un nivel gratuito que es suficiente para la mayoría de las tiendas online pequeñas y medianas. Para las tiendas con mucho tráfico hay planes de pago con más ancho de banda y funciones avanzadas.
Core Web Vitals para tiendas online
Las Core Web Vitals no son iguales para todas las webs. Las tiendas online tienen retos específicos que un blog o una web corporativa no tiene. Aquí tratamos las tres métricas desde la perspectiva de WooCommerce y cómo optimizarlas.
LCP (Largest Contentful Paint) en las páginas de producto
En una página de producto, el elemento LCP es casi siempre la imagen principal del producto. Optimízala así:
- Sin lazy loading en la imagen principal: es el elemento LCP y tiene que cargar al instante
- Añade un preload hint para la imagen del producto. Esto le dice al navegador que obtenga la imagen con prioridad
- Sirve las dimensiones correctas: una foto de 3000 px de ancho que se muestra a 800 px desperdicia ancho de banda
- Usa WebP o AVIF: los archivos más pequeños cargan más rápido
- Evita las imágenes de fondo CSS para los productos: el navegador las descubre más tarde que las etiquetas img normales
En las páginas de categoría, el elemento LCP suele ser la primera imagen de producto de la cuadrícula o un banner de categoría. Asegúrate de que este elemento no tenga lazy loading y pueda cargar lo más rápido posible.
INP (Interaction to Next Paint) en los elementos interactivos
INP mide la rapidez con la que tu web responde a la interacción. En WooCommerce, las interacciones críticas son:
| Interacción | Problema habitual | Solución |
|---|---|---|
| Añadir al carrito | Bloqueo de JavaScript por scripts pesados | Aplaza con defer el JS no esencial y usa el add-to-cart AJAX nativo |
| Filtros de producto | La página completa se recarga al filtrar | Filtros basados en AJAX (como FacetWP) |
| Selección de variación | Todas las variaciones se cargan como JSON | Limita las variaciones o usa variaciones cargadas por AJAX |
| Búsqueda | Consultas lentas a la base de datos en la búsqueda en vivo | Elasticsearch o Algolia para búsqueda instantánea |
| Formulario de checkout | La validación bloquea la interacción | Validación asíncrona, debounce de los input events |
Las mayores mejoras de INP se consiguen aplazando el JavaScript pesado. Ve a LiteSpeed Cache > Page Optimization > JS Settings y activa JS Defer. Así los archivos JavaScript no se ejecutan hasta que la página se ha renderizado.
Evitar el CLS (Cumulative Layout Shift)
Los saltos de diseño son especialmente molestos en las tiendas online. Imagina: un cliente quiere hacer clic en «añadir al carrito», pero en ese momento un elemento se desplaza hacia abajo por una imagen o un anuncio que carga tarde, y el cliente hace clic por error en otro sitio. Frustrante y malo para tu conversión.
Evita el CLS en WooCommerce:
- Define las dimensiones de todas las imágenes: asegúrate de que los atributos width y height estén presentes en cada etiqueta img
- Reserva espacio para las miniaturas de producto: usa aspect-ratio en CSS para tu cuadrícula de productos
- Carga las fuentes en local: las web fonts que se cargan desde Google Fonts provocan un flash of unstyled text. Usa una herramienta como OMGF para alojar Google Fonts en local
- Evita los scripts inyectados por encima del pliegue: los anuncios, los widgets de reseñas y los popups de prueba social tienen que cargar por debajo del pliegue o tras una interacción
- Establece min-height en los elementos dinámicos: secciones de reseñas, productos relacionados y bloques de upsell
El hosting como base de la velocidad
Todas las optimizaciones que hemos tratado hasta ahora (caché, Redis, imágenes, limpieza de la base de datos) son valiosas y necesarias. Pero tienen una limitación común: no pueden compensar una base lenta. Si tu hosting es lento, estás construyendo sobre arenas movedizas.
Por qué toda optimización falla con un hosting lento
Supón que tu hosting tiene un TTFB de 800 ms. Eso significa que el servidor necesita 800 ms para enviar siquiera el primer byte al navegador. Ninguna optimización de frontend puede recuperar esos 800 ms. En un buen hosting con LiteSpeed y NVMe SSD, ese TTFB es de 80-150 ms: una diferencia de más de medio segundo antes de que el navegador haya empezado siquiera a renderizar.
La misma lógica vale para las consultas a la base de datos. Si tu servidor MySQL funciona en un servidor compartido sobrecargado con almacenamiento HDD, cada consulta tarda más. Redis puede almacenar en caché las consultas más usadas, pero una caché fría o una consulta compleja de WooCommerce (por ejemplo, al filtrar 5000 productos) tiene que ir igualmente a la base de datos. En NVMe SSD, esa consulta es 10-35 veces más rápida que en HDD.
Qué diferencia al hosting WooCommerce del hosting convencional
No todo el hosting es adecuado para WooCommerce. Una tienda online tiene exigencias distintas a las de un blog o una web corporativa:
| Característica | Blog/web corporativa | Tienda online WooCommerce |
|---|---|---|
| Intensidad de base de datos | Baja (10-20 consultas/página) | Alta (40-100 consultas/página) |
| Contenido dinámico | Poco (la mayor parte se puede almacenar en caché) | Mucho (carrito, precios, stock) |
| Picos de carga | Progresivos | Picos extremos (rebajas, festivos) |
| Memoria PHP necesaria | 128 MB suficientes | Se recomiendan 256-512 MB |
| Cron jobs | Mínimos | Intensivos (sincronización de stock, actualizaciones de precios, correos) |
| Rendimiento de SSL | Importante | Crítico (seguridad del checkout, confianza del cliente) |
Por eso mismo el hosting WooCommerce de Theory7 está optimizado para estas exigencias específicas. LiteSpeed Enterprise con LSAPI procesa las peticiones PHP hasta 6 veces más rápido que Apache. El almacenamiento NVMe SSD aporta las IOPS que WooCommerce necesita para todas esas consultas a la base de datos. La caché de objetos con Redis intercepta las consultas repetidas. Y HTTP/3 con QUIC permite establecer las conexiones más rápido, algo especialmente importante para los compradores desde el móvil.
Elegir el hosting adecuado para tu tienda online
No todas las tiendas online necesitan el mismo hosting. Ten en cuenta los siguientes factores al elegir:
- Número de productos: hasta 500 productos, basta con un hosting compartido. De 500 a 5000 productos, plantéate un plan compartido potente o un VPS. Más de 5000 productos: se recomienda un VPS o un servidor dedicado.
- Tráfico esperado: hasta 50.000 visitantes al mes, hosting compartido. De 50.000 a 200.000: un VPS. Más: servidor dedicado o hosting cloud.
- Planes de crecimiento: no empieces demasiado pequeño si esperas crecer rápido. Migrar siempre es un riesgo y lleva tiempo.
- Conocimientos técnicos: el hosting gestionado (como el de Theory7) significa que el servidor se administra y se optimiza por ti. El hosting no gestionado es más barato, pero exige conocimientos técnicos.
Una buena regla general: invierte como mínimo el 5-10 % de la facturación mensual de tu tienda online en hosting. Una tienda online que factura 5000 € al mes puede funcionar perfectamente en un hosting WordPress de un proveedor de calidad. A partir de 20.000 € al mes, merece la pena plantearse un VPS o un nivel superior.
Plan de acción paso a paso
Hemos tratado muchas cosas en este artículo. Aquí tienes un plan de acción concreto que puedes empezar hoy. Completa los pasos en orden: cada paso se basa en el anterior.
Semana 1: medir y sentar las bases
- Mide tu velocidad actual con Google PageSpeed Insights y GTmetrix (anota todas las puntuaciones)
- Comprueba tu versión de PHP y actualiza a la 8.2 o a la 8.3
- Instala y configura LiteSpeed Cache con los ajustes de WooCommerce de este artículo
- Activa la caché de objetos con Redis
- Vuelve a medir y compara
Semana 2: imágenes y base de datos
- Activa la conversión a WebP mediante LiteSpeed Cache Image Optimization
- Configura el lazy loading (excluyendo las hero images)
- Revisa las dimensiones de tus imágenes de producto y ajústalas
- Realiza una limpieza de la base de datos con WP-Optimize
- Programa una limpieza automática semanal
Semana 3: checkout y frontend
- Audita qué scripts se cargan en el checkout y desactiva los innecesarios
- Activa JS Defer y CSS minification en LiteSpeed Cache
- Configura la optimización de fuentes (alojar Google Fonts en local)
- Prueba tus Core Web Vitals y soluciona los posibles problemas de CLS
- Plantéate activar la CDN de QUIC.cloud
Semana 4: ajuste fino y monitorización
- Realiza una prueba de velocidad completa y compárala con tu línea base de la semana 1
- Configura la monitorización de la disponibilidad para que te avisen si hay problemas
- Configura la monitorización con Google Search Console (informe de Core Web Vitals)
- Documenta tu configuración para poder volver atrás rápidamente si surgen problemas
Si sigues este plan de acción, tendrás al cabo de 4 semanas una tienda online notablemente más rápida. La mayoría de las tiendas WooCommerce ven una mejora del 40-70 % en el tiempo de carga tras aplicar estas optimizaciones. Y eso se traduce directamente en mejores posiciones en Google, mayor conversión y más ventas.
¿Quieres empezar ya con una base rápida? Consulta nuestra guía sobre hosting WooCommerce rápido o descubre qué puede aportar el hosting WooCommerce gestionado a tu tienda online. Un servidor optimizado combinado con los consejos de este artículo le da a tu tienda online la base más rápida que existe.
Preguntas frecuentes sobre la velocidad de WooCommerce
¿Con qué rapidez debe cargar una tienda online WooCommerce?
Una tienda online WooCommerce debería cargar por completo, idealmente, en 2 segundos. El TTFB (Time to First Byte) debería estar por debajo de 200 ms. Cada segundo extra de tiempo de carga te cuesta de media un 7 % de conversión. Además, Google recompensa a las tiendas online rápidas con una mejor posición en los resultados de búsqueda.
¿Qué plugin de caché es el mejor para WooCommerce?
LiteSpeed Cache es el mejor plugin de caché para WooCommerce si tu hosting funciona con LiteSpeed. El plugin se comunica directamente con el servidor web y es compatible con ESI (Edge Side Includes), con lo que puedes almacenar en caché elementos dinámicos como los carritos. Para un hosting que no sea LiteSpeed, WP Rocket o W3 Total Cache son buenas alternativas.
¿Qué es la caché de objetos con Redis y por qué es importante para WooCommerce?
Redis es una base de datos en memoria que guarda en caché, en la memoria RAM, las consultas más utilizadas a la base de datos. WooCommerce ejecuta decenas de consultas a la base de datos en cada visualización de página para productos, precios, stock y sesiones. Redis las intercepta para que no haya que volver a leerlas una y otra vez de la base de datos. Esto reduce el TTFB un 30-50 %.
¿Cuánto más rápida será mi tienda online al optimizar las imágenes?
Las imágenes suponen de media el 60-70 % del peso total de página de una tienda online WooCommerce. Al pasar al formato WebP, activar el lazy loading y usar las dimensiones correctas, puedes reducir el peso de página un 50-80 %. Esto se traduce en tiempos de carga 1-3 segundos más rápidos.
¿Con qué frecuencia debo limpiar la base de datos de WooCommerce?
Programa una limpieza automática semanal de la base de datos con WP-Optimize o una herramienta similar. Elimina los transients caducados, las revisiones antiguas, los comentarios de spam y las sesiones caducadas. Para las tiendas con mucho tráfico y más de 100 pedidos al día, se recomienda una limpieza diaria. Una base de datos limpia se nota al instante en tiempos de carga más rápidos.
Fuentes y referencias
- Google PageSpeed Insights (pagespeed.web.dev)
- WooCommerce: documentación oficial (woocommerce.com)
- Cloudflare: Learning Center (cloudflare.com/learning)
- GTmetrix: Website Performance Testing (gtmetrix.com)