DataMarketer

Attribution model comparisons across the same customer journeys

An attribution model divides credit for an outcome among recorded marketing interactions. Changing the model can change a channel report without changing a single purchase. This article compares first click, last click, linear, time decay, position based, and data-driven allocation on a shared dataset. The calculations make the assumptions visible so a credit allocation does not become an unexplained instruction to move budget.

Worked example of customer journey attribution

Customer journey attribution starts with a defined outcome, an eligible interaction history, and a consistent reporting window. The worked example below holds those inputs constant while changing the allocation rule. Each journey represents a distinct purchase, and repeated channel visits remain separate interactions before their credit is added at the channel level.

Worked example. Consider a test store with 3 recorded purchase journeys. Each purchase is worth 100 USD, so the total revenue available for allocation is 3 × 100 = 300 USD. The eligible interactions are clicks, and their timing is measured backward from purchase. Direct visits are excluded consistently across the comparison.

Journey
A
Recorded clicks in order
Search 7 days before purchase, Social 3 days before purchase, Email at purchase
Purchase revenue
100 USD
Journey
B
Recorded clicks in order
Social 7 days before purchase, Search 3 days before purchase, Search at purchase
Purchase revenue
100 USD
Journey
C
Recorded clicks in order
Email 3 days before purchase, Social at purchase
Purchase revenue
100 USD

The channel names describe categories, without implying that every platform observes every interaction. This dataset contains no missing identities, currency changes, returns, or duplicate purchases. Those simplifications allow a clean arithmetic comparison. They do not describe the completeness of a real tracking setup.

All numerical tables that follow belong to this worked example. Credit is expressed in USD. Rounding is applied after calculating interaction weights, with any rounding remainder kept within the original purchase total. Every model must allocate exactly the available revenue rather than creating additional sales.

First click and last click attribution answer different questions

First click attribution assigns the full outcome value to the earliest eligible interaction, while last click assigns it to the latest. First click emphasizes recorded discovery and last click emphasizes recorded closing. Both are easy to explain, but each removes the contribution of other interactions from the credited revenue view.

For a journey with revenue R, first click credit equals R for the first eligible interaction and zero for the others. Last click applies the same rule to the final eligible interaction. The eligible window matters because an earlier interaction outside it cannot receive credit.

In the worked example, journey A gives Search 100 USD under first click and Email 100 USD under last click. Journey B gives Social 100 USD under first click and Search 100 USD under last click. Journey C gives Email 100 USD under first click and Social 100 USD under last click.

The channel totals happen to match across these models because each channel starts and ends a purchase journey. That agreement conceals different assignments at the purchase level. Always inspect paths as well as totals. A matching aggregate does not establish that the models describe the same role for each channel.

Linear attribution distributes credit across recorded interactions

Linear attribution divides the outcome value equally across eligible interactions in a journey. It provides a transparent shared-credit baseline when you want to recognize the whole recorded path. Its central assumption is equal influence per interaction, which can overreward repeated visits and does not establish how much each contact changed the purchase decision.

Linear interaction credit = journey revenue ÷ number of eligible interactions.

In worked example journey A, each interaction receives 100 ÷ 3 = 33.333... USD. Display Search at 33.33 USD, Social at 33.33 USD, and Email at 33.34 USD to preserve the purchase total. The small remainder is a display adjustment rather than a difference in modeled influence.

Journey B also has 3 interactions, but Search appears twice. Social receives 33.33 USD and Search receives 66.67 USD after the interaction credits are combined. Journey C has 2 interactions, so Email and Social each receive 100 ÷ 2 = 50 USD. Counting channels instead of interactions would produce a different model.

Time decay attribution depends on the half-life

Time decay attribution assigns greater weight to interactions closer to the outcome and normalizes those weights within each journey. The half-life controls how quickly earlier contacts lose weight. This method emphasizes recency, but the chosen timing rule may understate early research or reward late interactions that would have occurred without additional marketing.

Interaction weight = 2 raised to the power of (−days before purchase ÷ half-life in days).

Interaction credit = journey revenue × interaction weight ÷ sum of journey weights.

For this worked example, use a half-life of 3 days. The weights at 7 days, 3 days, and purchase are approximately 0.198425, 0.5, and 1. Their sum is approximately 1.698425. Journey A therefore allocates 100 × 0.198425 ÷ 1.698425 = 11.68 USD to Search, 29.44 USD to Social, and 58.88 USD to Email after rounding.

Journey B uses the same timing. Social receives 11.68 USD and the combined Search interactions receive 29.44 + 58.88 = 88.32 USD. In journey C, Email receives 100 × 0.5 ÷ 1.5 = 33.33 USD and Social receives 66.67 USD. A different half-life would change these allocations without adding new evidence about the buyers.

Position based attribution emphasizes entry and closing

Position based attribution assigns chosen shares to the first and final interactions, then divides the remaining credit among middle interactions. It expresses a belief that discovery and closing deserve extra weight. Define the shares and the treatment of short journeys explicitly, because the model name alone does not determine a unique calculation.

In this worked example, allocate 40 percent to the first interaction, 40 percent to the last, and 20 percent to the middle. For a journey with only 2 interactions, split credit equally. A single eligible interaction would receive all credit. These rules keep allocation complete for each path length.

Journey A gives Search 100 × 0.40 = 40 USD, Social 100 × 0.20 = 20 USD, and Email 40 USD. Journey B gives Social 40 USD and Search 20 + 40 = 60 USD. Journey C gives Email and Social 50 USD each. Repeated Search interactions remain distinct before channel aggregation.

Data-driven attribution requires evidence beyond converting paths

Data-driven attribution estimates credit from patterns in a broader set of observed journeys and outcomes instead of applying fixed position rules. The converting paths shown here cannot identify those weights by themselves. Nonconverting paths, coverage, method, and model validation matter, so a data-driven allocation needs more explanation than a precise-looking revenue table.

For the worked comparison, assume a separately fitted model supplies the following interaction weights. Journey A uses Search 50 percent, Social 20 percent, and Email 30 percent. Journey B uses Social 60 percent, then Search 15 percent and Search 25 percent. Journey C uses Email 20 percent and Social 80 percent.

These are assumed weights for arithmetic, not fitted findings or DataMarketer output. Given those assumptions, journey B assigns 100 × 0.60 = 60 USD to Social and 100 × (0.15 + 0.25) = 40 USD to Search. The exercise demonstrates allocation after estimation. It does not claim to train a model from the displayed purchases.

When reviewing an actual model, ask which outcomes and eligible interactions it uses, how incomplete journeys affect coverage, and whether its conclusions remain stable across relevant periods. Compare it with simpler baselines. An elaborate model still depends on the quality and representativeness of the available evidence.

Attribution model comparison should preserve the revenue total

An attribution model comparison should hold purchases and eligible interactions constant, show the channel allocations, and reconcile every result to the same revenue total. Differences then describe the model's treatment of the recorded paths. They do not show additional revenue or prove that a channel would lose the credited amount if spending stopped.

The worked example allocations below list channel credit within each journey. All amounts are USD, and channels without listed credit receive zero.

Model
First click
Journey A
Search 100
Journey B
Social 100
Journey C
Email 100
Model
Last click
Journey A
Email 100
Journey B
Search 100
Journey C
Social 100
Model
Linear
Journey A
Search 33.33, Social 33.33, Email 33.34
Journey B
Social 33.33, Search 66.67
Journey C
Email 50, Social 50
Model
Time decay
Journey A
Search 11.68, Social 29.44, Email 58.88
Journey B
Social 11.68, Search 88.32
Journey C
Email 33.33, Social 66.67
Model
Position based
Journey A
Search 40, Social 20, Email 40
Journey B
Social 40, Search 60
Journey C
Email 50, Social 50
Model
Data-driven with assumed weights
Journey A
Search 50, Social 20, Email 30
Journey B
Social 60, Search 40
Journey C
Email 20, Social 80

Adding channel credit across the same worked journeys gives the totals below. For example, time decay Social credit equals 29.44 + 11.68 + 66.67 = 107.79 USD.

Model
First click
Search credit in USD
100
Social credit in USD
100
Email credit in USD
100
Total in USD
300
Model
Last click
Search credit in USD
100
Social credit in USD
100
Email credit in USD
100
Total in USD
300
Model
Linear
Search credit in USD
100
Social credit in USD
116.66
Email credit in USD
83.34
Total in USD
300
Model
Time decay
Search credit in USD
100
Social credit in USD
107.79
Email credit in USD
92.21
Total in USD
300
Model
Position based
Search credit in USD
100
Social credit in USD
110
Email credit in USD
90
Total in USD
300
Model
Data-driven with assumed weights
Search credit in USD
90
Social credit in USD
160
Email credit in USD
50
Total in USD
300

The assumed data-driven allocation gives Social more credit than the fixed rules. That is a property of the supplied weights. Before using a real difference to support a budget change, investigate the evidence behind it and the marginal economics of additional spending.

Choosing a marketing attribution model for budget reviews

Choose a marketing attribution model by matching its assumptions to the question, keeping a stable baseline, and inspecting disagreements before changing budgets. Attribution supports a contribution discussion, while causal budget decisions need additional evidence. Start with measurement quality so a missing interaction does not become a misleading conclusion about channel value.

  • Define the business outcome, eligible interactions, and attribution window.
  • Reconcile purchase or deal identifiers with the source of revenue.
  • Check consent behavior, cross-domain handling, and duplicate events.
  • Compare models on unchanged journeys and review the largest disagreements.
  • Record model changes separately from actual changes in spending or sales.
  • Use controlled experiments when the decision depends on incremental demand.

Begin with a ga4 audit and the ga4 audit checklist. Then use multi touch attribution alongside marketing dashboards to keep model assumptions visible during reviews. The calculating marketing roi guide explains why platform claims should not be added as separate sales.

DataMarketer provides first click, last click, and linear on Starter, with all six models on Growth and Scale. Use roi tracking to connect allocated outcomes with the cost definition, and check the marketing analytics platform plans for ongoing monitoring and analysis requirements.

Check tracking before comparing channel credit

Reliable attribution begins with knowing which interactions your measurement can represent, so run a free one-time ga4 audit of your site, review the tracking evidence, and use the findings to decide which measurement questions your team should resolve before interpreting a change in channel credit.

No card required. Read-only, your data stays yours.