Four phases built around a single rule: the data decides. Not a borrowed framework — a process developed through fixing hundreds of WordPress sites and auditing 87 performance plugins.
The best baseline available. Lab tools always. Field data when accessible.
Every engagement opens with a Lighthouse and DevTools audit — reproducible, always available, works for any site regardless of traffic. For sites with enough visitors, CrUX field data layers on top: 28 days of real users on real devices revealing how actual visitors experience the site. One input or two, the work starts with numbers. Not guesses.
Trace every failing metric to its infrastructure source.
"LCP is 4.2s" is a symptom. "The LCP element is a 2.3MB PNG fetched with no priority hint after a 1.82s TTFB on an un-cached shared host" is an origin. Every failing metric gets traced through its contributing factors until the actual infrastructure decision causing the number is found. No plugin installs before this step is done.
Each fix traceable to an Origin finding. Custom-built when plugins fall short.
Every change is mapped to a specific Origin finding. No speculative installs, no carpet-bombing plugins hoping something sticks. When the origin analysis uncovers a problem that no plugin can solve — a per-template critical CSS pipeline, a proximity-aware JS loader, a bespoke service worker strategy — the fix is built from scratch.
Verified against the same baseline that opened the engagement.
Evaluation matches the engagement. Lab engagements close with before/after Lighthouse runs — documented, reproducible, delivered in a full report. Field engagements add a 30-day CrUX monitoring window: real-user data confirming improvements hold in production. Either way, if the agreed metric targets are not reached, the last 30 days are refunded.