Solución rápida con Thunder
DOM size is partly a design and theme-code issue, so no speed app should silently delete markup from your store. Thunder’s role is different: it defers app scripts, reduces render-blocking work, and helps the browser get to useful content faster even when your theme still has too much HTML.
Utilice Thunder primero para eliminar el mayor cuello de botella de JavaScript y luego utilice esta guía para reducir el HTML. Si PageSpeed también muestra un tiempo total de bloqueo alto, lea nuestras guías en impacto de secuencias de comandos de terceros y Correcciones de Shopify INP.
Instalar TruenoQué significa PageSpeed con tamaño DOM excesivo
El DOM es el modelo en vivo de su HTML en el navegador. Cada sección, tarjeta de producto, elemento de menú, insignia de aplicación, contenedor de ventana emergente y plantilla oculta se convierte en un nodo que el navegador debe analizar, diseñar, diseñar y, a veces, actualizar con JavaScript.
La guía Lighthouse de Google comúnmente señala tres umbrales: más de 1500 nodos DOM en total, una profundidad máxima mayor que 32 elementos anidados, o un padre con más de 60 elementos secundarios. Shopify Community threads are full of merchants seeing 3,000, 5,000, or even 7,000+ elements and asking whether they need a Shopify expert. The honest answer: sometimes yes, but you can remove a surprising amount from the theme editor first.
Un DOM grande no siempre perjudica a LCP directamente, pero hace que el navegador sea más lento en todo lo relacionado con LCP: cálculo de estilo, diseño, consultas de JavaScript, delegación de eventos y representación de interacciones. Es por eso que la hinchazón DOM a menudo aparece junto a minimizar el trabajo del hilo principal, Ejecución de JavaScripty advertencias INP.
Las causas específicas de Shopify
Salida del generador de páginas
Los constructores a menudo envuelven cada bloque visual en varios divs anidados para editar controles, reglas responsivas, animaciones y secciones reutilizables. Una página de destino breve puede convertirse en miles de nodos.
Enormes rejillas de recolección
Mostrar de 48 a 96 productos en la primera carga crea envoltorios de imágenes, bloques de precios, insignias, muestras, formularios y controles de adición rápida para cada producto.
Mega menús
Los menús de escritorio y móviles a menudo se representan dos veces y luego se ocultan con CSS. Agregue promociones de imágenes y colecciones anidadas y su encabezado por sí solo puede superar cientos de nodos.
Widgets de aplicaciones
Las reseñas, paquetes, suscripciones, ventanas emergentes, herramientas de fidelización y aplicaciones de chat inyectan contenedores y plantillas ocultas. Las aplicaciones desinstaladas pueden dejar atrás fragmentos antiguos.
Paso 1: Mida el DOM antes de editar
Abra la página, luego ejecute esto en Chrome DevTools Console:
document.querySelectorAll('*').longitud Luego inspecciona las secciones más grandes. PageSpeed te dice los totales, pero DevTools te dice dónde vive la hinchazón. Utilice el panel Elementos, contraiga las secciones y cuente los infractores obvios: cuadrículas de productos, mega menús, bloques de creación de páginas y raíces de aplicaciones inyectadas. Combina esto con nuestro Lista de verificación de auditoría de velocidad de Shopify para que no corrija el tamaño del DOM y se pierdan problemas de secuencias de comandos más importantes.
Paso 2: Limitar las cuadrículas de recopilación y resultados de búsqueda
Las páginas de colección son la forma más rápida de crear un DOM grande. Una ficha de producto rara vez es un elemento. Puede incluir dos imágenes, proveedor, título, precio, precio de comparación, insignia de oferta, muestras de color, formulario de adición rápida, botón de lista de deseos, estrellas de reseña y contenedores de aplicaciones.
En una plantilla de colección, reduzca el tamaño de paginación inicial:
{% paginate collection.products by 24 %}
{% for product in collection.products %}
{% render 'card-product', product: product %}
{% endfor %}
{% endpaginate %} Para la mayoría de las tiendas, de 16 a 24 productos por página es suficiente. Si usa desplazamiento infinito, muestre solo la primera página y busque el resto después de la interacción. Nuestro guía de velocidad de la página de colección cubre esto con más detalle.
Paso 3: Eliminar marcas duplicadas en dispositivos móviles y de escritorio
Muchos temas muestran dos versiones completas del mismo contenido: un bloque de escritorio y un bloque móvil, y luego ocultan uno con CSS. El visitante ve una versión, pero el navegador aún analiza ambas.
{%- comment -%}Avoid this pattern when the content is identical{%- endcomment -%}
<div class="hidden md:block">{% render 'mega-menu-desktop' %}</div>
<div class="md:hidden">{% render 'mega-menu-mobile' %}</div>
{%- comment -%}Prefer one semantic menu and change layout with CSS{%- endcomment -%}
<nav class="site-menu">
{% render 'menu-items', menu: section.settings.menu %}
</nav> Haz esto con cuidado. Algunos menús móviles necesitan un comportamiento diferente, pero los carruseles de productos duplicados, las barras de anuncios duplicados y los árboles de menús duplicados suelen ser fáciles de conseguir.
Paso 4: Auditar aplicaciones incrustadas y fragmentos huérfanos
In Shopify Admin, go to Online Store -> Themes -> Customize -> La aplicación se integra. Deshabilite todo lo que no necesite cargarse en cada página. Luego busque en los archivos de su tema nombres de aplicaciones, dominios de secuencias de comandos y fragmentos antiguos. Las aplicaciones eliminadas hace meses pueden dejar envoltorios tema.liquido o plantillas de productos.
Si aún se necesita una aplicación, cárguela solo donde sea importante. Un widget de revisión pertenece a las páginas de productos, no a las páginas de políticas. Un widget de paquete pertenece cerca de las secciones de compra, no de todas las tarjetas de colección. Para conocer el impacto en la velocidad de la aplicación, compare su pila con nuestra investigación sobre el impacto en la velocidad de la aplicación y aplicaciones que ralentizan las tiendas Shopify.
Solución manual frente a solución Thunder
| Problema | Corrección manual | Solución de trueno |
|---|---|---|
| Demasiadas secciones temáticas | Eliminar o consolidar secciones en el editor | No se elimina automáticamente; Thunder mantiene los guiones restantes más ligeros |
| Marcado inyectado en la aplicación | Deshabilitar aplicaciones incrustadas y eliminar fragmentos | Pospone los scripts de las aplicaciones para que los widgets realicen menos trabajo de bloqueo |
| Enormes cuadrículas de productos | Limitar la paginación a 16-24 productos | Optimiza la carga de imágenes y scripts alrededor de la cuadrícula |
| High INP/TBT from large DOM | Reducir nodos y reescribir controladores de eventos | Aplaza JavaScript no crítico automáticamente |
El orden de prioridad práctico
- Ejecutar una prueba de velocidad y PageSpeed Insights en su plantilla de mayor tráfico.
- Instale Thunder o posponga manualmente los scripts no críticos si JavaScript también está bloqueando el hilo principal.
- Reduzca las cuadrículas de colección a entre 16 y 24 productos por página inicial.
- Eliminar contenido duplicado oculto en dispositivos móviles/escritorio.
- Deshabilite las aplicaciones incrustadas no utilizadas y elimine los fragmentos de aplicaciones huérfanas.
- Simplifica los mega menús y las secciones del creador de páginas.
- Vuelva a realizar la prueba con la misma URL y compare los nodos DOM, TBT, INP y LCP.
Si necesita un plan más amplio, utilice nuestro guía completa de optimización de velocidad de Shopify. Para conocer las advertencias de PageSpeed relacionadas, consulte las guías para reducir el tiempo total de bloqueo de Shopify, arreglar las cadenas de solicitudes críticas de Shopify, y reducir las cargas útiles de la red Shopify. Para una limpieza práctica, nuestro Servicio de optimización de velocidad de Shopify puede manejar correcciones a nivel de tema de forma segura.
Referencias y Validación
Para el diagnóstico subyacente, compare su informe con Guía de tamaño DOM de Chrome Lighthouse. Los umbrales no son arbitrarios; reflejan la memoria adicional, el cálculo de estilo y el costo de diseño que asume el navegador cuando una página crece demasiado.
Shopify Community threads on DOM size usually come down to the same pattern: merchants see a scary PageSpeed number, then discover that the actual cause is a pile-up of sections, app embeds, duplicated menus, and collection cards. Treat the warning as a cleanup map, not as proof that Shopify itself is broken. The winning move is to reduce markup where it changes nothing for the customer, then use Thunder to keep the remaining app JavaScript from blocking the page.
Done For You
Core Web Vitals guarantee · 2-week delivery · 6 months Thunder free
Get Expert Optimization →Starting from €1,500
FAQ
¿Qué significa un tamaño DOM excesivo en Shopify?
Un tamaño DOM excesivo significa que el navegador tiene que analizar, diseñar y administrar demasiados elementos HTML en la página. PageSpeed Insights comúnmente marca páginas con más de 1500 nodos, una profundidad DOM de más de 32 niveles o un elemento principal con más de 60 nodos secundarios.
¿El tamaño excesivo de DOM perjudica a Core Web Vitals?
Sí. Un DOM grande aumenta el cálculo de estilo, el trabajo de diseño, el uso de memoria y el tiempo de consulta de JavaScript. Eso puede empeorar el INP, el tiempo total de bloqueo y, a veces, el LCP cuando el navegador pasa demasiado tiempo creando la página antes de que se pueda representar el elemento más grande.
¿Puede Thunder reducir el tamaño de mi DOM de Shopify automáticamente?
Thunder no elimina secciones de temas ni marcas de aplicaciones porque eso puede cambiar el diseño de su tienda. Reduce JavaScript y la presión de renderizado en torno a un DOM grande al posponer scripts no críticos y priorizar recursos importantes.
¿Cuál es un buen tamaño de DOM para Shopify?
Trate de mantenerse por debajo de 1500 nodos en total en páginas de destino y páginas de productos importantes. Las tiendas Shopify con un rico merchandising pueden subir más, pero las páginas con más de 3000 a 5000 nodos generalmente necesitan limpieza de secciones, menús, aplicaciones o colecciones.
¿Las aplicaciones de Shopify aumentan el tamaño del DOM?
Sí. Los widgets de reseñas, los creadores de páginas, las ventas adicionales, los paquetes, las herramientas de chat, las ventanas emergentes y las aplicaciones de recomendación a menudo inyectan contenedores, plantillas, insignias y etiquetas administradas mediante scripts ocultos. Las aplicaciones desinstaladas también pueden dejar fragmentos antiguos en los archivos de temas.
¿Debería contratar a un desarrollador por un tamaño DOM excesivo?
If the issue comes from obvious page sections or huge menus, you can often fix it in the theme editor. If it comes from app snippets, deeply nested Liquid, or page builder output, a Shopify developer can remove markup more safely.