Consumer Marketing · Measurement & Attribution

How we measure and attribute sales

What to track, how to attribute across online and offline, and how it flows through the Azure SQL and Power BI stack — scoped to marketing, not operational metrics.

Marketing lane onlyOnline + offline attributionInternal · June 2026
What this is

Measurement, kept in the marketing lane

This covers how Homesy measures and attributes consumer sales performance — which marketing activity is producing members, at what cost, and of what quality. It stops at the marketing boundary.

It is not an operational document — engineer ratings, repair turnaround, SLA adherence are owned elsewhere and out of scope. Where it touches retention, it does so only as a signal of channel quality for marketing-investment decisions, never as operational churn management.

Useful double duty

The Market Paper closes on Year-1 pilot questions that only operating data can answer — the engineer-introduced conversion rate, which propensity signals predict conversion, WTP at £9.99, Free→Member conversion. This framework is the instrument that answers them. Set it up well and the pilot questions resolve themselves from live data.

The challenge

What's specific to Homesy

Two features of the launch make measurement harder than a standard digital business — and both have a clean answer in the stack you already run.

The spine is offline & word-of-mouth-shaped

The engineer-introduced route has no click, no cookie, no ad impression to trace — the hardest thing in marketing to attribute, and the most important to get right. It must be captured deterministically at the point of introduction.

Channel selects segment

A "cheap" channel that brings fast-churning members is more expensive than it looks. Measurement has to carry a quality dimension (early retention, activation) alongside cost, by channel.

Why the existing stack is the right shape

Pulling PPC and social into Azure SQL, bringing CRM offline conversions into the same place, and reporting from Power BI is exactly the architecture online-to-offline attribution needs. The capability is already there; what makes or breaks it is the discipline of the keys that let the two sides join.

The metrics

Few things, tracked well

Grouped by the question each answers — and always pairing a cost metric with a quality metric.

Volume

New members by channel, region and tier (Member vs Free Member). Leads, diagnoses and sign-ups by stage.

Efficiency

CAC by channel and blended; cost per lead/diagnosis; LTV:CAC read directionally (finance owns the model).

Conversion

Stage conversion by channel; Free Member → Member; the engineer-introduced conversion rate, benchmarked at last.

Quality

Early retention by channel; activation (did they register an appliance, run a diagnosis); propensity-signal mix of converters.

The rule that ties it together

Never present a cost metric without its quality pair. A channel's CAC is only meaningful next to its early-retention and activation rates — because a cheap channel bringing wrong-mental-model members is more expensive than a dearer channel bringing trust-bonded ones.

Attribution

Joining online and offline

The principle: capture a journey deterministically wherever you can, and model it probabilistically only where you can't. Track first-touch and last-touch as the practical baseline; layer multi-touch only once the data justifies it.

The key insight — the bounty code is the attribution key

One code does double duty.

The sign-up bounty that pays an engineer requires a unique introducer code on the leave-behind / QR. That same code, carried from the QR through the sign-up form into the CRM record, is a deterministic attribution key — it credits the member to that engineer and the engineer-introduced channel, with no modelling required. It pays the partner and attributes the customer. Protecting its integrity end-to-end is the single highest-value tracking task at launch.

Don't chase perfect attribution. Some journeys stay partly dark, especially pure word-of-mouth. Report an honest "unattributed / organic" bucket rather than force-fitting conversions into a channel.

The data flow

Through the stack you run

Sources (PPC, social, web/diagnosis, introducer codes) → Azure SQL (ad and web data, keyed by UTM and lead/customer ID) → joined with CRM (offline conversions, structured source/code field, tier, region) → Power BI (the reporting layer, online and offline stitched into one picture).

The keys that make it join — the part that matters

A consistent UTM taxonomy · a persistent lead/customer ID written from first touch through to CRM · the structured introducer code (QR → pre-filled sign-up → CRM) · a structured source field for phone sign-ups · tier and region stamped on every conversion. Inconsistent UTMs are the most common reason attribution silently breaks.

The one-line test: can you take a single member and trace them backwards — from their CRM conversion record, through the join key, to the first marketing touch and the channel that introduced them? If yes for most members, the framework works. If that trace breaks for the engineer-introduced spine, fix that first.

Reporting & guardrails

Views that drive decisions

A small number of views, each answering a question someone will act on: an acquisition overview (weekly), channel efficiency-and-quality (weekly/monthly), funnel including Free→Member (monthly), partner-introduced attribution (weekly), cohort quality (monthly/quarterly), and a pilot-question tracker (quarterly).

  1. Quality always travels with cost

    No CAC without its retention/activation pair. The cheap-but-wrong-cohort trap is the specific failure this guards against.

  2. Watch the wrong-mental-model signal

    If a channel (insurance-intent search especially) shows fast post-first-incident churn, flag it and be ready to pull spend.

  3. Cut everything by region and tier

    Year-1 is a four-region, two-tier launch; a national blended number hides where it's working.

  4. Out of scope — deliberately

    Operational metrics (SLAs, engineer/repair performance), member-success ops, and full LTV/finance modelling. Marketing consumes an LTV input to read LTV:CAC, no more.

The point of all of it

So Year-1 spend produces learning, not just members — so that by the end of the launch you know which channels bring durable members in which regions at what cost. That's the difference between launching and learning.