industries

Pyvorin for Attribution Modelling

Multi-touch attribution and incrementality testing.

Published May 30, 2026

Multi-Touch Attribution

Shapley value and Markov chain attribution models.

def shapley_attribution(touchpoints, conversions):
    contributions = {}
    for touch in touchpoints:
        marginal = 0.0
        for subset in subsets_without(touchpoints, touch):
            v_with = conversion_rate(subset + [touch])
            v_without = conversion_rate(subset)
            marginal += v_with - v_without
        contributions[touch] = marginal / factorial(len(touchpoints))
    return contributions

Incrementality Testing

A/B holdout and geo-lift experiments for causal inference.

Time Decay Models

Weight recent touchpoints more heavily in attribution.