Oasis Prime Media logo Oasis PrimeMedia
Analytics

Marketing Analytics and Attribution Without the Fantasy

Platform numbers disagree, cookies expire and models lie. Here is a measurement stack that survives contact with reality — and the reporting rhythm around it.

Grace Lin, Analytics Consultant 16 min read Analytics
Marketing Analytics and Attribution Without the Fantasy
Key takeaways
  • Start with a measurement plan: questions first, events second, tools last.
  • Server-side collection plus a clean consent layer is now the baseline, not an advanced option.
  • Every attribution model is wrong; pick one, document it, and stop switching to whichever flatters the channel.
  • Incrementality tests and holdouts answer questions attribution structurally cannot.
  • Reporting is a habit — a fixed monthly note beats a beautiful dashboard nobody opens.

Marketing measurement went through a decade of comforting fiction: a tidy click path, a last-click number, a dashboard that agreed with itself. Privacy changes, cookie expiry, walled gardens and cross-device behaviour ended that. What replaces it is less tidy but more honest — and, run properly, more useful for deciding where the next dollar goes.

1. The measurement plan comes first

Before tags, before tools, write down the decisions you need to make. A one-page plan with four columns:

QuestionMetricData neededOwner
Which channel brings profitable new customers?New-customer CAC by channelOrders, customer type, spendGrowth lead
Where does the funnel leak?Step-through rateFunnel events with session IDWeb lead
Is content contributing?Assisted pipeline by entry pageEntry page, CRM stageContent lead

If a metric does not change a decision, do not collect it. Dashboards fail from excess more often than from gaps.

2. Event architecture: name things once, properly

A naming convention agreed on day one saves a year of confusion. Ours is object_action in snake case — form_submit, checkout_step_view, quote_start — with a small, fixed parameter set on every event:

  • page_type — template category, so you can group without regex gymnastics
  • content_id — product, article or service identifier
  • session_id and user_id — stable identifiers for warehouse joins
  • value and currency where money is involved
Document it in a tracking plan — a spreadsheet listing every event, its parameters, where it fires and who owns it. When someone asks "why did conversions drop", the tracking plan is the first place to look, and it is usually the answer.

3. Server-side collection and consent

Browser-based tracking loses data to ad blockers, ITP cookie expiry and network failures. Server-side collection recovers much of it and improves data quality, but it is not a way around consent — and should not be treated as one.

  • Implement a consent management layer that genuinely gates non-essential tags.
  • Deduplicate browser and server events with a shared event ID.
  • Hash personal identifiers before transmission and document what leaves your systems.
  • Keep a raw event stream in your own warehouse — platforms change; your history should not.

4. Attribution models, and why they all disagree

An attribution model is an opinion about credit expressed as arithmetic. Each has a bias:

ModelBiasReasonable use
Last clickOver-credits closing channels — brand search, retargetingSimple e-commerce with short cycles
First clickOver-credits discovery, ignores what closedUnderstanding top-of-funnel reach
Linear / position-basedAssumes a credit split you inventedComparing channels directionally
Data-drivenOpaque; depends on the platform's own dataLarge accounts with high conversion volume
Media mix modellingNeeds years of data and careful setupLarge budgets across many channels

Pick one as the default, write down why, and keep it. Teams that switch models when results disappoint end up with a reporting layer nobody trusts, which is worse than an imperfect model everybody understands.

The useful question is not "which channel gets the credit" but "what happens to total revenue if we turn this channel down?" Attribution answers the first. Only experiments answer the second.

5. Incrementality: the test attribution cannot replace

Three practical designs, in increasing order of rigour:

  1. Geo holdout. Turn a channel off in matched regions for four to six weeks and compare against control regions. The cleanest test available to most mid-size businesses.
  2. Audience holdout. Exclude a random share of the audience from retargeting or email, and compare conversion rates.
  3. Platform lift studies. Convenient, but the vendor grades its own homework — treat as directional.

The most common finding, in our experience: branded search and retargeting are substantially less incremental than their reported ROAS suggests, and mid-funnel content is more so.

Analytics dashboard showing charts and metrics
A dashboard should answer a question you wrote down first. Otherwise it is decoration with a refresh rate.

6. A stack that is honest about its limits

For most businesses under roughly $50M revenue, this is enough:

  • Collection: tag manager plus a server-side endpoint, with consent gating.
  • Product analytics: GA4 or an event-based tool for funnels and paths.
  • Warehouse: BigQuery, Snowflake or Postgres holding raw events, orders and spend.
  • Modelling: scheduled queries producing tidy tables — daily spend, orders, customers, margin.
  • Reporting: one dashboard people actually open, plus a monthly written note.

Resist adding tools before the questions are stable. Every new source multiplies the reconciliation work.

7. QA, or how numbers quietly break

  • Automated checks: alert when an event's daily volume moves more than 30% against its trailing average.
  • Monthly reconciliation between the analytics platform, the store back end and the accounting system. Note the expected gap — there always is one — so surprises stand out.
  • A tag audit each quarter: delete anything without a named owner.
  • Test tracking in staging before every release. Deployments break events more often than platforms do.

8. Reporting rhythm beats reporting beauty

The reporting that changes behaviour is boring and regular:

  • Weekly: a short scorecard of spend, MER, CAC and the two or three leading indicators for live campaigns.
  • Monthly: a one-page written analysis — what we did, what happened, what we learned, what changes next.
  • Quarterly: a deeper review including incrementality results, model assumptions and a re-forecast.

Include a confidence note on any number you would not defend in a board meeting. Being explicit about uncertainty buys you far more credibility than a spuriously precise decimal.

9. Seven measurement mistakes worth avoiding

  • Comparing platform-reported conversions across platforms as if they counted the same thing.
  • Ignoring the consent rate when interpreting a year-on-year drop.
  • Treating modelled conversions as observed ones without saying so.
  • Building 40-widget dashboards that answer no specific question.
  • Changing attribution windows mid-quarter and comparing anyway.
  • Measuring channels in isolation when budgets clearly interact.
  • Never running a holdout because "we cannot afford to turn anything off" — the most expensive assumption in marketing.

10. Where to start if this feels overwhelming

Do these four things in order and you will be ahead of most teams:

  1. Write the one-page measurement plan. Three questions is enough.
  2. Fix the events behind those three questions, and document them.
  3. Report blended MER and new-customer CAC weekly, from your own data.
  4. Run one geo holdout on your largest channel this quarter.

You will not have perfect attribution. Nobody does. You will have something better: a small set of numbers you trust, and evidence about what actually changes when you spend.

Grace Lin

Grace Lin

Analytics Consultant at Oasis Prime Media

Writes about the parts of the job that do not fit in a carousel. Available for project work through the contact page.

Keep reading

Related articles

Put this into practice

Bring your current setup to a free 30-minute session. We will run the first two steps of this framework live and you keep the notes either way.