{
  "slug": "multi-touch-attribution-credit-calculator",
  "title": "Multi-Touch Attribution Credit Calculator",
  "heading": "Multi-Touch Attribution Credit Calculator",
  "category": "financial",
  "url": "https://www.revenuelab.fyi/toolbox/multi-touch-attribution-credit-calculator",
  "summary": "Split conversion credit across touchpoints with linear, time-decay, or U-shaped models.",
  "description": "Single-touch attribution — last click or first click — routinely misrepresents which channels actually drive a sale, because most buying journeys involve four to eight touches across search, social, email, and direct before conversion. This calculator takes the number of touchpoints in a path and the revenue from the converting order, then distributes credit under three common models: linear (equal credit to every touch), time-decay (more credit to touches closer to conversion, using a half-life you set), and U-shaped (40% to first touch, 40% to last touch, remaining 20% split across the middle). It outputs the dollar credit assigned to the first touch, last touch, and an average middle touch under each model so you can see how differently the same path gets valued. Time-decay tends to favor bottom-funnel retargeting and branded search, which is why teams that switch to it from last-click often see paid search 'lose' credit to display and email. U-shaped is a reasonable default when you believe both discovery and closing touches matter more than the middle nurture steps. None of these models is causally correct — they're accounting conventions — so pair the output with an incrementality test before reallocating real budget based on attributed credit alone.",
  "formula": "Linear = revenue ÷ touches. Time-decay weight_i = 0.5^((n−i)/halfLife), normalized to sum to 1. U-shaped = 40% first + 40% last + 20% ÷ (touches−2) each middle touch.",
  "dateModified": "2026-09-30",
  "run_url": "https://www.revenuelab.fyi/api/public/calc?tool=multi-touch-attribution-credit-calculator",
  "inputs": [
    {
      "id": "touches",
      "label": "Touchpoints in the converting path",
      "kind": "number",
      "hint": null,
      "default": 5,
      "unit": null,
      "min": 2,
      "max": 20
    },
    {
      "id": "revenue",
      "label": "Revenue from the conversion",
      "kind": "number",
      "hint": null,
      "default": 1000,
      "unit": "$",
      "min": 0,
      "max": null
    },
    {
      "id": "halfLife",
      "label": "Time-decay half-life (touches)",
      "kind": "number",
      "hint": null,
      "default": 2,
      "unit": null,
      "min": 0.5,
      "max": 10
    }
  ],
  "outputs": [
    {
      "id": "decayLast",
      "label": "Time-decay credit to last touch",
      "format": "currency",
      "hint": null,
      "primary": true
    },
    {
      "id": "linearEach",
      "label": "Linear credit per touch",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "decayFirst",
      "label": "Time-decay credit to first touch",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "uFirst",
      "label": "U-shaped credit to first touch",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "uLast",
      "label": "U-shaped credit to last touch",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "uMiddleEach",
      "label": "U-shaped credit per middle touch",
      "format": "currency",
      "hint": null,
      "primary": false
    }
  ],
  "worked_example": {
    "inputs": [
      "Touchpoints in the converting path: 5",
      "Revenue from the conversion: 1000 $",
      "Time-decay half-life (touches): 2"
    ],
    "outputs": [
      "Time-decay credit to last touch: $355.79",
      "Linear credit per touch: $200.00",
      "Time-decay credit to first touch: $88.95",
      "U-shaped credit to first touch: $400.00",
      "U-shaped credit to last touch: $400.00",
      "U-shaped credit per middle touch: $66.67"
    ]
  },
  "how_to": {
    "title": "How to use this",
    "steps": [
      "Enter touchpoints in the converting path.",
      "Enter revenue from the conversion ($).",
      "Enter time-decay half-life (touches).",
      "Read your time-decay credit to last touch on the right — it updates as you type.",
      "Hit Share to keep the scenario or send it to someone."
    ]
  },
  "scenarios": [
    {
      "name": "Conservative",
      "description": "Lower-end numbers — what if things land soft?",
      "values": {
        "touches": 3,
        "revenue": 600,
        "halfLife": 1.2
      }
    },
    {
      "name": "Typical",
      "description": "Defaults — the most common real-world setup.",
      "values": {
        "touches": 5,
        "revenue": 1000,
        "halfLife": 2
      }
    },
    {
      "name": "Ambitious",
      "description": "Higher-end numbers — what if things really pop?",
      "values": {
        "touches": 8,
        "revenue": 1600,
        "halfLife": 3.2
      }
    }
  ],
  "limitations": [
    "Results are estimates before tax, fees, and inflation unless an input explicitly covers them.",
    "Rates are treated as fixed for the whole period — variable-rate products will drift from this projection.",
    "This is educational maths, not financial advice. Check anything contractual with the lender or your accountant."
  ],
  "faq": [
    {
      "q": "Which model should I default to?",
      "a": "There's no universally correct choice, but time-decay with a half-life of 5-7 days is a reasonable default for most B2C paths, and U-shaped works better for longer B2B cycles where the initial discovery channel and the final closing touch both matter more than nurture steps in between."
    },
    {
      "q": "Why does last-click overweight bottom-funnel channels?",
      "a": "Last-click gives 100% of credit to whatever touch happened right before conversion, which is disproportionately branded search, retargeting, and direct traffic. Those channels often just catch demand that upper-funnel channels created, so last-click systematically starves the channels doing real discovery work."
    },
    {
      "q": "Is any attribution model as good as an incrementality test?",
      "a": "No. All multi-touch models are accounting rules for splitting credit among observed touches, not causal measurement. Two identical paths can get different credit depending on the model you pick, and none of them tell you what would have happened without a given touch. Use them for a first cut and validate with holdout tests before shifting real budget."
    },
    {
      "q": "How do I pick a half-life for time-decay?",
      "a": "Match it to your typical path length. A path with 5 touches over 10 days might use a half-life of 3 days, decaying credit meaningfully but not eliminating early-touch credit entirely. Shorter half-lives concentrate credit near the end; longer half-lives behave closer to linear."
    }
  ],
  "related": [
    "https://www.revenuelab.fyi/toolbox/incrementality-lift-calculator",
    "https://www.revenuelab.fyi/toolbox/attribution-window-shift-calculator"
  ],
  "license": "CC-BY-4.0",
  "citation": "RevenueLab — Multi-Touch Attribution Credit Calculator (https://www.revenuelab.fyi/toolbox/multi-touch-attribution-credit-calculator)"
}