Marketing Attribution (Markov Chain and Multi-Touch Models)
Find out which channels really drive conversions. Paste customer journeys such as “Social > Email > Paid Search”; the Markov chain model credits each channel by how many conversions would be lost without it, and the results are compared with the usual rule-based models.
Updated · By Bibin XavierData 238 × 4
| Pathtext · 238 levels | Conversionsnumeric | Non_Conversionsnumeric | Revenuenumeric |
|---|---|---|---|
| Paid_Search | 33 | 1088 | 2354 |
| Organic | 21 | 915 | 1696 |
| Social | 8 | 856 | 557 |
| Display | 5 | 652 | 439 |
| 26 | 574 | 1922 | |
| Direct | 28 | 453 | 2031 |
| Organic > Paid_Search | 6 | 107 | 527 |
| Paid_Search > Social | 4 | 108 | 328 |
Variables and options
Results
238 rows · example dataAttributed conversions by model
| Channel | Markov chain | First touch | Last touch | Linear | Position-based (40/20/40) | Time decay |
|---|---|---|---|---|---|---|
| Paid Search | 106.1 (23.4%) | 128.0 (28.3%) | 107.0 (23.6%) | 116.1 (25.6%) | 116.6 (25.7%) | 114.2 (25.2%) |
| Organic | 92.9 (20.5%) | 85.0 (18.8%) | 95.0 (21.0%) | 86.4 (19.1%) | 88.4 (19.5%) | 87.7 (19.4%) |
| 85.5 (18.9%) | 90.0 (19.9%) | 95.0 (21.0%) | 94.9 (21.0%) | 93.8 (20.7%) | 95.2 (21.0%) | |
| Direct | 63.3 (14.0%) | 70.0 (15.5%) | 71.0 (15.7%) | 69.7 (15.4%) | 70.2 (15.5%) | 70.0 (15.4%) |
| Social | 57.6 (12.7%) | 50.0 (11.0%) | 44.0 (9.7%) | 49.5 (10.9%) | 48.3 (10.7%) | 48.7 (10.7%) |
| Display | 47.6 (10.5%) | 30.0 (6.6%) | 41.0 (9.1%) | 36.3 (8.0%) | 35.7 (7.9%) | 37.3 (8.2%) |
| Total | 453.0 | 453.0 | 453.0 | 453.0 | 453.0 | 453.0 |
Note. Markov chain: first-order model with states for each channel plus start, conversion and null; credit is proportional to each channel’s removal effect. Position-based gives 40% to the first and last touch and splits 20% across the middle. Time decay halves a touch’s weight every 2.00 touches before the conversion.
Markov chain removal effects
| Channel | P(conversion) without channel | Removal effect | Share of credit | Attributed value |
|---|---|---|---|---|
| Paid Search | 3.78% | 33.4% | 23.4% | 8,344 |
| Organic | 4.02% | 29.3% | 20.5% | 7,307 |
| 4.15% | 26.9% | 18.9% | 6,722 | |
| Direct | 4.55% | 20.0% | 14.0% | 4,981 |
| Social | 4.65% | 18.1% | 12.7% | 4,527 |
| Display | 4.83% | 15.0% | 10.5% | 3,741 |
Note. Baseline probability of conversion from the start state: 5.68%. Removal effect = 1 − P(conversion without the channel) / baseline.
Share of conversions by attribution model
Transition probabilities (from row to column)
Interpretation
The Markov model gives the most credit to Paid Search (23.4% of conversions): removing it would cut conversions by 33.4%. Attribution shows how credit flows through observed journeys; incrementality tests (geo or holdout experiments) are needed to prove causal impact.
How to cite this tool
Using these results in a thesis, journal article, report or class assignment? Please cite this free tool so others can find it. It keeps the site free.
APA 7
Xavier, B. (2026). Marketing Attribution (Markov Chain and Multi-Touch Models) [Web application]. FreeStatisticalTools.com. https://freestatisticaltools.com/marketing-attribution-markov-chain/
BibTeX
@software{xavier_attributionmodel_2026,
author = {Xavier, Bibin},
title = {Marketing Attribution (Markov Chain and Multi-Touch Models)},
publisher = {FreeStatisticalTools.com},
year = {2026},
url = {https://freestatisticaltools.com/marketing-attribution-markov-chain/},
note = {Web application}
}Suggested sentence for your methods section: “The analysis was carried out with the free Marketing Attribution (Markov Chain and Multi-Touch Models) tool on FreeStatisticalTools.com (Xavier, 2026).”
What is marketing attribution?
Multi-touch attribution distributes credit for conversions across the channels in each customer journey. This tool builds a first-order Markov chain from your paths and credits each channel by its removal effect, and compares the result with first-touch, last-touch, linear, position-based and time-decay attribution, for conversions and conversion value.
When to use marketing attribution
Use multi-touch attribution to understand how channels work together along the customer journey, to compare data-driven (Markov) credit with rule-based models such as last click, and to inform budget discussions.
Assumptions
- Journeys are complete and correctly stitched across devices; missing touches bias the results.
- The first-order Markov model assumes the next step depends only on the current channel.
- Attribution is descriptive: it allocates credit, it does not prove that a channel caused a conversion.
How to set up your data
One row per distinct path, with the channels in order separated by “>” (for example Social > Email > Paid Search), the number of conversions on that path, and optionally the number of journeys that did not convert and the conversion value.
The attribution problem
Most customers interact with a brand several times before they convert: they see a social ad, search for the product, click a promotional email and finally type the website address directly. Which channel deserves credit for the conversion? Marketing attribution models answer this question by distributing each conversion (and its value) across the touchpoints in the customer’s journey. The answer matters because budgets follow credit: a model that gives everything to the last click starves the channels that create demand in the first place.
Rule-based attribution models
The tool computes the five most common rule-based models side by side:
- First touch: 100% of the credit to the first channel in the path. It rewards channels that start journeys (awareness).
- Last touch: 100% to the last channel before conversion. For years the default in analytics tools, it rewards channels that close journeys, such as branded search and direct visits.
- Linear: equal credit to every touch in the path, counting repeated touches separately.
- Position-based (U-shaped, 40/20/40): 40% to the first touch, 40% to the last, and the remaining 20% shared among the middle touches. Paths with two touches split 50/50.
- Time decay: touches closer to the conversion get more credit; a touch’s weight halves every h touches before the conversion (the half-life you set, by default 2).
These models are easy to explain, but the weights are arbitrary choices, not estimates from data.
Data-driven attribution with a Markov chain
The Markov chain model (Anderl, Becker, von Wangenheim and Schumann, 2016) treats customer journeys as random walks between states. Each channel is a state, with a start state where every journey begins and two absorbing end states: conversion and null (journey ends without converting). From the observed paths, the tool counts how often customers move from each state to each other state, giving a transition probability matrix (shown as a heatmap). Solving the absorbing Markov chain gives the overall probability that a journey starting at the start state ends in conversion.
The credit for each channel comes from its removal effect: the tool removes the channel from the graph (every transition into it now leads to the null state) and recomputes the conversion probability. If conversions would fall from 5.7% to 3.8% without paid search, its removal effect is 1 − 3.8 / 5.7 = 33%. Removal effects are normalised to sum to 100% and multiplied by the total conversions (and value) to give attributed conversions. Channels that sit on many converting paths, whether at the start, middle or end, get credit in proportion to how indispensable they are. The results match the R package ChannelAttribution’s first-order Markov model.
Worked example with the built-in data
The example contains 7,974 journeys summarised as 238 distinct paths across six channels, with 453 conversions (a 5.7% conversion rate) and their revenue. The Markov model gives the most credit to paid search (23.4% of conversions, removal effect 33%), followed by organic (20.5%) and email (18.9%). Compared with last-touch attribution, the Markov model gives more credit to social and display, which tend to appear earlier in journeys, and slightly less to direct and email, which tend to close journeys started elsewhere. Display, for instance, receives 9.1% of conversions under last touch but 10.5% under the Markov model.
Preparing path data
- One row per distinct path, with the channels in order separated by a character such as “>” (for example
Social > Email > Paid Search), the number of conversions on that path and, ideally, the number of journeys that followed the same path without converting. - Non-converting journeys are important: without them, the Markov model only sees successful journeys and cannot tell which channels lead to dead ends. The tool warns when they are missing.
- Add a value column (revenue or profit) to attribute value as well as conversions.
- Define channels at a useful level of detail (for example separate brand and non-brand search), but avoid dozens of tiny channels with few journeys.
- Many analytics platforms and CDPs can export path reports in this format; otherwise, build paths from session-level data by concatenating the channels of each user’s sessions up to the conversion.
Comparing models
Looking at all models together is often more informative than choosing one. Channels whose credit changes a lot between first touch and last touch play a distinct role in the funnel: introducers versus closers. If a channel gets far more credit from the Markov model than from last touch, it is an important assist channel that last-click reporting undervalues; cutting it may hurt more than last-click numbers suggest.
Limitations of all attribution models
- Attribution is not incrementality. Models allocate credit across observed touches; they do not show what would have happened without a channel. Branded search, for instance, often captures conversions that would have happened anyway. Geo experiments, holdout tests and marketing mix modeling measure causal impact.
- Tracking gaps. Cross-device journeys, cookie restrictions, offline touches (TV, outdoor, word of mouth) and ad views without clicks are often missing, which biases all models towards trackable digital channels.
- First-order Markov assumption. The next step depends only on the current channel, not the full history; higher-order models need much more data.
- Path definition. Results depend on the lookback window and how sessions are grouped into journeys.
Reporting
Report the data period, the number of journeys, paths and conversions, the channel definitions, and the credit assigned by each model, with the Markov removal effects. Example: “A first-order Markov chain attribution model of 7,974 journeys (453 conversions) attributed 23.4% of conversions to paid search (removal effect 33.4%), 20.5% to organic search and 18.9% to email.”
Glossary of attribution terms
- Touchpoint: an interaction between the customer and a marketing channel, such as an ad click or an email open.
- Path (journey): the ordered sequence of touchpoints before a conversion or the end of the lookback window.
- Lookback window: how far back touchpoints are counted before a conversion, often 30 to 90 days.
- Transition probability: the share of journeys at one channel that move next to another channel, to conversion or to null.
- Absorbing state: an end state of the Markov chain (conversion or null) that journeys cannot leave.
- Removal effect: the relative drop in conversion probability when a channel is removed from all journeys.
- Assist: a touch that is not the last before conversion; last-click models give assists no credit.
- Incrementality: the conversions that would not have happened without a channel, measured with experiments.
Key references: Anderl, Becker, von Wangenheim and Schumann (2016), International Journal of Research in Marketing; Shao and Li (2011), KDD; Kannan, Reinartz and Verhoef (2016), International Journal of Research in Marketing.
How to use this tool
- Enter your data. Paste columns from Excel, Google Sheets or SPSS with variable names in the first row, or upload a CSV or Excel file. The example data shows the expected layout.
- Choose the variables. Select the path (channels in order), conversions, non-converting journeys (optional) and conversion value (optional).
- Set the options. Fill in separator between channels and time-decay half-life (touches).
- Read the results. Results update automatically. Read the plain-English interpretation, then use Copy table to paste APA-style tables into Word and Copy for the results sentence.
How to report marketing attribution in APA style
Report the data period, number of journeys and conversions, and the credit (or share) each model assigns to every channel, highlighting the Markov removal effects.
Frequently asked questions
What is Markov chain attribution?
A data-driven model that treats journeys as transitions between channel states and credits each channel by how much conversions would fall if it were removed.
What is a removal effect?
1 − P(conversion without the channel) ÷ P(conversion with all channels). Removal effects are normalised to share out the conversions.
Why include non-converting journeys?
They show which channels lead to dead ends. Without them, the Markov model only sees successful paths.
What is position-based attribution?
A rule that gives 40% to the first touch, 40% to the last and shares 20% among the middle touches.
What data format is needed?
One row per distinct path with channels separated by “>”, the number of conversions and optionally non-conversions and value.
Does attribution measure incrementality?
No. It allocates credit across observed touches. Use experiments or marketing mix modeling to measure causal impact.
Related tools
Learn this method step by step in the free course Customer and Marketing Analytics, with exercises and a certificate.
Browse all categories
Data cleaning and preparation · Describe and explore · Compare means · Nonparametric tests · Correlation and regression · Bayesian statistics · Categorical data · Reliability and agreement · Multivariate analysis · Structural equation modeling · Econometrics and time series · Panel data and causal inference · Marketing research · Marketing analytics · Survival, clinical and meta-analysis · Study planning and calculators · PLS-SEM