Exponential Regression Calculator

Fit Y = ae^(kx) or Y = abˣ with R², doubling time/half-life, growth rate, log-scale residuals, and growth projection table.

Exponential Regression Calculator

Comma-separated
Y values must be positive
Equation
Y = 9.9742 · 1.818870ˣ
ln(a) = 2.3000, k = 0.598216
a (initial value)
9.974182
Y-intercept at X=0
b (base)
1.818870
Growth (exponential increase)
Growth rate
81.89% per unit X
Increasing
Doubling time
1.1587
Y doubles every 1.16 X units
R² (original)
0.999938
Fit on Y scale
R² (log scale)
0.999985
Fit on ln(Y) scale — primary quality measure
Std. Error
3.3527
In original Y-units
Prediction: Y(10) = 9.9742 · e^(0.598216 × 10) = 3,952.7059

Residual Table

XYPredictedResidualLog ResidualFit
0.0010.009.970.030.0026
1.0018.0018.14-0.14-0.0078
2.0033.0033.000.000.0001
3.0060.0060.02-0.02-0.0003
4.00110.00109.170.830.0076
5.00200.00198.561.440.0072
6.00360.00361.15-1.15-0.0032
7.00650.00656.88-6.88-0.0105
8.001,200.001,194.795.210.0044

Growth/Decay Projection

XProjected YRange
0.009.97Interpolation
0.8016.10Interpolation
1.6025.98Interpolation
2.4041.92Interpolation
3.2067.65Interpolation
4.00109.17Interpolation
4.80176.17Interpolation
5.60284.29Interpolation
6.40458.78Interpolation
7.20740.37Interpolation
8.001,194.79Interpolation
8.801,928.11⚠ Extrapolation
9.603,111.53⚠ Extrapolation
10.405,021.29⚠ Extrapolation

Exponential Model Reference

PropertyThis ModelMeaning
TypeExponential GrowthUnbounded increase
Rate constant (k)0.598216Continuous rate per X-unit
Growth factor (b)1.818870Multiplicative factor per X-unit
% change per unit81.89%Discrete period rate
Doubling time1.1587Time to double
Initial value (a)9.9742Y at X = 0
Planning notes, formulas, and examples

About the Exponential Regression Calculator

Exponential regression fits Y = ae^(kx) — the natural model for phenomena that grow or decay by a constant percentage. Bacteria doubling every hour, radioactive isotopes halving every year, investments compounding annually — all follow exponential curves. This calculator finds the rate constant k, initial value a, doubling time (or half-life), and R² from your data.

The fitting method transforms Y to ln(Y) and applies linear regression on the log scale, then converts back. You get R² on both the original Y scale and the log scale. The log-scale R² is the primary quality measure since that's where the fit is actually computed.

Switch between Y = ae^(kx) form (natural for continuous processes) and Y = ab^x form (natural for discrete periods like annual growth). The growth projection table extends predictions beyond your data, clearly labeling extrapolated values. That makes it easier to compare fitted growth, decay, and forecast behavior in the form that matches the real process you are modeling.

When This Page Helps

Exponential processes are everywhere: population dynamics, radioactive decay, compound interest, viral spread, drug elimination, heat cooling. Recognizing exponential behavior and fitting the parameters (initial value, rate constant) is foundational in science, finance, and engineering.

This calculator emphasizes the practical outputs — doubling time, half-life, and percentage growth rate — which are more interpretable than the raw rate constant k. The projection table explicitly flags extrapolation, preventing the common mistake of treating exponential predictions far beyond the data as reliable.

How to Use the Inputs

  1. Enter X and Y values (Y must be positive for log-linear fitting).
  2. Or click a preset — Bacteria Growth, Radioactive Decay, Compound Interest, or Population Growth.
  3. Choose the display form: Y = ae^(kx) or Y = abˣ.
  4. Review the rate constant k, initial value a, and growth rate %.
  5. Check doubling time (growth) or half-life (decay).
  6. Examine R² on both original and log scales.
  7. Enter X for prediction and check the growth projection table.
Formula used
Model: Y = ae^(kx). Fitting: ln(Y) = ln(a) + kX (linear regression). Doubling time = ln(2)/k. Half-life = ln(0.5)/k. Growth per period: (e^k − 1) × 100%.

Example Calculation

Result: Y = 10.02·e^(0.5986x), R² = 0.9996, doubling time = 1.16, growth rate = 81.9% per unit

The bacteria population doubles roughly every 1.16 time units, growing at 81.9% per period. R² = 0.9996 confirms excellent exponential fit. By X = 10, the model predicts Y ≈ 3,978.

Tips & Best Practices

  • If R² on the log scale is much higher than on the original scale, the exponential model is fitting well where it should.
  • Doubling time = ln(2)/k ≈ 0.693/k — memorize this for quick estimates.
  • The "Rule of 70": doubling time ≈ 70 / (percent growth rate). At 7% growth, doubling ≈ 10 periods.
  • Plot ln(Y) vs X first — if it's roughly linear, exponential regression is appropriate.
  • For data that flattens (approaches a ceiling), use logistic regression instead.
  • Extrapolation cells are highlighted — treat them as rough estimates, not reliable predictions.

Log-Linear Transformation Method

Taking ln(Y) = ln(a) + kX converts the exponential model to a linear one. Standard OLS regression on (X, ln(Y)) gives slope k and intercept ln(a). This method is computationally simple and gives exact closed-form solutions, but it minimizes errors on the log scale, not the original scale. For precise original-scale fitting, nonlinear least squares (Gauss-Newton, Levenberg-Marquardt) is used.

Growth vs. Decay Patterns

Growth (k > 0): bacteria, compound interest, technology adoption (early phase), population (unlimited resources). Decay (k < 0): radioactive isotopes (C-14 half-life ≈ 5730 years), drug concentration after administration, heat cooling (Newton's law), light intensity through a medium (Beer-Lambert law).

Exponential Limitations and Alternatives

No real-world quantity grows exponentially forever. Eventually, resources run out, space fills up, or saturation occurs. The logistic model Y = L/(1+e^(-k(x-x0))) captures this by adding an upper limit L. Other alternatives: Gompertz (asymmetric S-curve), power law (Y = axᵇ), and stretched exponential (Y = ae^(-(x/τ)^β)).

Sources & Methodology

Last updated:

Frequently Asked Questions

  • The fitting method takes ln(Y), which is undefined for Y ≤ 0. Exponential functions are inherently positive (ae^(kx) > 0 for a > 0), so negative Y values indicate the data isn't truly exponential. Data points with Y ≤ 0 are excluded automatically.