Renue Hawaii case study cover. Honolulu commercial cleaning company mobile speed results.

Renue Hawaii: Every Page Cleared 90 on Mobile. No Rebuild, No Redesign.

Renue Hawaii is a carpet, upholstery, and stone care cleaning company in Honolulu serving hotels and commercial properties. Their WordPress site worked. It just loaded like it did not want to. PeakSpire ran a Speed Sprint against the existing site, on the existing host, with the existing design. When the final gate closed, all 33 pages on the sitemap passed a 90 or better mobile PageSpeed gate. The design never moved.

Want to know where your own site stands? Run a free 15-minute website audit. One report, plain English, no sales call required.
Before
75
About page, mobile PSI (n=10 median)

→
After
96
About page, mobile PSI (n=10 median)

The About page was the last holdout: hero paint went from 6.4s to 2.23s. Site-wide, the share of test runs scoring under 90 dropped from 40% to 6%.

The 90-second summary

Metric Before After
Pages passing the 90+ mobile gate 2 pages still failing entering the final week (About 75, Blog 83) 33 of 33 (N=5 cache-busted runs per page)
About page, mobile PSI (n=10 median) 75 96
About page, mobile LCP 6.4s 2.23s
Blog, mobile PSI (n=10 median) 83 92
Blog, mobile LCP 4.0s 2.90s
Share of test runs under 90 (unique, mobile) 40.0% 6.2%
Mean mobile score across those runs 91.0 96.3
Worst single run 82 88
Best single run 96 99
Median mobile LCP 2.18s 1.75s
Mean mobile LCP 2.45s 1.98s
Theme rebuild / platform migration / design change none none

Engagement: Speed Sprint, a fixed-scope mobile performance engagement for WordPress sites. Wrapped 2026-06-03 with the final plugin version deployed to both the production site and the staging mirror. Original Elementor design preserved. Original WordPress stack preserved.

The challenge

The site had two problems you can read straight off a PageSpeed report.

Pages were stuck below the 90 line. Entering the final week of the sprint, two pages still failed the gate: the About page at 75 and the Blog at 83. The About page was the worse one. Its hero background image was doing everything wrong at once: marked lazy-loaded when it was the first thing visitors should see, tagged low priority when it needed high, and shipped with no preload at all. On a phone, that page took 6.4 seconds to paint its main content.

Invisible text and late paint everywhere else. Two icon fonts, one weighing in at 785 milliseconds and the other at 640 milliseconds, were loading without a font-display rule, so text sat invisible until the fonts arrived. Elementor’s default entrance animations held the main content hidden for an extra paint cycle on every load. And script evaluation was blocking the largest contentful paint on enough runs that the worst-case score sat at 82.

None of this required a rebuild. It required someone to go page by page and fix what the page builder and the cache plugin could not fix themselves.

What we did: the Speed Sprint

Six changes to the existing WordPress and Elementor site running on LiteSpeed shared hosting. No theme rebuild, no migration, no design changes. Every change was staged and verified on a mirror before it shipped, and every change was reversible.

1. Critical CSS inlined in the head

The site’s combined CSS, about 496KB on production, inlined directly into the HTML head under a 560KB safety cap. The browser stops waiting on a render-blocking stylesheet round trip.

2. Hero images preloaded properly

Page by page, the true hero element got an explicit preload with the right mobile WebP variant, flipped from lazy to eager and from low to high priority. The About page fix alone moved it from 75 to 96.

3. Hero AVIF inlined

A 14.7KB mobile hero image in AVIF, embedded base64 directly in the HTML. First paint no longer waits on the network for the hero at all.

4. Icon fonts set to swap

The 785ms and 640ms icon fonts got font-display rules so text renders immediately in the fallback and swaps when the font lands. No more invisible text window.

5. Entrance animations stripped server-side

Elementor’s animation classes removed at the PHP layer, before the browser ever sees them. Content paints on the first frame it is able to.

6. Cache settings locked, verified on the wire

LiteSpeed Cache settings locked and every change verified by fetching the rendered HTML and checking the actual bytes, because server-side logs proved unreliable on this stack. Trust the wire, not the log.

The results

Two tables. The first is the final closure gate from the last week of the sprint: n=10 medians per page, mobile, after the About and Blog fixes landed. The second is the site-wide before and after at the earlier fleet-wide ship, which is where the bulk of the movement happened.

Final gate, n=10 medians per page, mobile:

Page PSI LCP CLS TBT
Home 97 1.84s 0.037 0ms
About 96 2.23s 0.037 0ms
Blog 92 2.90s 0.037 0ms
Hotel Services 92 2.24s 0.107 0ms
Area Rug Cleaning 94 2.45s 0.037 0ms
Bleach Stain Removal 95 2.70s 0.037 0ms
Commercial Carpet Cleaning 95 2.53s 0.037 0ms

Every page in that table cleared 90 with total blocking time of zero milliseconds.

Full-sitemap gate, all 33 pages, N=5 cache-busted mobile runs per page: 33 of 33 passed. Lowest page median was 90, the most common score was 96, and the highest was a perfect 100. Across all 165 individual runs, 92% scored 90 or better, 79% scored 95 or better, and six runs came back a perfect 100. Desktop passed 31 of 33, and both desktop misses traced to Google’s own testing workers choking, not to the site.

Site-wide before and after at the fleet-wide ship (mobile, deduplicated runs):

Metric Before After Change
Unique sub-90 rate 40.0% (2 of 5) 6.2% (1 of 16) -84% relative
Mean score 91.0 96.3 +5.3
Worst run 82 88 +6
Best run 96 99 +3
Median LCP 2.18s 1.75s -20%
Mean LCP 2.45s 1.98s -19%

The floor moving from 82 to 88 is the part that matters most. The script-evaluation failures that were blocking the largest paint were engineered out entirely, so the worst experience a real visitor gets now looks like the old average one.

And it held. A post-wrap sweep re-verified all 60 user-facing URLs at 90 or better on mobile. A controlled re-measure of the homepage (19 runs, 60-second spacing) put the median at 98 and the mean at 96.1, with the share of runs below 95 cut from 47.2% before the hero fix to 10.5% after, roughly a 4.5x reduction in run-to-run variance. The 95th-percentile hero paint sits at 1.93 seconds, close to the practical ceiling for this hosting tier.

How these numbers were measured

What this means for a service business

Google uses page experience signals, including Core Web Vitals, in how it ranks mobile results, and a faster largest contentful paint measurably reduces the share of visitors who leave before the page finishes painting. What we will not claim is a ranking or lead-count jump for Renue: this engagement measured and fixed speed, and those outcomes were not instrumented. Anyone selling you a guaranteed ranking jump off a speed fix alone is selling you something they did not measure.

Renue Hawaii Speed Sprint, at a glance

Is your site leaving jobs on the table?

If you run an Ottawa service business and your mobile PageSpeed is anywhere below 90, the causes are usually the same ones we fixed here: render-blocking CSS, a hero image the browser treats as an afterthought, icon fonts holding text invisible, and page-builder defaults nobody has reviewed. None of it requires a rebuild to fix.

Run a free 15-minute audit →

Or call directly at (343) 842-4444, or email info@peakspire.ca. Founder picks up.

About PeakSpire

PeakSpire is an Ottawa web design and local SEO company for service businesses, run by Siraj Ahmadzai. Focused services: Lead-Gen Websites, Speed Sprints, Local SEO, and Care Plans. Fixed pricing, founder-led, no agency fluff. More at peakspire.ca and About Us.