Skip to content
Cover illustration for Multi-touch attribution (MTA) technical guide

Multi-touch attribution (MTA) technical guide

An engineering view of MTA: data architecture, model types, pipeline stages, identity, governance, and how to keep attribution trustworthy.

Jamie IsabelBy 6 min read

The difficult part of an attribution system is often the data pipeline before the model. Events arrive late, identifiers change, and CRM outcomes use different dates. Build a system that makes those differences visible before assigning credit.

This guide follows the decisions behind that pipeline: the outcome definition, source records, identity rules, transformations, and checks. If you are new to the subject, start with the beginner’s guide.

Define the conversion before the schema

Choose the business outcome the model will explain. A form submission, qualified lead, booked sale, and recognized revenue use different source records and dates. Name the source of record and the field that determines inclusion in the report.

Then define the unit of credit. If the model allocates deal value, decide how it handles reopened deals, partial refunds, currency, and later corrections. Those choices affect the result as much as the weighting formula.

The technical end-to-end MTA data architecture

Keep the pipeline in layers so a disputed total can be traced back to source records. Raw ingestion should preserve what arrived. Normalization and attribution rules belong in transformations that can be inspected and rerun.

Event intake trays, identity matching, warehouse shelves, and model outputs form separate stages of an attribution pipeline.
LayerResponsibilityUseful evidence
Raw ingestionPreserve source records and arrival timesSource IDs, extraction timestamps, and refresh logs
NormalizationStandardize types, timestamps, currencies, and channel fieldsMappings and excluded-record counts
Identity and pathsConnect eligible interactions to outcomesJoin keys, match rules, and unmatched records
AttributionApply versioned eligibility and credit rulesModel version, lookback window, and allocated credit
ReportingExpose the agreed metrics and limitationsDefinitions, data-through dates, and reconciliation notes

A warehouse can hold these layers without making them trustworthy automatically. The value comes from explicit rules and checks, not from moving the same unexplained spreadsheet logic into SQL.

Build paths with defensible identity rules

Start with identifiers that have a documented meaning in your sources. An event ID identifies an event. A contact ID identifies a CRM record. Neither necessarily represents every device or person in a buying group.

Record the method used for each connection. Keep deterministic matches separate from probabilistic assumptions, and leave unresolved outcomes visible. A missing join is information about coverage, not a reason to invent a match.

Consent and destination restrictions still apply when the processing moves to a server or warehouse. Only collect and use identifiers for permitted purposes. Review what leaves each system, including URLs, form values, and automatically attached properties.

Choose a model and record its assumptions

Rule-based models are useful starting points because the team can inspect how the credit was assigned. Statistical models can answer more complex questions, but they still depend on coverage, training data, and assumptions.

Model familyAllocation ruleWhat to question
First or last touchOne eligible interaction receives the creditWhich part of the path is omitted?
LinearEligible interactions receive equal weightAre repeated interactions inflating a channel’s share?
Time decayRecent interactions receive more weightDoes the decay rate fit the buying cycle?
Position basedSpecified milestones receive extra weightWhy should those milestones receive that weight?
Statistical or learnedWeights are estimated from the available dataWhat assumptions, coverage gaps, and validation support the result?

State the lookback window and rules for direct traffic, repeat touches, and channel classification. A model name without those details is not enough to reproduce the report.

Reconcile the allocation before using it

For an eligible outcome, the model’s fractional credits should add up to the intended total. Across outcomes, allocated value plus any explicitly unassigned value should reconcile to the source total under the same definitions.

Credit tokens from several journey paths are checked against an outcome ledger, with unmatched tokens kept in a separate tray.

Inspect individual journeys as well as aggregate totals. A many-to-many join can duplicate value while still producing a plausible-looking chart. Test repeated events, multiple conversions, missing identifiers, and late updates deliberately.

  1. Enforce uniqueness at the intended event and outcome grain.
  2. Check that eligible touchpoints precede the outcome and fall inside the lookback window.
  3. Verify credit sums at both outcome and reporting levels.
  4. Expose unmatched records and coverage changes.
  5. Compare a sample of paths with the original source records.
  6. Record model versions and review the effect of rule changes before release.

Set a refresh cadence the decision needs

A monthly budget review may not need real-time attribution. A daily operational workflow may need fresher data, but the upstream CRM could still update later. Set a cadence that reflects both the decision and the source behavior.

Plan for late events and corrected outcomes. Rerun the affected periods, retain enough provenance to explain changes, and tell report readers which periods are still settling.

Keep the model maintainable

Assign an owner for source changes, definitions, and model releases. Keep the tests and documentation beside the transformations so a new maintainer can understand why a rule exists.

When a model changes the channel story, show the comparison and the reason. A result that differs from last-click reporting is not automatically more accurate. It is another view that needs evidence and explanation.

For implementation examples, see GA4 attribution in BigQuery and the model comparison. For CRM-specific builds, see multi-touch attribution in HubSpot and multi-touch attribution in Salesforce. To scope the data work first, book a tracking audit.

Frequently asked questions

What is multi-touch attribution?

Multi-touch attribution assigns credit for an outcome across the eligible interactions on a path. Attribution describes observed paths; it does not establish causality on its own.

What does an MTA data pipeline include?

The pipeline is built in layers: raw ingestion preserves source records, normalization standardizes fields, identity and paths connect eligible interactions to outcomes, attribution applies versioned credit rules, and reporting exposes the agreed metrics.

What are the main MTA model types?

Rule-based models include first or last touch, linear, time decay, and position based, and the team can inspect how credit was assigned. Statistical or learned models estimate weights from data, but they depend on coverage, training data, and assumptions.

How do I check that MTA credit reconciles?

For each eligible outcome, the fractional credits should add up to the intended total. Across outcomes, allocated value plus any explicitly unassigned value should reconcile to the source total under the same definitions.

Updated October 16, 2026

Find what your tracking misses in about 10 seconds.

Run a Free Tracking Scan on your site and see every gap we find.