Dotdigital Certification study materials
Dotdigital Certification study resources

Reconciling Two Attribution Numbers Before a Board Pack

Dotdigital Certification · Put your knowledge to work in context.

All case studies

Reconciling Two Attribution Numbers Before a Board Pack

Harborline is a B2C subscription box. Its Dotdigital reporting and its web analytics platform disagree about last quarter. Dotdigital attributes £412,000 of the quarter's £1.35m revenue to email; the analytics platform attributes £268,000. Twenty-two percent of orders have no campaign click in the 30 days before purchase. Attribution was configured by three different people: last-click with a 30-day window for broadcast campaigns, a 10-day window for the welcome program, and a 7-day window for win-back. UTM tagging is inconsistent - paid social appears as both 'fb' and 'facebook', and 14% of email links carry no utm_source at all. Roughly 9% of contacts have two or more email addresses on file, and mobile app purchases are recorded in Dotdigital but not in the analytics platform. The CMO needs one number for next month's board pack and has asked, in writing, whether email is 'actually working'. There is one analyst, no new CDP budget this year, and no appetite for a six-month data project.

1. Explain where the £144,000 gap comes from and state what, if anything, you would trust from either number.

Read the worked answer

Four causes, none of them a bug.

  1. Windows. A 30-day last-click window captures every purchase within a month of a click. A 10-day welcome window and a 7-day win-back window capture far less. The same order can be counted by one view and missed by the other, and per-program windows make the programs non-comparable to each other.
  2. Identity. Dotdigital matches on contact and email address; analytics matches on cookie and device. With 9% of contacts holding two or more email addresses, one person can be two contacts in Dotdigital and one cookie in analytics - or two devices in analytics and one contact in Dotdigital. App purchases sit in Dotdigital and are absent from analytics, which mechanically inflates the Dotdigital figure.
  3. Untagged links. 14% of email links with no utm_source land in direct/none in analytics, understating email there.
  4. 'fb' versus 'facebook'. This splits paid social into two rows and breaks any channel-level comparison built on top.

What to trust. Neither figure is revenue caused by email. Both are last-click attributions of revenue email was present for, and the causal figure is lower than both. The £412,000 is closer to the upper bound because of the app revenue and the long window; the £268,000 is closer to the lower bound because of untagged links.

What you can say today. Email was present in the journey for somewhere between the two, and the true incremental effect can only be estimated with a holdout. Do not average them; the midpoint has no meaning.

2. Lay out a 30-day remediation plan for one analyst with no CDP budget, ordered by impact against effort.

Read the worked answer

Week 1 - stop the bleeding. Enforce one attribution window across all campaigns: 30-day last-click, applied uniformly. Accept that win-back will look worse, because it is currently flattered by comparison with longer-window programs. Add a link-tagging template with a locked naming convention (lowercase, one canonical value per channel) and backfill the 14% of untagged links in templates you control. That alone fixes the direct/none bucket and the fb/facebook split.

Week 2 - deduplicate identity. Match app purchases to contacts on the app's user ID where it exists, and add app revenue to the analytics-side view so both cover the same orders. Flag contacts holding multiple email addresses and set a primary key. Do not attempt full cross-device stitching without a CDP; it will consume the month and deliver nothing usable.

Weeks 3–4 - reconcile. Build one table: order ID, order value, attributed channel, attributed campaign, window, and which tool recorded it. Variance should fall under 5%. Anything still unexplained is a genuine tracking gap and should be listed with an owner, not smoothed away.

What not to do. Do not build a new attribution model, do not move to data-driven attribution with one analyst, and do not wait for perfect data before reporting. Each of those fails the effort-to-impact test for a deadline measured in weeks.

Sequencing logic. Tagging first because it is hours of work and permanently removes a whole class of error. Window standardisation second because it changes every number and everything downstream depends on it. Identity third because it is the largest remaining gap and the only one that needs engineering help.

3. The CMO wants one number for the board pack and a direct answer to whether email is 'actually working'. What do you give them?

Read the worked answer

Answer the question that was asked, not the one the numbers imply. 'Is email working?' is causal, and last-click cannot answer it. Two deliverables.

For the board pack. One number with a stated method: attributed revenue, single 30-day last-click window, both tools reconciled, plus a footnote that attribution is not causation. Give the reconciled figure and state the drivers in one line rather than picking the flattering end of the range.

For the decision. A holdout. Suppress 5% of the mailable file from broadcast email for four weeks and compare revenue per contact against the 95% who receive it. Extrapolated, that difference is a defensible incremental estimate and the only number that should drive budget. With this file size, a 5% holdout gives enough volume to detect a 3–5% revenue difference within four weeks.

Say plainly what you do not know. The win-back program's 7-day window probably understates its contribution relative to welcome. App purchases are probably real revenue that analytics is missing. Present both as known gaps with owners and dates rather than as caveats buried under a table.

Do not put £412,000 on a board slide labelled 'email revenue'. The first question will be why the other tool says £268,000, and that answer needs to already be on the page. A number that survives scrutiny is worth more than a bigger one that does not.

Follow-through. Promise the holdout result at the next board pack. It converts a recurring argument about attribution into a single measurement you own.