A subscriber receives a retention promotion and stays. Did the promotion prevent churn, or would the subscriber have stayed anyway? Probability of necessity (PN) measures the chance that the promotion was necessary for staying, among subscribers who received it and stayed. It asks a counterfactual question about an observed outcome, not merely whether promotions and retention are associated. section 8.3.1
For a binary cause X and outcome Y, PN = P(Y_{X=0}=0 | X=1, Y=1). The condition X=1, Y=1 selects cases where the cause and outcome occurred. Y_{X=0}=0 means the outcome would not have occurred had the cause been absent. With X as promotion and Y as staying, PN is the probability that a promoted subscriber who stayed would instead have churned without the promotion. section 8.3.1
Keep the question distinct from nearby probabilities of causation:
- Probability of sufficiency (PS) starts with X=0, Y=0 and asks whether adding X would have produced Y. For promotions, it concerns subscribers who received no offer and churned. section 8.3.1
- Probability of necessity and sufficiency (PNS) asks whether the outcome would occur with X and not occur without it; unlike PN, it is not conditioned on an observed X=1, Y=1 case. section 10.6.2
PN is a counterfactual probability, so a table of observed treatments and outcomes does not by itself reveal it. An identifying assumption must rule out relevant counterfactual possibilities. Under monotonicity—adding the cause cannot turn a positive outcome into a negative one—the quantity can be expressed as PN = [P(Y=1) − P(Y_{X=0}=1)] / P(X=1, Y=1). The numerator isolates positive outcomes attributable to the cause under that assumption; the denominator restricts the result to cases where cause and outcome were observed. section 10.6.2
A randomized experiment can provide the intervention probability P(Y_{X=0}=1) needed by that expression. With observational data, an identification strategy such as backdoor or front-door adjustment is needed to infer intervention probabilities; monotonicity alone is not a license to substitute observed group rates. Before calculating PN, check the causal assumptions and that the conditioning group exists. section 10.6.2 section 13.1.3
From a cancellation question to a causal query
Suppose content is removed from a platform and a user unsubscribes. Set X=1 for content removal and Y=1 for unsubscribing. Then P(Y_{X=0}=0 | X=1, Y=1) asks for the chance that an affected user who unsubscribed would not have unsubscribed if the content had remained. This formalization states the question; it does not, by itself, identify an answer from the data. section 13.1.6
Be wary of a convincing formula or Python function that calculates PN directly from treatment–outcome counts without stating assumptions. One generated calculation appeared plausible and compiled, but was valid only under restrictive conditions involving monotonicity, absence of confounders, and equal treatment and outcome probabilities. Validate identification before trusting an implementation. section 13.1.7 section 13.2.4
