Kaplan-Meier Survival Estimator calculator
Generate Kaplan-Meier survival curves online. Upload time-to-event data with censoring to plot curves and calculate median survival times.
What it does
Estimates the probability of surviving past each point in time, using every subject for as long as they were observed and handling those still event-free at their last follow-up.
When to use it
Time-to-event data where some subjects have not had the event yet — the situation that makes ordinary averages of "time to event" wrong.
Cautions
- Censoring must be uninformative: subjects lost to follow-up must not be at different risk from those still observed. Dropping out because you got sicker breaks this.
- The right-hand tail rests on very few subjects still at risk and is unstable — always show the numbers-at-risk beneath the curve.
- Median survival is undefined if the curve never reaches 50%.
Alternatives
- Cumulative incidence — a competing event can prevent yours — Kaplan-Meier will overstate risk
- Restricted mean survival time — you want a single number to compare rather than a curve
How to read the output
- The step curve
- The estimated probability of still being event-free at each time. It steps down only when an event occurs; censored patients leave quietly and simply reduce the number still at risk. Everything here assumes censoring is non-informative: a patient still event-free when their record ends must be no more and no less likely to have the event than one who stayed under observation. Patients withdrawn BECAUSE they were deteriorating break that assumption, and no amount of data fixes it.
- The number-at-risk table
- How many patients remain under observation at each time point. It is the honest scale of the curve above it. Read the curve only as far as the numbers support. The right-hand tail is estimated from a handful of patients — a step there moves the line a long way and means almost nothing. If the table reads 4, 2, 1, do not quote survival at that time.
- Median survival
- The time at which the curve crosses 50%. It is undefined — correctly shown as not reached — whenever the curve never falls to 50%. That is a finding, not a failure, and it should be reported as 'median not reached' rather than substituted with the longest follow-up time.
How this calculator is validated · Which statistical test should I use?