IC50 and EC50 calculator with a four-parameter logistic fit
Paste concentrations and responses (with replicates) and the calculator fits a four-parameter logistic (Hill) curve on a log-concentration axis. It gives the relative IC50 or EC50 with its 95% confidence interval, the Hill slope, the top and bottom plateaus and R², plus the absolute IC50 when you normalise to 0% and 100% controls, with a chart and a CSV.
- What it does
- Fits a four-parameter logistic (Hill) dose–response curve to concentrations and responses and gives the IC50 or EC50 with its 95% CI, Hill slope, plateaus and R².
- Formula
- Example
- The built-in 9-concentration triplicate inhibition curve fits to a relative IC50 of 35.29 nM (95% CI 29.59–42.08 nM), Hill slope −1.19, R² = 0.9901.
Last updated
Loading IC50 calculator…
At a glance
| Model | Four-parameter logistic (Hill), fitted on log concentration |
|---|---|
| Fitting | Least squares, Levenberg–Marquardt (validated against SciPy) |
| Gives | Relative IC50/EC50 with 95% CI, Hill slope, top, bottom, R², absolute IC50 |
| Confidence interval | |
| Input | Concentrations with any number of replicates; pasted from Excel |
| Export | Chart as PNG or SVG; results as CSV |
| Runs in | Your web browser; nothing is uploaded |
| Price | Free, no account needed |
What it does
How to use the IC50 calculator
- Enter the dataType or paste each concentration with its replicate responses. Concentrations must be above zero; zero-drug wells are the untreated control.
- Choose the directionPick Inhibition for an IC50 (response falls with concentration) or Stimulation for an EC50 (response rises).
- Normalise if you have controlsEnter the 0% and 100% control responses and tick Normalise to scale the data to percent of control and get the absolute IC50.
- Decide on the plateausLeave top and bottom free if the data reach both plateaus; fix them (often 100 and 0 after normalising) if one is not reached.
- Read and exportRead the IC50 or EC50 with its 95% confidence interval and Hill slope, check the warnings, and download the chart and CSV.
How it works
The calculator fits the four-parameter logistic model, also called the Hill equation (Gadagkar and Call 2015), with the logarithm of the IC50 as a parameter:
Confidence interval. Standard errors come from the inverse of the information matrix scaled by the residual variance. The 95% interval of log IC50 is the estimate
Relative and absolute IC50. The relative IC50 is the fitted parameter: the concentration giving a response midway between the fitted top and bottom. The absolute IC50 is the concentration where the curve crosses the 50% control, the mean of the 0% and 100% controls (Sebaugh 2011). The calculator scales responses as
Sources: Ritz C, Baty F, Streibig JC, Gerhard D. Dose-response analysis using R. PLoS One 2015;10:e0146021, doi:10.1371/journal.pone.0146021. Sebaugh JL. Guidelines for accurate EC50/IC50 estimation. Pharm Stat 2011;10:128–134, doi:10.1002/pst.426. Gadagkar SR, Call GB. Computational tools for fitting the Hill equation to dose-response curves. J Pharmacol Toxicol Methods 2015;71:68–76, doi:10.1016/j.vascn.2014.08.006.
Worked example
The built-in example is a synthetic inhibition curve generated from Top 100, Bottom 4, IC50 40 nM and Hill slope −1.1, with nine concentrations (3000 nM down to 0.457 nM in 3-fold steps) in triplicate and random noise added.
With top and bottom free, the fit gives a relative IC50 of 35.29 nM (95% CI 29.59 to 42.08 nM), logIC50 1.548 ± 0.037, Hill slope −1.19 (−1.42 to −0.956), top 99.20 and bottom 6.30, with R² = 0.9901 from 27 points (23 degrees of freedom). The interval contains the true 40 nM.
Normalised to a 0% control of 2, 3 and 4 and a 100% control of 99, 100 and 101, the relative IC50 is unchanged at 35.29 nM, and the curve crosses 50% at an absolute IC50 of 36.92 nM. Fixing the top at 100 and the bottom at 0 on the raw data instead gives 41.30 nM (35.72 to 47.76 nM), Hill slope −1.00.
Frequently asked questions
How do I calculate IC50 from my data?
Enter each concentration with its responses (replicates in columns), leave out the zero-drug wells or use them as the 100% control, and fit the four-parameter logistic curve. The IC50 is read from the fitted curve, not from the nearest data point. Reading it by straight-line interpolation between the two points around 50% is only a rough check.
How do I convert IC50 to Ki?
For a competitive inhibitor of an enzyme, the Cheng–Prusoff equation gives
What is the difference between relative and absolute IC50?
The relative IC50 is the concentration giving a response halfway between the fitted top and bottom plateaus of the curve. The absolute IC50 is the concentration where the curve crosses 50% of control, the mean of the 0% and 100% assay controls (Sebaugh 2011). They agree only when the curve runs from exactly 100% to 0%.
Should I report the relative or the absolute IC50?
Following Sebaugh (2011): use the relative IC50 when the assay has no stable 100% control, or when the 50% control mean may be off by more than 5%. Use the absolute IC50 only when the 100% control is accurate and stable and the 50% control mean is within 5%.
How many concentrations do I need?
At least as many as free parameters (four), and in practice more. Sebaugh (2011) recommends reporting a relative IC50 only with at least two concentrations beyond each bend of the curve, and an absolute IC50 only with at least two concentrations predicted below 50% and two above.
How is the 95% confidence interval of the IC50 calculated?
The fit estimates log IC50 with a standard error from the scaled inverse information matrix; the interval is
What does the Hill slope mean?
It sets how steep the curve is. A slope of −1 (inhibition) or +1 (stimulation) is the standard one-site shape; a larger magnitude means a steeper curve. The sign only says whether the response falls or rises with concentration.
Should I fix the top and bottom?
Leave them free when your data reach both plateaus. If a plateau is not reached, a free fit can drift and the IC50 becomes poorly determined; fixing the top and bottom (often at 100 and 0 after normalising to controls) is the usual choice.
Why is concentration zero left out?
The curve is fitted against log concentration, and the log of zero is undefined. Zero-drug wells are your untreated control: tick Normalise and they are used as the 100% control for an inhibition assay or the 0% control for a stimulation assay.
Link to this tool
Using it in a protocol, lab wiki or course page? Copy a link or citation.
<a href="https://www.labcanvas.com/tools/ic50-calculator">IC50 calculator</a> (LabCanvas)LabCanvas. IC50 calculator [online tool]. https://www.labcanvas.com/tools/ic50-calculatorMake the dose–response figure
The LabCanvas Graph app fits the sigmoid, reports IC₅₀/EC₅₀ with confidence intervals and draws the curve for your paper. It opens with a worked example you can replace with your data.
Open the dose–response graph