Site Migration + Performance Engineering + Conversion Tracking

FROM 14.1 SECONDS TO 2.3. SAME ROOFING COMPANY

How we moved a Utah roofing contractor off Webflow, rebuilt their conversion tracking, and turned the site into an SEO engine.

93 Lighthouse performance, up from 53
Client King Roofing
Scope Site Migration + Performance Engineering + Conversion Tracking + SEO
Outcome 93 Lighthouse performance, up from 53

01 / Context

The starting point.

Webflow to custom Next.js migration for a Utah roofing contractor: desktop load time cut from 14.1 seconds to 2.3, conversion tracking rebuilt, and an SEO program shipping geo-targeted pages every month.

93 Lighthouse Score Up from 53 on the Webflow build
2.3s Desktop Load Time Down from 14.1 seconds
4.6★ Google Rating Google Business Profile

02 / Challenge

A Failing Foundation Under Live Ad Spend

King Roofing was running paid campaigns into a Webflow site that loaded in 14.1 seconds and scored 53 on Lighthouse, while rogue GA4 tags left conversions unattributed. The crew was strong; the digital foundation and the measurement were not.

03 / Approach

Migrate, Measure, Then Grow

We sequenced the work: replace Webflow with a custom Next.js build on Vercel, rebrand to King Roofing, install GTM and clean GA4 conversion tracking, and only then layer on the growth program of geo-targeted landing pages and monthly content tracked across Ahrefs, SEMrush, and Search Console.

04 / Background

A strong crew on a slow foundation.

King Roofing is an Orem, Utah roofing contractor handling residential and commercial repair, replacement, and installation, backed by a 4.6-star Google Business Profile. Their digital presence did not match the crew: a Webflow build that took 14.1 seconds to load on desktop, scored 53 on Lighthouse, and a Google Ads Smart Campaign whose conversions were not being attributed at all.

05 / The Challenge

Slow pages, blind spend.

Every dollar going into ads was landing on a site Google scored in the failing range, and rogue GA4 tags meant the account could not tell which clicks turned into estimate requests. Before any growth work could be trusted, the foundation and the measurement both had to be rebuilt.

06 / The Migration

Off Webflow, onto a custom build.

We replaced the Webflow site with a custom-coded Next.js and React build on Vercel, carrying over every service page and rebranding the company from kingroofco to King Roofing along the way. Desktop load time dropped from 14.1 seconds to 2.3, and the Lighthouse score jumped from 53 to 93.

King Roofing website homepage with estimate form
King Roofing / The Migration

07 / The Tracking

Every estimate request, attributed.

We installed Google Tag Manager, cleaned out the rogue GA4 tags, and wired conversion tracking so estimate-form submissions and calls report back to the campaigns that produced them. The Smart Campaign attribution gap closed, and ad decisions started running on real data.

08 / The Program

SEO that ships every month.

On top of the new build runs an ongoing SEO retainer: technical audits, geo-targeted landing pages for the cities King Roofing serves, and a monthly content roadmap of in-depth service and buyer-question pieces, tracked in Ahrefs, SEMrush, and Search Console.

Six-times-faster pages with full attribution and search-ready architecture.

Next case study All Terrain Performance

Bring us the current version.

Share your current website, the services you sell, and where leads are getting stuck. We will come back with a practical next step.

Get a quote