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 · All devices 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.9%
Best: Shopify
good LCP
89.4%
Typical CMS
good LCP
70.3%
Worst: WordPress
good LCP

Shopify passes LCP most often of any CMS. 95.9% of its sites pass. WordPress (the most-used CMS) passes least at 70.3%. The gap is 26 percentage points.

The State of Web Vitals · October 2026 · 210,902 crawled sites · all devices field datacorewebvitals.io/state-of-cwv
2

The ranking sorted by LCP at p75, fastest first

# CMS LCP p75 Passing Sites
1 TYPO3 1.5s 94.9%
104
2 Wix 1.6s 94.3%
5,827
3 Shopify 1.7s 95.9%
8,575
4 Drupal 1.7s 91.7%
3,361
5 Joomla 2.0s 89.4%
2,555
6 Squarespace 2.1s 89.0%
2,260
7 Adobe Commerce 2.4s 78.1%
1,096
8 WordPress 2.7s 70.3%
65,509
The State of Web Vitals · October 2026 · 210,902 crawled sites · all devices field datacorewebvitals.io/state-of-cwv
3

Passing LCP per CMS which group passes the LCP most often

CMSSitesPassing LCPp75
Webflow 0% 20 100% 1.6s
Shopify 4.1% 8,575 96% 1.7s
TYPO3 0% 104 95% 1.5s
Wix 2.8% 5,827 94% 1.6s
Ghost 0% 46 94% 1.5s
Drupal 1.6% 3,361 92% 1.7s
Joomla 1.2% 2,555 89% 2.0s
Squarespace 1.1% 2,260 89% 2.1s
Adobe Commerce 0.5% 1,096 78% 2.4s
Other / custom 0% 16 75% 2.3s
WordPress 31.1% 65,509 70% 2.7s
Good Needs Improvement Poor Sorted best-passing first · median colored by its own rating · pass = good LCP (2.5s at p75) · one value per site

96% of Shopify sites pass LCP. WordPress trails 26 points behind, leaving 30% of its sites failing. computed

The State of Web Vitals · October 2026 · 210,902 crawled sites · all devices 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
98104ms
890.03
592.3s
311.8s
Shopify 4.1%
961.7s
96124ms
940.02
951.1s
96513ms
Wix 2.8%
941.6s
9788ms
980.00
931.1s
82653ms
Drupal 1.6%
921.7s
97102ms
880.04
861.5s
67936ms
Joomla 1.2%
892.0s
9596ms
920.01
811.7s
551.1s
Squarespace 1.1%
892.1s
10093ms
900.04
861.5s
96541ms
Adobe Commerce 0.5%
782.4s
98118ms
740.11
692.0s
301.6s
TYPO3 0%
951.5s
8898ms
930.02
901.2s
72827ms
Ghost 0%
941.5s
10087ms
890.06
941.1s
82610ms
Webflow 0%
1001.6s
10082ms
950.03
951.2s
78591ms
Other / custom 0%
752.3s
83139ms
690.15
751.6s
47927ms
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 LCP: 96% of its sites pass. WordPress trails at 70%. computed

The State of Web Vitals · October 2026 · 210,902 crawled sites · all devices 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, TYPO3 reaches a good LCP on 94.9% of sites; WordPress on 70.3%.

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