Steady-State Kinetics Designer

Design a Michaelis-Menten experiment, simulate raw data, compare linearizations.

Mode

Design the experiment

Pick the enzyme's true properties (Vmax, Km) — these are the values you'd be trying to measure in lab. Then choose your substrate concentrations, replicates, and how noisy the assay is. Click Run experiment to simulate the data. Set the underlying kinetic parameters and the experimental design (substrate range, replicates, noise model). Run to simulate v0 measurements. v = Vmax[S] / (Km + [S]). Observation model: vobs = v + ε with ε ~ N(0, σ_add² + (CV·v)²) per replicate, optionally disabled.

True kinetic parameters
Vmax (μM/s)
Km (μM)
[E]total (μM)
Substrate series
[S]min (μM)
= 0.10× Km
[S]max (μM)
= 20× Km
# of different [S] 8
Spacing
Sampling
Replicates 3
# pts / progress curve 50
Vmax
Km
[E]total
kcat
kcat is the turnover number — how many substrate molecules each enzyme converts per second when fully saturated. It equals Vmax ÷ [E]total. Real enzymes range from ~1 s⁻¹ (slow) to ~10⁵ s⁻¹ (catalase, very fast). kcat = Vmax / [E]total. The catalytic efficiency kcat/Km is the second-order rate constant for E + S at low [S]. kcat/Km sets the diffusion-limited regime; ~10⁸–10⁹ M⁻¹s⁻¹ is the diffusion ceiling.
kcat/Km
Status No data — set parameters and run
Seed
How v0 is computed: for each substrate concentration, the simulator generates a noisy progress curve over the chosen window (set on the Progress Curves tab) and v0 is the slope of an OLS linear fit through those points. Configure measurement noise on the Progress Curves tab.

Progress curves

One panel per substrate concentration. Each panel shows the noisy raw measurements ([P] over time) and the linear regression line whose slope is the v0 that feeds the next two tabs. Choose how long each assay runs — by % conversion or by a fixed time — and watch how that choice changes the recovered parameters. Each panel: simulated noisy [P](t) measurements + OLS linear fit. v0 = fit slope. Duration per curve is set either by target % conversion (default 7%) or by a fixed manual time. v0 derived from OLS slope of [P] vs t over the chosen window. Per-curve duration via t = (S0 − Starget + Km·ln(S0/Starget))/Vmax (closed-form integrated MM) when in % mode.

Measurement noise
σadd (% [S]0) 1.0
CV (%) 3.0
Run an experiment first to see progress curves.
Duration
Sets the per-curve assay duration as the time needed to reach the chosen % substrate conversion. Slide toward 99.9% to see the full time course (curves bend; v0 from linear fit gets badly biased).
% conversion 7.0%
Display
Show
Linear fit
Why this matters: v0 is now the slope of the linear fit through the noisy points within your chosen window. A short window (small % conversion) gives a more accurate v0 but is statistically noisy because few points are sampled before significant conversion. A long window has more points but the curve flattens as substrate depletes, biasing the slope downward. Choosing duration well is half of designing a good kinetics experiment.

Initial-rate plots

The same v0 data, plotted four different ways. Each plot is fit by a different method. Watch how Lineweaver-Burk over-weights the noisy low-[S] points — that's why nonlinear fitting is the modern standard. Same v0, four projections. Linearizations fit by ordinary least squares; the MM panel uses Gauss-Newton nonlinear regression. Note OLS on transformed variables propagates noise non-uniformly; LB is the worst offender.

Michaelis-Menten

data nonlinear fit truth

Lineweaver-Burk

1/[S], 1/v OLS fit truth

Hanes-Woolf

[S], [S]/v OLS fit truth

Eadie-Hofstee

v/[S], v OLS fit truth
Truth overlay
Show truth
Reveals the true Vmax, Km, and the dashed gold "truth" curve on each plot. Compare the fits to the truth.
Replicates
Show
Error bars
Bars appear in "Means only" mode (n ≥ 2). SD shows the spread of individual replicates around the mean; SEM = SD/√n shows how precisely the mean was estimated.
Reading the plots: On the MM plot, Vmax is the asymptote and Km is the [S] at half-max. On Lineweaver-Burk, the y-intercept = 1/Vmax and the x-intercept = -1/Km. The other two have their own geometry — see the axis labels. MM: asymptote = Vmax, half-max at [S] = Km. LB: y-int = 1/Vmax, x-int = -1/Km. HW: slope = 1/Vmax, x-int = -Km. EH: y-int = Vmax, slope = -Km. MM/LB/HW/EH parameter geometry as standard. EH plot has vi on both axes — error correlation inflates apparent fit quality.

Recovered parameters

Each fitting method gives its own estimate of Vmax and Km. The "truth" column is hidden by default — click Reveal truth on the Plots tab to see how close each method got. Estimates from each method, with % error vs truth (when revealed). Repeat with new seeds to see variability. Reseed and watch the variance of each estimator. LB tends to be biased and high-variance; nonlinear regression is approximately unbiased and minimum-variance for Gaussian noise.

Truth Nonlinear MM Lineweaver-Burk Hanes-Woolf Eadie-Hofstee
Vmax (μM/s)
Km (μM)
kcat (s⁻¹)
kcat/Km (M⁻¹s⁻¹)
R² of fit
About the ± values: Each ± shows the standard error of the fitted parameter — roughly, how precisely the experiment pinned that number down. Smaller ± means a tighter estimate. It is computed from the fit's residuals and is not the same as the % error vs truth. ± values are analytical standard errors derived from the fit's covariance matrix (σ̂²·(JᵀJ)⁻¹ for nonlinear, OLS formulas + delta-method propagation for linearizations). SEs use the delta method with zero-covariance approximation for the linearization fits; they're indicative but not exact. Bootstrap if you need calibrated CIs.
What to look for: With realistic noise, Lineweaver-Burk often gives the worst Km estimate even though its R² looks great. That's because the 1/v transformation amplifies noise at low [S] (where 1/[S] is largest), pulling the fit. The nonlinear fit weights every point fairly and is the gold standard. LB's R² is usually highest because the transformation is collinear at high 1/[S], yet its parameter estimates are the most biased. Compare Vmax recovery across methods over multiple seeds. R² of a transformed fit is not comparable to R² in the original v-vs-[S] space. Don't use R² to choose between methods.
cochranlearning.com · steady-state enzyme kinetics · v1.0