Skip to content
BLUE OAK MEDIA
All work
Case study ยท Home services ยท Roofing ยท Louisiana

Every lead source measured against real revenue.

Google Ads and Local Services Ads feeding a live financials dashboard that blends ad spend with closed jobs from their CRM โ€” blended ROAS by lead source, not vanity metrics.

  • Live
    ROAS by lead source, updated daily
  • 1,900+
    Jobs tracked against ad spend

The problem

Roofing marketing reports usually stop at clicks and calls. Zuppardo's wanted to know the only number that matters: for every dollar of ad spend, how much contracted revenue came back โ€” and from which channel.

What we built

We connected their CRM job data to their ad platforms in a client portal. Every closed job maps to a lead source; every lead source maps to spend. The result is blended ROAS by channel, updated automatically โ€” no spreadsheet reconciliation, no monthly guessing.

What's next

Storm-triggered campaign automation: when severe weather hits the service area, pre-approved Google and Meta campaigns launch automatically โ€” lead capture starts before the cleanup crews do.