Two hundred and fifty patients, forty-five relapses and a hundred and eighteen deaths from other causes. The cumulative incidence of relapse is 0.282690. Treating those deaths as censoring — which is what 1 minus Kaplan-Meier does — gives 0.687023 instead: 2.43 times too high, overstating by 40.4 percentage points. The error is not statistical. Censoring asserts the subject is still at risk and will relapse later if followed long enough, and a patient who has died will not. The two naive estimates across both causes sum to 1.544, which is already impossible.
250 subjects · 2 causes · 87 censored
Cumulative incidence 0.282690 — the naive estimate says 0.687023
The naive estimates across all 2 causes sum to 1.544208, which is more than the probability that exists. Each is computed as though the other causes did not occur, so each borrows the same subjects. The correct estimates sum to 0.955353, and adding the 0.044647 still event-free gives exactly 1.0000000000.
Cumulative incidence
0.28269
relapse
Naive 1 − KM
0.68702
2.430× the correct value
Naive estimates sum to
1.54421
more than 100% — impossible
Total probability
1.0000000000
incidences plus survival — must be 1
Every cause, both ways
Correct and naive cumulative incidence for each cause, with the overstatement
Cause
Events
Cumulative incidence
Naive 1 − KM
Overstated by
relapse
45
0.28269
0.68702
0.40433
death in remission
118
0.67266
0.85718
0.18452
Still event-free
87
0.04465
—
—
Total
250
1.00000000
1.54421
impossible
The correct column plus the survival row sums to exactly 1, which it must for any data whatsoever — every subject ends up in exactly one of those states. The naive column has no such constraint, which is the plainest evidence it is not estimating a probability.
The two curves diverging
Cumulative incidence and the naive estimate at each event time
Time
At risk
Events
Competing
Incidence
Naive
Gap
0.03
249
0
1
0.00000
0.00000
0.00000
0.28
227
0
1
0.01637
0.01666
0.00029
0.67
204
0
1
0.04190
0.04373
0.00184
0.98
183
0
2
0.06819
0.07257
0.00438
1.52
160
0
1
0.08663
0.09399
0.00735
1.86
145
0
1
0.10088
0.11153
0.01065
2.20
128
1
0
0.12531
0.14373
0.01842
2.61
114
0
1
0.13028
0.15052
0.02024
3.09
99
0
1
0.13028
0.15052
0.02024
3.84
81
1
1
0.14677
0.17910
0.03233
4.59
59
0
1
0.15283
0.19066
0.03783
5.67
40
0
1
0.17380
0.23919
0.06539
8.19
23
1
0
0.20040
0.32664
0.12624
12.34
3
0
1
0.28269
0.68702
0.40433
The gap opens wherever competing events occur and never closes. The correct estimator multiplies each hazard contribution by the overall survival — the chance of still being event-free by any route — while the naive one uses a survival that pretends the competing events were simply lost to follow-up.
This distinction is about estimation, not testing. Comparing cumulative incidence between groups needs Gray’s test rather than the log-rank test, and a Cox model on cause-specific hazards answers a different question from one on the subdistribution hazard.
Both estimators Probabilities sum to 1 Every cause shown Estimation, not testing
What this tool shows
On the three-cause preset the naive estimates are 0.7406, 0.7991 and 0.8257 — and they sum to 2.365394. Two hundred and thirty-six per cent of the probability that exists. Each is computed as though the other causes never happened, so each borrows the same subjects. The correct cumulative incidences are 0.3041, 0.3580 and 0.3288, summing to 0.990942, and the 0.009058 still event-free brings the total to exactly 1. This is not a bias to be corrected; it is an estimate of something that is not a probability.
Aalen-Johansen cumulative incidence for every cause, with the naive 1 − Kaplan-Meier beside it
The identity that all cumulative incidences plus the survival sum to exactly 1, printed as a check
How much the naive estimate overstates, in percentage points and as a ratio
Both curves over time, so the divergence is visible at every event
A preset where the competing event is rare and the two nearly agree
Why the size of the error depends entirely on how common the competing events are
Both estimators Probabilities sum to 1 Every cause shown Estimation, not testing
Censoring says “still at risk”. A competing event says otherwise.
Updated 13 September 2026 · Works in any browser, no installation
When a subject can leave a study by more than one route, treating the other routes as censoring overstates the chance of the outcome you care about — sometimes by a factor of two or more. Censoring means “still at risk, we simply stopped watching”. A patient who has died of something else is not still at risk. The Aalen-Johansen estimator handles that correctly; 1 minus Kaplan-Meier does not, and the error grows with how common the competing event is.
At a glance
Formula shown
Cumulative incidence for cause k: CIFₖ(t) = Σ_{tᵢ ≤ t} S(tᵢ₋)·dₖᵢ/nᵢ, where S is the OVERALL survival free of every cause. The naive estimator uses a cause-specific survival instead, which treats other causes as censoring. Because the correct version weights by overall survival, the incidences across causes plus the final survival sum to exactly 1 — the naive estimates satisfy no such constraint and can sum above 1.
Scenario support
Estimating the chance of relapse when patients can die in remission, the chance of a device failing one way when it can fail another, the chance of a customer converting when they can churn first, and any setting where subjects leave by more than one route.
Educational estimate
Planning support from the values you enter — not professional advice.
The naive estimates can sum above 1
The strongest argument against 1 minus Kaplan-Meier is not that it is biased. It is that it produces numbers that cannot all be true at once.
Three causes, three naive estimates: 0.7406, 0.7991 and 0.8257. Each computed as though the other two did not exist.
They sum to 2.365394. Every subject would need to have 2.37 events, and each subject has exactly one.
The correct estimates sum to 0.990942 and the 0.009058 still event-free takes the total to exactly 1.
No rescaling fixes the naive set, because the individual figures are each estimating a hypothetical world in which the other causes were abolished — a quantity nobody wanted and which does not correspond to any patient’s experience.
What censoring actually asserts
The error is not arithmetic. It is a claim about the subjects, made silently by the choice of estimator.
Censoring a subject asserts they are still at risk. Kaplan-Meier redistributes their probability forward, as though they would eventually have the event if followed long enough.
For someone lost to follow-up that is reasonable. They moved away; their hazard continues.
For someone who has died of another cause it is false. They will never relapse, and no amount of follow-up will change that.
So the inflation is the estimator doing exactly what it was told. On the first preset that takes 0.282690 to 0.687023 — 2.43 times too high, and 40.4 percentage points of risk attributed to people who could not have had it.
How big the error is depends on the data
The second preset is the reason this mistake survives: much of the time it barely matters, and nothing in a naive output says which time you are in.
With eight competing events against a hundred and nineteen, the ratio is 1.0372. 0.732382 against 0.759661 — a gap of under three percentage points.
With a hundred and eighteen against forty-five it is 2.4303. Same design, same estimator, twenty times the error.
The driver is the ratio of competing events to events of interest, and it is entirely a property of the population rather than of the method.
Which is why both estimators are computed on every input here. The gap is a measurement, and a naive figure reported alone gives no way to know whether it is off by three points or forty.
The identity that checks the estimator
The correct estimator carries a constraint that makes it self-verifying, and the page prints it on every run.
Every subject ends in exactly one state: one of the causes, or still event-free.
So the cumulative incidences plus the final survival must sum to exactly 1. Not approximately — the estimator is constructed so the pieces partition the probability.
That holds for any data at all, with no distributional assumption, which is what makes it a usable check rather than a property to be assumed.
The verification suite asserts it to 1e-10 on sixty generated datasets, and separately asserts that with a single cause the two estimators agree bit-for-bit — because with nothing to compete, there is nothing to get wrong.
Two hazards, two questions
Modelling competing risks has the same fork as estimating them, and the two answer genuinely different questions.
The cause-specific hazard asks about the rate among those still at risk. It is what a Cox model fits when competing events are censored, and it is the right target for a question about biology or mechanism.
The subdistribution hazard keeps subjects who had a competing event in the risk set. Strange as a mechanism, and exactly right for a question about prediction.
Fine and Gray’s model fits the second and is the one whose coefficients correspond to cumulative incidence.
The practical rule: if the question is “what causes this”, use cause-specific; if it is “what is the chance this happens to me”, use the subdistribution — and report which.
Comparing groups needs a different test
Everything on this page is estimation. Comparing two groups brings the same problem back in a new place.
The log-rank test compares cause-specific hazards. Perfectly valid, and it does not test what the cumulative incidence curves show.
Gray’s test compares the cumulative incidence functions directly, which is what to use when the curves are what is being presented.
The two can disagree, and the disagreement is informative: a treatment can reduce the cause-specific hazard while raising the cumulative incidence, if it also keeps people alive long enough to have the event.
So a log-rank p-value under a cumulative incidence plot is a mismatch, and a common one. This page does not compute either test, and says so rather than offering the wrong one.
Reporting competing-risks data
Four items, and the first is what lets a reader judge how much the choice of estimator mattered.
Give the event counts by cause. The ratio between them determines the size of the error the naive estimator would have made.
Say which estimator you used. “Cumulative incidence” and “1 minus Kaplan-Meier” are different quantities and are often both called the first.
Report every cause, not just the one of interest. The others are what make the numbers add up, and their absence hides the constraint.
And match the test to the curve. A cumulative incidence plot with a log-rank p-value underneath is testing something the figure does not show.
Sources and methodology
References for the estimator and the modelling fork.
Method. The Aalen-Johansen cumulative incidence weights each cause-specific hazard contribution by the overall survival just before that time — the probability of still being free of every cause — which is what makes the estimates across causes partition the probability. The naive 1 minus Kaplan-Meier estimate is computed alongside for every cause, because the size of the error depends on the ratio of competing events to events of interest and nothing in a naive output reveals it. The verification suite asserts the partition identity to 1e-10 on sixty generated datasets, asserts that the naive estimate never falls below the correct one on the same sixty, and confirms that the naive estimates do sum above 1 on a majority of them. It separately asserts the degenerate case: with a single cause there are no competing events, so the two estimators must agree to 1e-12 — which they do on forty datasets. That engine is verified on every change against 128 assertions. The count and the per-case breakdown are published on the formula verification page.
Related calculators
Where this goes next:
Kaplan-MeierSurvival with censoring handled, and the naive count printed beside it: five events in twenty subjects give 25.0000% by the plain count and a 30.1202% cumulative incidence by Kaplan-Meier.
Cox RegressionProportional hazards by partial likelihood with hazard ratios, concordance, and the Schoenfeld residual test computed on every fit rather than offered as an extra.
Log-Rank TestObserved minus expected accumulated at every event time, so the crossing-hazards blind spot is visible: a running total that peaks at +3.2652 and ends at -1.4717 gives p = 0.458065.
Hazard RatioBoth standard formulas from one log-rank output — Peto one-step 3.1899 and O/E 2.6554 — with a note on which of them is guaranteed to agree with the p-value beside it.
Life TableThe actuarial estimator with the effective-at-risk column shown and Kaplan-Meier beside it: ten-unit intervals cost 1.3753 percentage points, one-unit intervals cost exactly zero.
Survival Sample SizeSchoenfeld's event requirement converted to an enrolment target, with the sensitivity to the hazard ratio and the power achieved at every event count.
An educational tool. This page estimates cumulative incidence and does not test for differences between groups — the log-rank test compares cause-specific hazards rather than cumulative incidence, and Gray’s test is the one that matches these curves. The cause-specific and subdistribution hazards answer different questions, and which is appropriate depends on whether the aim is mechanism or prediction.