CMS performance

How the most-used CMS platforms perform on real-user Core Web Vitals data.

Field data PhoneDesktopAll Scope All sites October 2026 edition · Phone field outcomes
Metric LCP INP CLS FCP TTFB
1

At a glance the headline numbers for CMS performance

How the most-used CMS platforms perform on real-user Core Web Vitals data.

95.7%
Best: Shopify
good TTFB
64.4%
Typical CMS
good TTFB
32.2%
Worst: WordPress
good TTFB

Shopify passes TTFB most often of any CMS. 95.7% of its sites pass. WordPress (the most-used CMS) passes least at 32.2%. The gap is 64 percentage points.

The State of Web Vitals · October 2026 · 212,308 crawled sites · phone field datacorewebvitals.io/state-of-cwv
2

The ranking sorted by TTFB at p75, fastest first

# CMS TTFB p75 Passing Sites
1 Shopify 523ms 95.7%
8,636
2 Squarespace 573ms 93.0%
2,277
3 Wix 582ms 85.8%
5,875
4 TYPO3 838ms 72.0%
104
5 Drupal 978ms 64.4%
3,387
6 Joomla 1.1s 54.0%
2,573
7 Adobe Commerce 1.5s 29.8%
1,103
8 WordPress 1.8s 32.2%
65,939
The State of Web Vitals · October 2026 · 212,308 crawled sites · phone field datacorewebvitals.io/state-of-cwv
3

Passing TTFB per CMS which group passes the TTFB most often

CMSSitesPassing TTFBp75
Shopify 4.1% 8,636 96% 523ms
Squarespace 1.1% 2,277 93% 573ms
Webflow 0% 20 89% 505ms
Wix 2.8% 5,875 86% 582ms
Ghost 0% 46 83% 609ms
TYPO3 0% 104 72% 838ms
Drupal 1.6% 3,387 64% 978ms
Joomla 1.2% 2,573 54% 1.1s
Other / custom 0% 16 43% 938ms
WordPress 31.1% 65,939 32% 1.8s
Adobe Commerce 0.5% 1,103 30% 1.5s
Good Needs Improvement Poor Sorted best-passing first · median colored by its own rating · pass = good TTFB (800ms at p75) · one value per site

96% of Shopify sites pass TTFB. Adobe Commerce trails 66 points behind, leaving 70% of its sites failing. computed

The State of Web Vitals · October 2026 · 212,308 crawled sites · phone field datacorewebvitals.io/state-of-cwv
4

All five vitals at once the whole category without toggling - cell is the pass rate, small number the p75

LCP
INP
CLS
FCP
TTFB
WordPress 31.1%
702.7s
97118ms
910.01
582.3s
321.8s
Shopify 4.1%
951.7s
93140ms
940.01
951.2s
96523ms
Wix 2.8%
941.6s
9696ms
980.00
931.1s
86582ms
Drupal 1.6%
901.9s
94128ms
910.02
821.6s
64978ms
Joomla 1.2%
882.0s
95104ms
930.00
791.7s
541.1s
Squarespace 1.1%
872.1s
98105ms
910.02
831.6s
93573ms
Adobe Commerce 0.5%
772.4s
95137ms
790.08
672.0s
301.5s
TYPO3 0%
961.5s
89104ms
960.01
911.2s
72838ms
Ghost 0%
961.5s
93104ms
850.08
961.2s
83609ms
Webflow 0%
1001.6s
10098ms
1000.00
1001.0s
89505ms
Other / custom 0%
732.5s
91147ms
670.14
801.6s
43938ms
60%95%+ passing Cell: pass rate, small number = p75 · faded rows: under 100 sites

One row per CMS, one column per vital - the cell is the share of sites passing, the small number the p75. No toggling needed to see where the category actually differs.

Shopify leads on TTFB: 96% of its sites pass. Adobe Commerce trails at 30%. computed

The State of Web Vitals · October 2026 · 212,308 crawled sites · phone field datacorewebvitals.io/state-of-cwv
5

Why this matters for the Core Web Vitals, and where to start fixing it

The CMS decides a lot about your Core Web Vitals before you write a line of your own code. It controls the HTML that ships, the scripts and styles that load by default, and how images are handled. Two sites on the same platform can score very differently depending on the theme and plugins, but the platform sets the starting point and the ceiling for how much you can tune.

Start with what the platform loads that you do not need. Strip the default scripts and styles that come with themes and plugins, defer the JavaScript that is not needed for the first paint, and make sure images go out in modern formats at the right size. On script-heavy platforms the biggest wins are usually in cutting and deferring what loads on every page.

How does your CMS affect Core Web Vitals?

Among the most-used CMS platforms, Shopify reaches a good TTFB on 95.7% of sites; WordPress on 32.2%.

Related signals CDN (7) → Frameworks (11) → 212,308 crawled sites with Chrome field data, representing millions of real page loads · How we measured