Exponential Regression Calculator

Fit an exponential model y = ab^x to your data and predict future values.

Enter paired (x, y) data points to compute the exponential regression equation, R², and predictions.

Exponential Regression Calculator
Fit an exponential model y = ab^x to your data and predict future values.

Enter one pair per line, separated by a space or comma. Example: 1 2.5

About the Exponential Regression Calculator

Exponential regression is a curve-fitting technique that finds the best-fitting exponential function y = ab^x for a given set of data points. It is used when the data suggests exponential growth or decay — when plotting the data, the points appear to follow a J-shaped curve (growth) or a decreasing concave curve (decay). The exponential model is linear in its logarithm: taking the natural log of both sides gives ln(y) = ln(a) + x·ln(b), which is a linear equation in ln(y) and x. The fitting procedure uses the method of least squares applied to the linearized equation. Specifically, we minimize the sum of squared residuals in ln(y) space. This gives the formulas: ln(b) = [n·Σ(x·ln y) − Σx·Σ(ln y)] / [n·Σx² − (Σx)²] and ln(a) = [Σ(ln y) − ln(b)·Σx] / n, from which a = e^(ln a) and b = e^(ln b) are recovered. The model y = ab^x can be interpreted as follows. The coefficient a is the y-intercept: it represents the value of y when x = 0. The base b controls the rate of change: if b > 1, the model shows growth with a per-unit factor of b (e.g., b = 1.05 means 5% growth per unit increase in x). If 0 < b < 1, the model shows decay. The growth rate as a percentage is (b − 1) × 100%. The coefficient of determination R² measures how well the model fits the data on a scale from 0 to 1. An R² of 0.95 means that 95% of the variance in y is explained by the exponential model. R² values above 0.90 are generally considered a good fit for scientific data. The correlation coefficient R = √R² × sign(ln b) indicates the direction and strength of the exponential relationship. Important constraint: all y values must be positive for exponential regression because the logarithm of zero or a negative number is undefined. If your data contains non-positive y values, you may need to transform or shift the data, or consider a different regression model such as polynomial regression.

Examples

These examples illustrate exponential regression applied to biological, financial, and physical data.

Data PointsEquationScenario
(1,2), (2,4.1), (3,7.9), (4,16.2), (5,33.0)y ≈ 0.98 × 2.01^x, R² ≈ 0.999Bacterial colony doubling approximately every hour
(0,1000), (1,1050), (2,1102.5), (3,1157.6), (4,1215.5)y = 1000 × 1.05^x, R² = 1.000Perfect 5% compound interest growth; R² = 1
(0,100), (10,82), (20,67), (30,55), (40,45)y ≈ 100 × 0.981^x, R² ≈ 0.999Radioactive decay; b < 1 indicates exponential decay
(1971,2300), (1982,134000), (1993,3.1M), (2000,42M), (2011,2.6B)y fits exponential, R² ≈ 0.97Moore's Law: transistor count doubling approximately every 2 years

How to Use This Calculator

  1. Enter your data points in the text area — one pair per line, with x and y values separated by a space or comma (e.g., '1 2.5' or '1,2.5'). You need at least 3 data points.
  2. Ensure all y values are strictly positive (greater than zero) — the exponential regression algorithm requires taking logarithms of y.
  3. Optionally enter an x value in the Predict Y field to get a prediction from the fitted model.
  4. Click Calculate to see the regression equation y = ab^x, coefficients a and b, R², correlation R, and any requested prediction.
  5. Use the Quick Load buttons to load pre-built examples and explore how the regression equation is derived.

Frequently Asked Questions

What is exponential regression?
Exponential regression fits a curve of the form y = ab^x to a set of data points, where a is the initial value and b is the growth/decay factor per unit of x. It is used when the data grows or decays at a rate proportional to its current value. The fitting is done by linearizing the model via logarithms and applying ordinary least squares to the transformed data.
What do the coefficients a and b mean?
The coefficient a is the y-intercept — the predicted value of y when x = 0. The base b determines the multiplicative change in y per unit increase in x. If b = 1.1, the value of y increases by 10% for each unit increase in x. If b = 0.9, the value decreases by 10% per unit. The growth rate as a percentage is (b − 1) × 100%.
What does R² measure and what is a good value?
R² (the coefficient of determination) measures the proportion of variance in the original y values explained by the fitted exponential model. It ranges from 0 to 1, where 1 indicates a perfect fit. For scientific data, R² > 0.95 is excellent, 0.80–0.95 is good, and below 0.80 suggests the exponential model may not be appropriate and another model form should be tried.
Why must y values be positive?
The exponential regression algorithm linearizes the model by taking ln(y). The natural logarithm is only defined for strictly positive numbers — ln(0) is negative infinity and ln(negative number) is undefined in real arithmetic. If your data has non-positive y values, you may need to shift the data (add a constant to all y values), use a different model (polynomial, power law), or investigate whether the data follows exponential growth at all.
How is this different from linear regression?
Linear regression fits a straight line y = mx + b to data, assuming a constant rate of change. Exponential regression fits y = ab^x, assuming a constant proportional rate of change. To choose between them, plot your data on a linear scale (linear if straight line) and a semi-log scale (exponential if straight line on semi-log). You can also compare R² values, though R² from the two models is not directly comparable since exponential regression minimizes residuals in log space.
Can I use this calculator for exponential decay?
Yes. Exponential decay is a special case where 0 < b < 1. If b = 0.95, the quantity decreases by 5% per unit of x. The calculator handles both growth and decay automatically — you do not need to change any settings. Just enter your data points and the algorithm will determine the correct b value. Radioactive decay, drug concentration in the bloodstream, and cooling temperature all follow this pattern.