Quick Navigation
LOGEST Function
Summary
The LOGEST function performs exponential regression analysis, fitting an exponential curve y = b*m^x to your data and returning the growth parameters as an array. Essential for modeling exponential growth patterns like population growth, compound interest, or biological processes.
Syntax
LOGEST(known_y's, [known_x's], [const], [stats])
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| known_y's | Array |
Yes | Array of known y-values (dependent variable) for the relationship y = b*m^x. Single column treats each known_x's column as separate variable; single row treats each row as separate variable. |
| known_x's | Array |
No | Optional array of x-values (independent variables). Same dimensions as known_y's for single variable. For multiple variables, known_y's must be vector. Defaults to {1,2,3,...} if omitted. |
| const | Boolean |
No | Logical value: TRUE (default) calculates b normally; FALSE forces constant b to equal 1, fitting y = m^x. |
| stats | Boolean |
No | Logical value: TRUE returns extended statistics array; FALSE (default) returns only {m-values, b}. |
Using the LOGEST Function
LOGEST is used when your data follows an exponential pattern rather than linear. It transforms the exponential relationship y = b*m^x into logarithmic form for linear regression, then converts back to exponential parameters. Perfect for sales growth, radioactive decay, or any multiplicative process.
Common LOGEST Examples
Basic Single Variable Exponential Fit
=LOGEST(B2:B10,A2:A10)
Fits y = b*m^x to data in A2:A10 (x-values) and B2:B10 (y-values). Returns {m,b} where m is growth factor, b is initial value. Enter as array formula.
With Regression Statistics
=LOGEST(B2:B10,A2:A10,TRUE,TRUE)
Returns full statistics array including standard errors, R², F-statistic, etc. Select 5x2 range before entering as array formula.
Extract Growth Rate Only
=INDEX(LOGEST(B2:B10,A2:A10),1)
Returns only the growth multiplier m (first array element). Use INDEX to extract specific statistics.
Force Intercept to 1
=LOGEST(B2:B10,A2:A10,FALSE)
Fits model y = m^x by forcing constant b=1. Useful when data passes through origin.
Frequently Asked Questions
Common Errors and Solutions
#VALUE!
Cause: X-values include text or logical values; arrays have different dimensions
Solution: Ensure numeric data only; match known_y's and known_x's dimensions properly
Single value returned instead of array
Cause: Formula not entered as array formula
Solution: Select output range first, then enter formula and press Ctrl+Shift+Enter (or Enter in Excel 365)
#NUM!
Cause: Fewer data points than variables +1; perfect fit found
Solution: Ensure sufficient data points (n > k+1 where k=variables); check for collinearity
Inconsistent results
Cause: Using regional separators incorrectly in array constants
Solution: Use commas for row values, semicolons for columns per your regional settings
Notes
- LOGEST returns {mn,...,m1,b} for basic use; extended array with stats=TRUE
- Perfect for population growth, compound interest, viral spread modeling
- Use INDEX to extract specific coefficients: INDEX(result,1) = first m-value
- Predicted y-values may be unreliable outside original data range
- Data resembling exponential curves yield best fits
- In multiple regression, known_y's must be single row/column vector
Compatibility
Available in: Excel 2007, Excel 2010, Excel 2013, Excel 2016, Excel 2019, Excel 2021, Microsoft 365
Not available in:
Content last reviewed: December 9, 2025
Update frequency: As needed
Excel versions tested: Excel 2007+