Shopify DOM tree depth and the Core Web Vitals
44.3% of audited sites (3,655) keep maximum DOM depth between 15 and 20 levels (100% good INP, 59ms median), while 49.2% nest 21 to 31 levels deep (99% good INP) and 1.6% reach 32+ levels (94% good INP).
4.9% of Shopify sites use under 15 DOM levels maximum DOM depth, and 100% of those sites have a good INP, against 99% of all Shopify sites.
INP pass rate
Sites with under 15 DOM levels maximum DOM depth have a good INP most often: 100%, against 99% of all Shopify sites. Sites with 21 to 31 DOM levels DOM depth have it least often, at 99%.
Maximum DOM depth usage
21 to 31 DOM levels is the most used: 49.2% of Shopify sites. Under 15 DOM levels is 4.9% of Shopify sites.
Maximum DOM depth per framework
On jQuery, 47% of sites use 15 to 20 DOM levels maximum DOM depth, and 99% of jQuery sites have a good INP, against 99% of all sites. On Vue, 53% of sites use 21 to 31 DOM levels, and 100% of Vue sites have a good INP.
DOM nesting depth or the framework
Does the framework explain the maximum DOM depth difference?
On jQuery, 100% of sites with under 15 DOM levels maximum DOM depth have a good INP, against 100% of jQuery sites with 21 to 31 DOM levels. Within jQuery, sites with under 15 DOM levels and 21 to 31 DOM levels have a good INP about equally often. On Vue, 100% of sites with 21 to 31 DOM levels maximum DOM depth have a good INP, against 100% of Vue sites with 15 to 20 DOM levels. Within Vue, sites with 21 to 31 DOM levels and 15 to 20 DOM levels have a good INP about equally often.
Why deeply nested wrapper chains slow down event bubbling and layout
Maximum DOM depth measures the longest chain of nested parent-child elements from the root html tag to the deepest leaf node. Across 3,655 sites (44.3%) at 15 to 20 levels, 100% achieve good INP (59ms median). Another 49.2% (4,053) nest 21 to 31 levels deep (99% good INP, 62ms median), while the 1.6% (134) exceeding 32 levels drop to 94% good INP (69ms median).
Understanding maximum DOM depth
Keep maximum DOM nesting depth below 20 levels by replacing nested flex/column wrapper divs with CSS Grid and using fragments in component frameworks so component boundaries do not emit extra DOM containers. Across all audited sites, 44.3% sit at 15 to 20 levels (100% good INP) and 1.6% exceed 32 levels (94% good INP).
By Arjen Karel · 8,246 crawled Shopify sites (3,818 with desktop Chrome field data, October 2026). How we measured.