Skip to content
Healthcare

A healthcare clinic site failing every Core Web Vital was quietly losing bookings on mobile. The template-level performance rebuild and booking-flow fixes that turned it around.

1.8s
LCP (from 4.9s)
+34%
Booking conversion

Client identity withheld. Speed figures are field data (CrUX) at the 75th percentile; conversion compares the quarter after launch to the quarter before.

The situation

A multi-provider clinic ran ads to a site that looked polished on the office desktop and behaved like syrup on the phones their patients actually used. Field data failed every Core Web Vital. Mobile bounce on service pages was severe, and the booking funnel lost most of its starters before confirmation. Marketing kept buying traffic the website kept spilling.

What we found

The waterfall told the usual story with local flavor. A page-builder theme shipped every stylesheet and script to every visitor. Hero images arrived at full camera resolution. Eleven third-party scripts loaded before content: chat, three analytics tools, a review widget, a defunct heat-mapper and marketing tags nobody could name an owner for. The booking flow then took the survivors through a five-step form that demanded insurance details before showing available times, on pages that jumped as late elements loaded.

The strategy

Fix the templates, not the pages: performance work applied at the template level moves every URL at once. Cut scripts by ownership audit before optimizing what remained. Then rebuild the booking flow around one principle: show the appointment times first, ask for details after commitment exists. Measure everything in field data and completed bookings, not lab scores.

The work

Phase 1: the script reckoning (weeks 1-2)

Every third-party tag got an owner or an exit. Four scripts died immediately as unowned; the rest loaded on interaction or moved off the critical path. This alone reclaimed seconds before any clever engineering began.

Phase 2: template performance rebuild (weeks 2-6)

An image pipeline delivered properly sized modern formats with priority hints on the hero. Critical CSS was inlined per template with the remainder deferred; unused framework weight was stripped. Layout reservations killed the shifting that had made mobile reading feel drunk. LCP fell in field data within the first monthly window and kept falling as the cache of real-user data refreshed.

Phase 3: the booking flow (weeks 4-8)

The funnel was inverted: times first, provider choice second, patient details last, in three steps with progress made visible. Insurance capture moved to post-booking confirmation where it stopped costing appointments. Recordings had shown the exact field where thumbs gave up; that field’s step no longer existed.

The results

Seventy-fifth percentile LCP settled at 1.8 seconds against the 4.9 baseline, with CLS and INP passing alongside it. Booking conversion rose 34% quarter over quarter, and, because the fixes were template-level, organic entrances grew as rankings responded to a site that finally cleared the vitals bar. The same ad budget began producing meaningfully more booked appointments, which is the only speed metric a clinic owner needs framed.

What made the difference

Killing scripts by ownership before optimizing code, and moving the booking form’s demands to after commitment. Performance work gets sold as engineering wizardry; most of it is subtraction with discipline.

Explore the services behind this engagement: Technical SEO, Funnel Optimization and Landing Page Optimization.

← All case studies