Case study · Q2 2026 — 90-day engagement

A website rebuild and an offline-conversion pipeline — shipped in the same engagement

DFW roofing contractor — Kadence WordPress rebuild lifted desktop PSI 56 → 91.67, dropped mobile LCP 9.2s → 4.07s, dropped CLS 0.16 → 0.026; a single Cloudflare Worker closed the AccuLynx → ad-platform offline-conversion loop across Google Ads, Microsoft Ads, Meta CAPI, TikTok, and GA4 MP in under 2 seconds.

56 → 91.67 Desktop PageSpeed + mobile LCP 9.2s → 4.07s, CLS 0.16 → 0.026

United American Construction

Roofing · DFW Dallas–Fort Worth, TX Q2 2026 — 90-day engagement

Brief

United American Construction is a Dallas–Fort Worth roofing contractor running a tight in-house ops team, an AccuLynx CRM, and paid traffic across four ad platforms. The engagement scope was deliberately dual: a marketing site that would not embarrass mobile users, and an offline-conversion pipeline that would close the loop between job-site outcomes and ad-platform bidding signals.

Constraints

The starting position was a WordPress site with mobile Largest Contentful Paint at 9.2 seconds, Cumulative Layout Shift at 0.16, and a Google Tag Manager container that had accumulated drift across multiple agency hands. AccuLynx held the revenue truth, but no signal from AccuLynx reached the ad platforms. Google Ads was bidding without offline-conversion data; Meta and TikTok were unaware of which clicks turned into roofs. Replacing Zapier and Stape with something owned by the operator was a stated constraint, not a preference.

Approach

A single 90-day, four-phase plan governed the entire engagement. Phase 1 stabilized the marketing site on Kadence with a measured PSI remediation sequence. Phases 2 and 3 deployed a Cloudflare Worker as the single offline-conversion fan-out point — AccuLynx webhook in, five destinations out. Phase 4 wired Google Ads API conversion uploads to close the click-to-cash loop end-to-end.

Implementation

The marketing-site phase compressed into a single overnight win when an Anton font swap paired with a Google Fonts Geolocation deactivation lifted desktop PageSpeed from 56 to 91.67 and dropped Cumulative Layout Shift from 0.16 to 0.026. PSI Phase 2 followed with Critical CSS unblocking and a desktop performance gain of 4.5 additional points. The offline-conversion pipeline shipped as `uac-events-worker`, a production Cloudflare Worker. One AccuLynx webhook enters; five outputs leave — Google Ads conversion upload, Microsoft Ads UET, Meta CAPI, TikTok Events, and GA4 Measurement Protocol. End-to-end latency holds under two seconds. Every event is logged to a Cloudflare D1 database for audit and replay. The Phase 3 v1 closeout confirmed Worker `21f848ad` live with D1 logging proven and three ad platforms wired pre-token-refresh.

Reflection

The engagement closed because one operator owned both halves. The site rebuild and the offline-conversion pipeline normally live in two different vendor relationships — one with the web shop, one with the ad-platform integrator. Holding both under one roof compressed the calendar and let a single architectural decision (the Worker as a fan-out point owned by the client, not by Zapier or Stape) carry from spec to ship in one engagement window.

Result table

The receipts.

Metric Value Source
Mobile LCP 9.2 s → 4.07 s
verified
claim
UAC — mobile LCP
src
PageSpeed Insights, mobile
method
Mobile LCP before vs. after rebuild.
verified
May 2026
full ledger →
Mobile PageSpeed score 63.7 → 78.67 NBM audit log
Desktop PageSpeed score 56 → 91.67
verified
claim
UAC (roofing) — desktop PageSpeed score
src
PageSpeed Insights, desktop
method
Performance score before vs. after the Kadence rebuild.
verified
May 2026
full ledger →
Cumulative Layout Shift 0.16 → 0.026 NBM audit log
Offline-conversion destinations 0 → 5 (Google Ads, Microsoft Ads, Meta CAPI, TikTok, GA4 MP) NBM audit log
AccuLynx → ad-platform latency not wired → < 2 seconds
verified
claim
UAC — offline-conversion loop latency
src
Cloudflare Worker logs
method
End-to-end AccuLynx to ad-platform offline-conversion upload latency.
verified
May 2026
full ledger →
Conversion event audit log none → D1 database, per-event row NBM audit log

The engagement closed because one operator owned both halves. The site rebuild and the offline-conversion pipeline normally live in two different vendor relationships — one with the web shop, one with the ad-platform integrator. Holding both under one roof compressed the calendar and let a single architectural decision (the Worker as a fan-out point owned by the client, not by Zapier or Stape) carry from spec to ship in one engagement window.

Want this kind of result?

Book a discovery call. We'll walk your numbers.

No pitch deck. Just your CRM, your ad accounts, and a straight read on what the next 90 days could look like.