In Excel: use =LINEST(known_ys, known_xs, TRUE, TRUE) — it returns the regression coefficients as an array, plus R², standard errors and the other statistics when stats is TRUE.
On this page8
Syntax
Arguments
| Argument | required / optional | Description |
|---|---|---|
known_ys | required | The outcomes being modelled. |
known_xs | optional | One or more columns of predictors. |
const | optional | FALSE forces the intercept to zero. |
stats | optional | TRUE returns the full diagnostic block including R² and standard errors. |
Related functions
Select a cell with several empty rows and columns beneath and to the right.
Type =LINEST( and select the y column, then the block of x columns.
Add , TRUE, TRUE to fit an intercept and return the diagnostics.
Press Enter in Excel 365, or select a 5-row block and press Ctrl+Shift+Enter in older versions.
What this does
LINEST is Excel's full least-squares regression in a single function. With the fourth argument set to TRUE it returns a block of diagnostics rather than just coefficients: R², standard errors for each coefficient, the F statistic and the degrees of freedom. Two things surprise everyone the first time. The coefficients come back in reverse order, with the last predictor leftmost and the intercept at the far right. And it accepts several predictor columns, which makes it a genuine multiple regression without the Analysis ToolPak. In Excel 365 the block spills; older versions need a selected range and Ctrl+Shift+Enter. Keep the inputs visible and clearly labelled and the whole thing stays auditable — anyone who opens the file later, including you, can see at a glance exactly what feeds the result and change one assumption without hunting through the formula. For “run multiple regression in excel”, the reliable version is a short checking loop, not just the first command that appears to work. Run it on a deliberately small range first, watch how the affected cells change, and only then apply the same setup to the full sheet. When a formula is involved, keep the inputs labelled beside it, reference cells instead of typing values, and apply number formatting only after the result checks out. That is what makes a text operation that turns messy entries into clean, usable data useful in real work: repeatable, auditable, and not dependent on memory or luck.
A worked example
Sales in D2:D100 modelled on spend in B2:B100 and headcount in C2:C100: =LINEST(D2:D100, B2:C100, TRUE, TRUE) spills a five-row block. The top row holds the coefficients right-to-left (headcount, spend, intercept) and the third row's first cell is R². For a single predictor, SLOPE and INTERCEPT are far easier to read. LINEST is a complete regression without a add-in, which matters whenever the model has to live in the workbook rather than in a separate tool. If there is any chance you will reuse this, drop it into a small template tab right now: a labelled input area on the left and the formula beside it, checked once against the tool above. Next time the same question comes up, the answer is a single paste away instead of a rebuild from memory.
In Google Sheets
Google Sheets handles this almost identically to Excel. The formula syntax above is the same, and the menu lives under a slightly different label rather than a ribbon tab. Use the platform toggle at the top of the page to switch every keyboard shortcut between Windows and Mac, and expect at most cosmetic differences in naming. Nothing on this page is behind a login or a download: the exact answer is at the top, and the detail below it is there for when you need it. That is the whole promise here — the answer first, and just enough context to make it stick. If you take one thing from this page on “run multiple regression in excel”, make it the habit rather than the keystrokes: set the problem up with labelled inputs, reference those cells, and let Excel do the recomputing. Bookmark the page for the syntax, but do the example once in a blank sheet and check it against the tool above — five minutes of hands-on practice fixes the method in memory far better than re-reading, and it surfaces the small snags while they are still harmless. After that the technique is genuinely yours: faster than searching for it again, and reliable enough to drop into work that other people depend on.
Common mistakes
- Reading the coefficients left to right — they are returned in reverse predictor order, with the intercept last.
- Omitting the final TRUE and then looking for R², which is only returned when stats is switched on.
- Adding predictors without checking they are not collinear, which makes individual coefficients unstable and misleading.
Frequently asked questions
How do I read the LINEST output?
Row 1 holds the coefficients in reverse order of the x columns, with the intercept rightmost. Row 2 holds their standard errors, and row 3 column 1 is R².
Can LINEST do multiple regression?
Yes — pass several adjacent columns as known_xs and it fits them all.
Where is R² in the output?
The first cell of the third row, and only when the fourth argument is TRUE.