4PL IC50 Curve Fitter with Plateau Coverage Diagnostics
Fit a ten-concentration inhibitor series in duplicate and inspect how the measured concentration range supports its relative midpoint. This interactive reference uses synthetic curve C03, generated with known parameters and compared with an independent R implementation. The workspace calculates the fit from the inputs; the article explains when a numerical midpoint should be withheld.
Ten concentrations, two readings per concentration, additive seeded noise and freely fitted plateaus. This is a numerical reference experiment, not measured activity of a named compound. The requested eight-point design is not substituted for this independently checked ten-point fixture.
Read the curve before the potency
Start with the individual points, including observations slightly outside the nominal zero-to-one-hundred response range. Such values can arise from ordinary measurement scatter after normalisation and are not automatically invalid. Look for a top plateau, a transition and a lower plateau. C03 was constructed to span these regions, so it is a useful starting point for exploring what happens when the design is narrowed.
The default fit has four free parameters. The upper and lower levels describe the response scale, the midpoint locates the transition, and the Hill slope controls its steepness. These parameters are coupled. Removing concentrations near one asymptote can change the estimated plateau and move the midpoint even when the central points barely change. Examine the residual plot for systematic curvature rather than judging only the fitted line.
Interpret uncertainty as a statement about this design
A profile interval holds the midpoint at a trial value and refits the remaining free parameters. This can expose asymmetry that a local Wald approximation misses. A search that cannot resolve a bound is reported explicitly; it is not proof that a mathematically infinite interval was established. Weighting changes the objective and the app withholds intervals that its implemented assumptions do not support.
For an experimental report, record the concentration unit, exposure time, readout, normalisation, replicate structure and any excluded reading with its reason. The reference contains no claim about a named drug or cell line. If you replace it with your own data, preserve those conditions alongside the exported curve so that a later reader can distinguish an assay-specific IC50 from a binding constant or a clinical exposure target.
Equations and variables
Four-parameter logistic response
y = B + (T − B) / [1 + 10^((m − x)h)]
- y
- Expected response (response units)
- B, T
- Lower and upper response asymptotes (response units)
- x
- Base-10 logarithm of concentration in mol/L
- m
- Base-10 logarithm of the relative midpoint in mol/L
- h
- Signed Hill slope; positive for activation, negative for inhibition
Potency on a logarithmic scale
pIC50 = −log10(IC50 / 1 mol L⁻¹)
- IC50
- Relative midpoint concentration for an inhibitory response (mol/L)
- pIC50
- Negative logarithm of that molar concentration
Scope and limitations
- The displayed intervals apply to log C50. Separate confidence intervals for Top and Bottom are not supplied; plateau coverage is a design diagnostic.
- Relative C50 is halfway between the fitted plateaus, which may differ from zero and one hundred percent. It is not automatically the concentration giving fifty percent of vehicle.
- The unweighted interval model assumes independent errors with constant variance. Technical duplicates do not supply independent biological replication.
Sources and provenance
- Synthetic curves C03, C19 and C20 with independent R referencesMIT; original generated data
Inputs generated outside the fitted TypeScript implementation; historical expected outputs must be read with their method version.
- Published numerical verification inputs and independent referencesOriginal synthetic inputs; see individual fixture notices
The generated inputs are demonstrations, not experimental measurements. Existing versioned fixtures are retained unchanged.
- Ritz et al.: dose-response analysis using RCC BY; article reference
The independent oracle uses R drc offline; no GPL oracle code is shipped to the browser.
Technical questions
Why can a curve look smooth but have no reportable IC50?
A smooth line can extrapolate an unseen lower plateau while many combinations of plateau and midpoint fit the same observations. The reporting checks therefore inspect concentration coverage and uncertainty. More decimal places or a high fit statistic cannot replace observations on both plateaus.
Should I fix Top to 100 and Bottom to zero?
Only when those constraints express the experimental design and normalisation. Fixed values reduce the number of fitted parameters but can also force a biased midpoint. Keep a record of the controls and the reason for each constraint, and compare the unconstrained fit when it is identifiable.
Are the duplicate wells biological replicates?
No biological identity is assigned to these synthetic duplicates. In a real experiment, wells repeated within one preparation usually estimate technical scatter. Independent experiments require an explicit experimental unit and should retain their identities when potency is summarised across runs.
Connected workflows
- Serial dilution transfers and DMSO fractions
Prepare a concentration series before fitting its response.
- Bell-shaped dose-response analysis
Inspect a response that reverses at high concentration.
- Chemical structure and canonical SMILES
Record the tested chemical structure separately from its assay response.
- Morrison Tight-Binding Inhibitor Ki and Enzyme Titration
When a potent inhibitor approaches the enzyme concentration, review the tight-binding (Morrison) model instead of a plain midpoint.