● your data , fitted Michaelis-Menten curve. Dashed lines mark Vmax and Km (where v = ½Vmax).
How to find Km and Vmax from data
Raw enzyme data is a curve, which is hard to fit by eye, so the classic trick is to linearize it. Taking reciprocals of the Michaelis-Menten equation gives 1/v = (Km/Vmax)(1/[S]) + 1/Vmax, which is a straight line (the Lineweaver-Burk plot). Fit a line to your reciprocal points: the y-intercept is 1/Vmax, so Vmax = 1/intercept, and the slope is Km/Vmax, so Km = slope × Vmax. This tool does that regression for you and draws the resulting curve back over your original data so you can see how well it fits.
Method note: this uses the Lineweaver-Burk (double-reciprocal) linear fit, which is the standard textbook approach and shows its work clearly. It weights low-[S] points more heavily; for a publication you would use nonlinear regression, but for coursework and checking a lab this matches what you're taught.
Curious why this fitter uses reciprocals instead of fitting the curve directly? See Michaelis-Menten vs. Lineweaver-Burk: when to use each.
Related tools: Enzyme kinetics simulator · all biochem tools.
Worked example: fitting the default 6-point dataset
Using the data preloaded in the tool above, reciprocals of both columns give the Lineweaver-Burk points:
| [S] | v | 1/[S] | 1/v |
|---|---|---|---|
| 0.5 | 21 | 2.000 | 0.0476 |
| 1 | 34 | 1.000 | 0.0294 |
| 2 | 49 | 0.500 | 0.0204 |
| 4 | 67 | 0.250 | 0.0149 |
| 8 | 79 | 0.125 | 0.0127 |
| 16 | 90 | 0.0625 | 0.0111 |
This matches what the calculator above shows for the preloaded data: Vmax ≈ 96.3, Km ≈ 1.81, R² ≈ 0.9992. The R² this close to 1 means these six points sit almost exactly on a Michaelis-Menten curve, real lab data is rarely this clean, so expect a somewhat lower R² on your own measurements.
FAQ
What does Km actually mean?
The substrate concentration at which velocity is half of Vmax. Low Km ≈ high apparent affinity for the substrate; high Km ≈ the enzyme needs more substrate around to work near its max speed.
Why linearize instead of fitting the curve directly?
The raw v vs [S] curve is a hyperbola, hard to fit by eye or by hand. Reciprocals turn it into a straight line a simple linear regression can solve, the standard method taught in coursework, even though nonlinear regression is more accurate for publication data.
What's a good R² here?
Above ~0.98 is typical for clean data. A noticeably lower R² usually means measurement noise, or that the enzyme doesn't follow simple Michaelis-Menten kinetics (allosteric/cooperative enzymes give a sigmoidal curve instead).
Why does Lineweaver-Burk overweight low-substrate points?
A reciprocal exaggerates small numbers: a small error in v at low [S] becomes a large error in 1/v. That's a known weakness of the double-reciprocal method, labs preparing publication data often fit the untransformed curve with nonlinear regression instead.
I have Km and Vmax, what's next, kcat or kcat/Km?
Vmax depends on how much enzyme was in your assay, so it isn't directly comparable between experiments. Dividing by the total enzyme concentration gives kcat (turnover number, in s⁻¹), a property of one enzyme molecule. Going further, kcat/Km (the specificity constant) combines turnover speed with binding affinity into the single number most exam questions actually want when they ask how "efficient" an enzyme is. See the enzyme kinetics simulator for a live kcat/kcat-Km calculator built on exactly the Km and Vmax you just fit here.
Practice problems
1. Fit this data: (1, 10), (2, 17), (4, 25), (8, 32), (16, 36). Find Vmax, Km, and R².
Show answer
2. Fit this noisier data: (2, 15), (5, 28), (10, 38), (20, 45), (40, 50). Find Vmax, Km, and R².