Most page builder speed comparisons are written to reach a conclusion the author already held. The pattern is easy to spot: a precise-sounding millisecond figure, no methodology, no date, and no mention of what was on the page being tested.
This page is the opposite arrangement. Here is what we measured, when, against what, and, more importantly, what we have not measured and are therefore not going to claim.
Disclosure: some links in this article are affiliate links. If you buy through them we may earn a commission at no extra cost to you. It does not change what we recommend.
What was measured, and what was not
The tests behind the figures below were run in 2025 and compared Oxygen Builder against Elementor. They were mobile tests on equivalent pages, with the deliberate choice not to apply caching or optimisation plugins, because the point was to isolate what the builder itself emits rather than what a good caching setup can hide.
That design has an obvious consequence people miss: the absolute scores are poor by design. You are looking at a raw builder baseline, not a finished site. A page that scores in the 50s here can comfortably score in the 90s once it has a caching layer, optimised images and decent hosting in front of it.
Two things this page does not contain. There is no first-party test data for Bricks or Breakdance, and rather than fill the gap with plausible-looking numbers, those sections say what would be measured and what we expect on architectural grounds. And there is no claim that these figures predict the speed of any particular client site, because they do not.
The measured figures: Oxygen against Elementor
Mobile test averages, 2025 test runs, no caching or optimisation plugins applied:
| Metric (mobile) | Oxygen Builder | Elementor | What it tells you |
|---|---|---|---|
| PageSpeed score | 54/100 | 52/100 | Almost nothing on its own; the scores are close |
| Total loading time | 3.9 seconds | 4.4 seconds | A modest edge to Oxygen out of the box |
| Total Blocking Time | 0 ms | 3,440 ms | The largest and most meaningful gap in the set |
| Default CSS and JS | Minimal | High | Roughly 25x leaner on a blank-page comparison |
A separate observation from the same period: an Oxygen page was documented loading in 349 ms with no caching or optimisation plugins at all. That is a best-case figure on a simple page and is quoted here as an illustration of how little overhead the builder adds, not as a number anyone should expect to reproduce on a client build.
Reading those numbers honestly
The headline gap is Total Blocking Time. Zero against 3,440 ms is not a rounding difference, and it is the figure that matters most to how a page feels, because blocking time is the browser stuck parsing and executing script instead of responding to the person using it. That result is consistent with the architectural argument rather than a surprise.
The PageSpeed scores tell you very little. Fifty-four against fifty-two is noise, and anyone presenting a two-point gap as a verdict is overselling. The loading-time difference, 3.9 against 4.4 seconds, is real but modest, and on an optimised site it would compress further.
One figure in the original test set does not sit comfortably with the others: a Largest Contentful Paint result for Oxygen far worse than Elementor’s, in a run where Oxygen’s blocking time was zero. That combination usually points to an unoptimised hero image or a font loading badly on the test page rather than to builder architecture. We have left it out of the table rather than present a number we cannot explain, and it is a good illustration of why single-metric comparisons mislead.
The 25x leanness figure deserves the same scepticism. It is a blank-page comparison of default assets, which is the most flattering test a lean builder can be given. Real pages carry content, and content dominates. The ratio is a statement about baseline overhead, not about the weight of a finished page.
It is worth being precise about which metrics carry weight. Google’s published Core Web Vitals thresholds treat Largest Contentful Paint under 2.5 seconds, Interaction to Next Paint under 200 milliseconds and Cumulative Layout Shift under 0.1 as good. Total Blocking Time is a lab proxy for interaction responsiveness rather than a Core Web Vital itself, which is why it shows up in tests like these but not in field data. A builder can only really influence the responsiveness side; layout shift is usually your images and fonts, and largest contentful paint is usually your hero image and your server.
Why the code bloat argument holds anyway
Strip away the specific numbers and the structural point survives, which is why it is worth stating separately from the measurements.
Traditional builders routinely load assets a given page does not use: animation styles, icon libraries, motion effects, slider scripts, all shipped on every page in case something needs them. That is the overhead the blank-page test exposes. Oxygen loads the scripts and styles the design actually requires, which is why its pages start from a lighter baseline without anyone intervening.
The practical consequence for an agency is about where your effort goes. On a lean builder, optimisation work is content work: images, fonts, third-party scripts. On a heavy one, you first have to deal with the builder’s own output before you get to any of that, and that is time you either bill or absorb. The wider architectural comparison is in our Oxygen Builder vs Elementor comparison.
Bricks: not yet tested here
We have not run these tests against Bricks, so there is no Bricks row in the table above and there will not be one until there is real data to put in it.
What can be said without measuring: Bricks is architecturally in the same category as Oxygen. It emits lean markup, it does not sit on top of a separate theme because it is the theme, and its output in our qualitative comparisons has been close enough to Oxygen that we would expect any gap to be small relative to hosting and images. That is an expectation derived from architecture, not a result.
If you want the feature and licensing comparison in the meantime, it is in Bricks vs Oxygen Builder. When we run the tests, the figures will appear here with their date attached.
Breakdance: not yet tested here
Same position. No first-party measurements, so no numbers.
Breakdance is built by the same company as Oxygen and is positioned as the drag-and-drop tool rather than the developer one. Its output is lean by reputation and by design, and it ships forms, popups, headers and WooCommerce templates in the box, which on a real project can remove several plugins and therefore several sets of scripts. That plugin-count effect may matter more to a finished page than the builder’s own baseline does, and it is not something a blank-page test would ever capture. Our full assessment is in the Breakdance review.
What would actually be measured
For anyone wanting to replicate this or run it against their own stack, the method matters more than the tooling:
- Identical content on every builder. Same copy, same images at the same dimensions, same fonts. Any difference in content invalidates the comparison entirely.
- No caching, no optimisation plugins. You are measuring builder output, and a caching layer’s job is to hide exactly that.
- Same host, same PHP version, same region. Hosting variance is larger than builder variance, which is the single most common reason published comparisons disagree.
- Mobile, throttled, multiple runs. One run is an anecdote. Take a median of several.
- Report Total Blocking Time and transferred bytes, not just the composite score. The composite hides the thing you are trying to see.
- Record the date and the builder versions. Without them the result has a shelf life you cannot determine.
Run it that way and you will get a defensible answer for your stack, which is worth more than any published table including this one.
What decides load time on a real client site
This is the part that gets lost when a builder comparison goes viral. On a finished site, in rough order of impact: hosting and time to first byte, image weight and format, font loading, third-party scripts, and only then the builder’s own output.
A lean builder on poor shared hosting loses to a heavy builder on good infrastructure, comfortably. If the goal is a fast client site rather than winning an argument about builders, the server is where the first hour of work belongs, which is why the original version of these tests paired its findings with a recommendation to run on properly specified managed hosting rather than treating the builder as the whole story.
None of which makes the builder irrelevant. It sets the floor. It just does not set the ceiling, and most of the difference between a slow site and a fast one lives above that floor.
Frequently Asked Questions
Which WordPress page builder is fastest?
On code output, Oxygen and Bricks are the leanest of the mainstream builders, and the block editor with a lightweight theme is lighter than any of them because there is no builder layer. Our own measured data covers Oxygen against Elementor only. Anyone quoting a precise ranking across every builder is either citing someone else’s test or inventing it.
Is Oxygen really 25 times leaner than Elementor?
That figure comes from a blank-page comparison of default CSS and JavaScript, which is the most flattering possible test for a lean builder. It tells you something real about baseline overhead and almost nothing about a finished client site, where content, images and third-party scripts dominate. Treat it as a statement about architecture, not about page weight in production.
Do these benchmarks mean my site will be fast?
No. Builder output is one variable among hosting, images, fonts, third-party scripts and caching, and it is usually not the largest. A lean builder on poor hosting loses to a heavy builder on good hosting. The benchmark tells you where you start, not where you finish.
Why is the PageSpeed score only 54 out of 100?
Because these were mobile tests on unoptimised pages with no caching layer, which is the correct way to isolate builder output but produces scores far below what a finished, tuned site achieves. A mobile PSI score in the 50s on a raw test page is not a verdict on the builder; it is the baseline before any of the work that actually moves the number.
How often are these numbers updated?
The figures below are from 2025 test runs. Builders ship changes constantly, and Oxygen 6 in particular is a rewrite rather than an update, so any measurement older than a release cycle should be treated as indicative. We date every figure on this page for that reason and will republish rather than quietly edit when we re-run them.
The short version: Oxygen showed a meaningful Total Blocking Time advantage over Elementor in 2025 mobile testing, a modest loading-time edge, and a large default-asset difference on a blank page. Bricks and Breakdance have not been measured here and will not carry numbers until they have been. Every figure on this page is dated, and where a result did not make sense we have said so rather than published it.
Need a WordPress developer?
Let's build something fast, scalable, and SEO-ready — from a custom theme to a full headless stack.
Get in Touch