Attribution is the process of assigning credit to the marketing touchpoints that led to a conversion.
A typical customer journey involves multiple touchpoints:
Day 1: Sees Meta ad (impression)
Day 3: Clicks Google ad → visits site
Day 5: Clicks Meta retargeting ad → visits site
Day 7: Direct visit → purchases
Question: Which channel gets credit for the sale?
| Model | Meta (Day 3) | Google (Day 3) | Meta (Day 5) | Direct |
|---|---|---|---|---|
| Last-click | 0% | 0% | 0% | 100% |
| Last paid click | 0% | 0% | 100% | 0% |
| First-click | 100% | 0% | 0% | 0% |
| Linear | 25% | 25% | 25% | 25% |
Each model gives a different answer. None of them are correct.
TrustData uses Data-Driven attribution, which:
Data-Driven attribution uses your actual conversion data to answer: "What is each channel's fair share of the credit?"
For marketing, this translates to: "What is each channel's fair contribution to the conversion?"
Total conversion value: $100
Without any marketing: $0 expected value
With Google only: $40 expected value
With Meta only: $30 expected value
With both: $100 (actual conversion)
Data-Driven calculation:
- Google's marginal contribution: ($40 - $0) + ($100 - $30) / 2 = $55
- Meta's marginal contribution: ($30 - $0) + ($100 - $40) / 2 = $45
Result: Google gets 55%, Meta gets 45%
This is mathematically provable to be the only "fair" way to distribute credit.
TrustData runs attribution daily:
Events → Sessionization → Path Construction → Data-Driven Calculation → Attribution Table
Group events into sessions:
Build the customer journey:
user_123:
session_1: google/cpc → pageview → product_view
session_2: meta/paid_social → pageview → add_to_cart
session_3: direct → pageview → purchase
For each conversion, calculate channel contributions using the dbt Fractribution model.
Store results for querying:
| conversion_id | channel | touchpoint_position | credit |
|---|---|---|---|
| conv_123 | google/cpc | 1 | 0.55 |
| conv_123 | meta/paid_social | 2 | 0.35 |
| conv_123 | direct | 3 | 0.10 |
Credit is attributed at multiple levels:
| Level | Example |
|---|---|
| Channel | google, meta, tiktok |
| Source/Medium | google/cpc, meta/paid_social |
| Campaign | summer_sale_2024 |
| Ad Group | us_25_34_interest |
| Ad | video_creative_1 |
| Keyword | buy widgets online |
Why TrustData numbers differ from ad platform dashboards:
| Aspect | Ad Platforms | TrustData |
|---|---|---|
| View-through | Included (7+ day window) | Click-only |
| Cross-device | Modeled | First-party matched |
| Multi-touch | Last-click (usually) | Data-Driven |
| Cross-platform | Single platform | All platforms |
TrustData shows the unified truth across all channels, while ad platforms show their own optimistic view.