Analyst Dojo
Lesson 3 of 6 6–9% of the exam

You are reading the 2026 curriculum (exams up to November 2026). Sitting in February 2027 or later? Go to the 2027 Quantitative Methods guide.

Goodness of fit and testing the regression coefficients

R² = SSR ÷ SST (the sum of squares regression over the sum of squares total) is the share of Y's variation the model explains. The F-test asks whether the model explains anything at all. Each coefficient gets a t-test: t = (estimate − hypothesized value) ÷ its standard error, with n − 2 degrees of freedom. In simple regression F = t² for the slope.

8 min cram, 40 min full read. Based on the 2026 CFA® Program Level I curriculum, Quantitative Methods, Learning Module 10. This is the 2026 version of the lesson. Sitting in February 2027 or later? Read the updated 2027 version.

Tailor this to you: take the self-assessment

Before this: The four regression assumptions and what residual plots reveal, Hypothesis Testing

On the exam

  • Calculate and interpret measures of fit and formulate and evaluate tests of fit and of regression coefficients in a simple linear regression

Calculate and interpret R² and F, and formulate and evaluate tests of the slope and intercept. Expect t = (b₁ − B₁) ÷ s_b₁ against a critical value you are given, often testing a slope of 1 rather than 0. Wrong options use n − 1 degrees of freedom or forget to subtract the hypothesized value.

How deeply to learn each part
Know the idea
Understand it in general. It frames other topics, but you will not calculate with it.
Use it
Understand it well enough to solve a question with it. Recognize when it applies.
Memorize
Learn it by heart. The exam will not give it to you.

You know this one. The full lesson is folded away. The takeaways, formulas and checkpoint below are your quick refresher, and the checkpoint is a fair test of whether you still do.

You tested strong here. The full lesson is folded away. The takeaways, formulas and checkpoint below are your quick refresher, and the checkpoint is a fair test of whether you still know it.

Cram mode: the one-screen version of this lesson. Switch to Full for the explanations, worked examples and interactives.

How well does the line fit?

The coefficient of determination , R2R^2, is the share of the variation in Y that the model explains. The total variation (SST) splits into the explained part (SSR) and the unexplained part, the sum of squares error (SSE), so SST = SSR + SSE.

Coefficient of determination Memorize
R2=SSRSST=1−SSESSTR^2 = \frac{SSR}{SST} = 1 - \frac{SSE}{SST}

In simple regression R2R^2 is also the square of the correlation between X and Y. Unlike the standard error of estimate in the next lesson, it has no units.

Rearrange itR-squared: solve for any one
The question asks for
A regression has SSR = 62.727 and SST = 65.5. R² is closest to:

62.727 ÷ 65.5 = 0.9577

Coefficient of determination, R²0.9577

On your calculator
  1. 62.727÷65.5=
  1. 62.727ENTER65.5÷

ENTER enter (on the HP, puts the number on the stack)

InteractiveExplained or unexplained? Add noise and watch the tests

Try this 0 of 3

  • Test the slope against 1 (worked example data, 5%).
  • Add noise until R² falls below 0.80, and watch s_b₁ as you go.
  • With B₁ = 0 at 5%, find the noise level where the slope stops being significant.

With no added noise, the line explains 95.8% of the variation in revenue growth (R² 0.958), F = 90.47, the slope's standard error is 0.136 and t against 0.00 is 9.51: reject at 5%. More noise, less fit, bigger standard error, smaller t.

Each point's deviation from Ȳ, split in two

0481216Revenue growth (%)0246810Marketing spend (% of sales)Ȳ
  • Explained, Ŷ − Ȳ
  • Unexplained, Y − Ŷ
  • Mean Ȳ
SourceSum of squaresdfMean squareF
Regression62.727162.72790.47
Error2.77340.693
Total65.5005

R² = SSR ÷ SST = 62.727 ÷ 65.500 = 0.958. SEE = √MSE = 0.833.

|t| = 9.51 > 2.776: reject H₀: b₁ = 0.00 at 5%. The slope of 1.293 is significantly different from 0.00.

R² = SSR ÷ SST0.958
F (critical 7.71)90.47
Std error of slope s_b₁0.136
t vs B₁ = 0.00 (critical ±2.776)9.51
DecisionReject H₀
Data
Test of the slope
Significance level α (two-tailed)
Show working

Ŷ = 1.3867 + 1.2933X; Ȳ = 8.5000.

SST = Σ(Y − Ȳ)² = 65.5000. SSE = Σ(Y − Ŷ)² = 2.7733. SSR = SST − SSE = 62.7267.

R² = SSR ÷ SST = 62.7267 ÷ 65.5000 = 0.9577 (= r², r = 0.9786). Not SSE ÷ SST, which is the unexplained share (0.0423).

MSE = SSE ÷ (n − 2) = 2.7733 ÷ 4 = 0.6933; SEE = √MSE = 0.8327. F = MSR ÷ MSE = 62.7267 ÷ 0.6933 = 90.47 vs 7.709 (F(1, 4), 5%): the model is significant.

s_b₁ = SEE ÷ √Σ(X − X̄)² = 0.8327 ÷ √37.5 = 0.1360.

t = (b₁ − B₁) ÷ s_b₁ = (1.2933 − 0.00) ÷ 0.1360 = 9.512, df = n − 2 = 4; critical ±2.776; p-value 0.0007. Reject H₀.

Against zero: t = 9.512 and t² = 90.47 = F. In simple regression the F-test and the slope's t-test against zero always agree.

Intercept: s_b₀ = SEE × √(1/n + X̄² ÷ Σ(X − X̄)²) = 0.8215; t = 1.3867 ÷ 0.8215 = 1.688 → not significant at 5%.

b₀, b₁ and r on your calculator
  1. 2NDDATA2NDCLR WORKclear old data
  2. 2ENTER↓4ENTER↓X01, Y01
  3. 3ENTER↓5ENTER↓X02, Y02
  4. 5ENTER↓9ENTER↓X03, Y03
  5. 6ENTER↓8ENTER↓X04, Y04
  6. 8ENTER↓12ENTER↓X05, Y05
  7. 9ENTER↓13ENTER↓X06, Y06
  8. 2NDSTATpress 2ND SET until LIN shows
  9. ↓↓↓↓↓↓↓↓a = 1.3867 (intercept)
  10. ↓b = 1.2933 (slope)
  11. ↓r = 0.9786

2ND second function (the shifted label above a key) · DATA data worksheet · CLR WORK clear the worksheet · ENTER enter (on the HP, puts the number on the stack) · STAT statistics worksheet

  1. fCLEAR Σ
  2. 4ENTER2Σ+Y first, then X
  3. display1
  4. 5ENTER3Σ+Y first, then X
  5. display2
  6. 9ENTER5Σ+Y first, then X
  7. display3
  8. 8ENTER6Σ+Y first, then X
  9. display4
  10. 12ENTER8Σ+Y first, then X
  11. display5
  12. 13ENTER9Σ+Y first, then X
  13. display6
  14. 0gŷ,rSTO7a = 1.3867 (intercept: ŷ at x = 0
  15. storeitinR7,sinceΣ+keepsnandthesumsinR1toR6)
  16. x≷yr = 0.9786
  17. 1gŷ,rRCL7−b = 1.2933 (slope: ŷ at x = 1 minus ŷ at x = 0)

f gold shift key · CLEAR Σ clear the statistics registers · ENTER enter (on the HP, puts the number on the stack) · Σ+ add a data point · g blue shift key · ŷ,r estimated y and correlation · STO store · x≷y swap the last two numbers · RCL recall a stored number

Display: b₀ 1.3867, b₁ 1.2933, r 0.9786

t-statistic of the slope
  1. 1.2933−0=÷0.136=t = 9.512
  1. 1.2933ENTER0−0.136÷t = 9.512

ENTER enter (on the HP, puts the number on the stack)

Display: t = 9.512

More noise, less fit, bigger standard error, smaller t.

Is the model significant? The F-test

The F-test of the model asks whether the regression explains anything at all. In simple regression the null is that the slope is zero. The statistic is the explained variation per slope divided by the unexplained variation per remaining degree of freedom: the mean square regression (MSR) divided by the mean square error (MSE). The analysis of variance (ANOVA) table in the next lesson builds it. It is a one-tailed, right-tailed test with 1 and n−2n-2 degrees of freedom.

For the retailers, MSR = 62.727 and MSE = 2.7733 ÷ 4 = 0.6933, so F=62.727÷0.6933=90.47F = 62.727 \div 0.6933 = 90.47. The 5% critical value of F with 1 and 4 degrees of freedom is 7.71, so reject: the model is significant.

How do you test the slope?

Each coefficient has an estimate and a standard error. The standard error of the slope coefficient falls when the residuals are small and when X is spread out widely.

Standard error of the slope coefficient Use it
sb1=SEE∑(Xi−Xˉ)2s_{b_1} = \frac{SEE}{\sqrt{\sum (X_i-\bar{X})^2}}

The t-test of the slope then asks how many standard errors the estimate sits from the hypothesized slope B1B_1. The test has n−2n-2 degrees of freedom because two coefficients were estimated.

t-statistic for a regression coefficient Memorize
t=b1−B1sb1,df=n−2t = \frac{b_1 - B_1}{s_{b_1}}, \qquad df = n-2

If ∣t∣|t| exceeds the critical value, reject H0H_0. Software also reports a p-value : the smallest significance level at which you would reject. Reject when the p-value is below your chosen α\alpha.

Rearrange itt-test of a regression coefficient: solve for any one
The question asks for
A regression gives a slope of 1.2933 with a standard error of 0.136. The t-statistic for H₀: B₁ = 1 is closest to:

(1.2933 − 1) ÷ 0.136 = 2.1566

Test statistic, t2.1566

On your calculator
  1. 1.2933−1=÷0.136=
  1. 1.2933ENTER1−0.136÷

ENTER enter (on the HP, puts the number on the stack)

The F-statistic and the slope’s t-statistic always agree in simple regression.

F equals t squared (simple regression) Use it
F=tb1 2F = t_{b_1}^{\,2}

What about the intercept?

The test of the intercept works the same way, with t=(b0−B0)÷sb0t = (b_0 - B_0) \div s_{b_0} and n−2n-2 degrees of freedom. The standard error of the intercept is usually given in the output. For the retailers sb0=0.8215s_{b_0} = 0.8215 and b0=1.3867b_0 = 1.3867, so t=1.3867÷0.8215=1.69t = 1.3867 \div 0.8215 = 1.69, which is below 2.776. The intercept is not significantly different from zero.

Judging a simple regression
Is the regression any good?fit first, then tests
  • Goodness of fit Memorize how much of Y the line explains
    • R² = SSR ÷ SST unit-free share, 0 to 1
    • F-test of the model H₀: slope is zero; one-tailed, df 1 and n − 2
  • Tests of the coefficients Memorize t-tests with n − 2 degrees of freedom
    • Slope t = (b₁ − B₁) ÷ s_b₁
    • Intercept t = (b₀ − B₀) ÷ s_b₀
  • Reading the result Use it compare with the critical value or p-value
    • |t| above critical value, or p below α reject H₀: the coefficient differs from the hypothesized value
    • |t| at or below critical value fail to reject H₀

When X is an indicator variable

An indicator variable (or dummy) takes only the values 0 and 1. Suppose X = 1 on days when a central bank holds a press conference and 0 otherwise, and Y is the size of a currency pair’s daily move. The fitted line is Move = 0.35% + 0.40% × X.

  • The intercept, 0.35%, is the average move on days without a press conference (X = 0).
  • The slope, 0.40%, is the difference in averages, so press-conference days average 0.35% + 0.40% = 0.75%.
  • The t-test of the slope is therefore a test of whether the two group means differ.

Exam tip When a question asks whether beta “differs from 1”, write the subtraction down before you divide.

Go deeper Why F equals t squared only in simple regression

The F-test checks whether all slope coefficients are jointly zero. With a single slope, that is the same claim the slope’s t-test makes, and the square of a t-statistic with n−2n-2 degrees of freedom follows the F-distribution with 1 and n−2n-2. With several independent variables, F tests all slopes at once and no single t-statistic equals it.

Go deeper Testing a stock's beta against 1

The slope of a stock’s returns on the market’s is its beta. A portfolio manager often asks whether beta differs from 1, meaning the stock is not simply moving with the market. That is a slope test with B1=1B_1 = 1, exactly as in the retailer example above. A beta of 0.84 can look low but still be statistically indistinguishable from 1 when the standard error is large.

Go deeper Statistically significant versus economically meaningful

With a large sample, a tiny slope can have a huge t-statistic. Statistical significance tells you the slope is unlikely to be zero, not that it is large enough to matter for a decision. Judge the size of the coefficient in its units alongside its t-statistic.

Memorize this

MemorizeFit and coefficient tests

ItemRule
R2R^2SSR÷SSTSSR \div SST (explained share); equals r2r^2 in simple regression
t-statistic(b−hypothesized)÷sb(b - \text{hypothesized}) \div s_b
Degrees of freedom (t)n−2n - 2
F-statisticMSR÷MSEMSR \div MSE, df 11 and n−2n-2; F=t2F = t^2 for the slope
Decision∣t∣>|t| > critical → reject; or reject when p<p < α\alpha
Indicator Xintercept = mean of the 0 group; slope = difference in means

Memory hook The slope test is "estimate minus claim, over its own standard error": the same shape as every t-test you know. n − 2 because two coefficients were estimated.

Know it cold To test a slope against 1, subtract 1 first. Testing against zero is the special case where there is nothing to subtract.

Judging a simple regression
Is the regression any good?fit first, then tests
  • Goodness of fit Memorize how much of Y the line explains
    • R² = SSR ÷ SST unit-free share, 0 to 1
    • F-test of the model H₀: slope is zero; one-tailed, df 1 and n − 2
  • Tests of the coefficients Memorize t-tests with n − 2 degrees of freedom
    • Slope t = (b₁ − B₁) ÷ s_b₁
    • Intercept t = (b₀ − B₀) ÷ s_b₀
  • Reading the result Use it compare with the critical value or p-value
    • |t| above critical value, or p below α reject H₀: the coefficient differs from the hypothesized value
    • |t| at or below critical value fail to reject H₀
Coefficient of determination Memorize
R2=SSRSST=1−SSESSTR^2 = \dfrac{SSR}{SST} = 1 - \dfrac{SSE}{SST}
Quick example

SST = 120 and SSE = 30, so SSR = 90. R² = 90 ÷ 120 = 0.75: the model explains 75% of the variation in Y.

On your calculator
  1. 120−30=÷120= 0.75
  1. 120ENTER30−120÷ 0.75

ENTER enter (on the HP, puts the number on the stack)

Standard error of the slope coefficient Use it
sb1=SEE∑(Xi−Xˉ)2s_{b_1} = \dfrac{SEE}{\sqrt{\sum (X_i-\bar{X})^2}}
Quick example

SEE = 2.0 and Σ(X − X̄)² = 64. s_b₁ = 2.0 ÷ √64 = 2.0 ÷ 8 = 0.25.

On your calculator
  1. 2÷64√x= 0.25

√x square root

  1. 2ENTER64g√x÷ 0.25

ENTER enter (on the HP, puts the number on the stack) · g blue shift key · √x square root

t-statistic for a regression coefficient Memorize
t=b1−B1sb1,df=n−2t = \dfrac{b_1 - B_1}{s_{b_1}},\quad df = n-2
Quick example

Slope 1.35, standard error 0.20, testing H₀: B₁ = 1. t = (1.35 − 1) ÷ 0.20 = 1.75. With a critical value near 2.0 you fail to reject.

On your calculator
  1. 1.35−1=÷0.2= 1.75
  1. 1.35ENTER1−0.2÷ 1.75

ENTER enter (on the HP, puts the number on the stack)

F equals t squared (simple regression) Use it
F=tb1 2F = t_{b_1}^{\,2}
Quick example

The slope has t = 3.0 against zero, so the F-statistic is 3.0² = 9.0.

On your calculator
  1. 3x²= 9

x² square

  1. 3ENTER× 9

ENTER enter (on the HP, puts the number on the stack)

How it is asked

  1. R² from sums of squares

    SST = 120, SSE = 30. R²?

    SSR = 90, R² = 90 ÷ 120 = 0.75. Trap: SSE ÷ SST = 0.25.

  2. Test beta against 1

    b₁ = 0.84, standard error 0.30, n = 42. t for H₀: B₁ = 1?

    (0.84 − 1) ÷ 0.30 = −0.53. |t| < 2.021 (df 40): fail to reject. Trap: 0.84 ÷ 0.30 = 2.80 tests against zero.

  3. F from t

    In a simple regression the slope t-statistic is 3.0. F?

    F = t² = 9.0.

  4. Indicator variable

    X = 1 in rate-cut months, 0 otherwise. What does the slope mean?

    The difference between the mean return in rate-cut months and in other months.

Exam traps

  • Using R² = SSE ÷ SST: that is the unexplained share. R² = SSR ÷ SST.
  • Testing H₀: B₁ = 1 with b₁ ÷ s_b₁. Subtract the hypothesized value first.
  • Using n − 1 degrees of freedom instead of n − 2.
  • Reading an indicator-variable slope as the mean of the 1 group. It is the difference between the two group means.

Checkpoint

4 exam-style questions. About 90 seconds each.

  1. 1A regression has SST = 120 and SSE = 30. R² is closest to:

  2. 2A regression of a stock's returns on the market's gives b₁ = 0.84 with a standard error of 0.30 (n = 42). To test whether beta differs from 1, the t-statistic is closest to:

  3. 3A regression uses X = 1 for months with a policy-rate cut and 0 otherwise. The slope coefficient best represents the:

  4. 4In a simple linear regression, the t-statistic for the slope against zero is 3.0. The F-statistic for the model is closest to:

Key takeaways

  • R² = SSR ÷ SST, the explained share of variation (r² in simple regression).
  • The F-test judges the whole model; in simple regression F = t² of the slope.
  • t = (estimate − hypothesized value) ÷ standard error, with n − 2 degrees of freedom.
  • With an indicator X, the slope is the difference between two group means.
Coefficient of determination Memorize
R2=SSRSST=1−SSESSTR^2 = \dfrac{SSR}{SST} = 1 - \dfrac{SSE}{SST}
Quick example

SST = 120 and SSE = 30, so SSR = 90. R² = 90 ÷ 120 = 0.75: the model explains 75% of the variation in Y.

On your calculator
  1. 120−30=÷120= 0.75
  1. 120ENTER30−120÷ 0.75

ENTER enter (on the HP, puts the number on the stack)

Standard error of the slope coefficient Use it
sb1=SEE∑(Xi−Xˉ)2s_{b_1} = \dfrac{SEE}{\sqrt{\sum (X_i-\bar{X})^2}}
Quick example

SEE = 2.0 and Σ(X − X̄)² = 64. s_b₁ = 2.0 ÷ √64 = 2.0 ÷ 8 = 0.25.

On your calculator
  1. 2÷64√x= 0.25

√x square root

  1. 2ENTER64g√x÷ 0.25

ENTER enter (on the HP, puts the number on the stack) · g blue shift key · √x square root

t-statistic for a regression coefficient Memorize
t=b1−B1sb1,df=n−2t = \dfrac{b_1 - B_1}{s_{b_1}},\quad df = n-2
Quick example

Slope 1.35, standard error 0.20, testing H₀: B₁ = 1. t = (1.35 − 1) ÷ 0.20 = 1.75. With a critical value near 2.0 you fail to reject.

On your calculator
  1. 1.35−1=÷0.2= 1.75
  1. 1.35ENTER1−0.2÷ 1.75

ENTER enter (on the HP, puts the number on the stack)

F equals t squared (simple regression) Use it
F=tb1 2F = t_{b_1}^{\,2}
Quick example

The slope has t = 3.0 against zero, so the F-statistic is 3.0² = 9.0.

On your calculator
  1. 3x²= 9

x² square

  1. 3ENTER× 9

ENTER enter (on the HP, puts the number on the stack)

Questions about this lesson?

Where this comes back

Questions candidates ask

What does R-squared mean in regression?

R² is the share of the variation in Y that the regression explains: SSR ÷ SST. An R² of 0.75 means 75% of the variation is explained and 25% is not. In simple regression it equals the squared correlation between X and Y. It says nothing about whether the assumptions hold.

How do you test if a regression slope is significant?

Compute t = (b₁ − B₁) ÷ s_b₁, where B₁ is the hypothesized slope (zero for a significance test), and compare |t| with the critical value for n − 2 degrees of freedom. If |t| is larger, or the p-value is below your significance level, reject H₀.

What is the relationship between F and t in simple regression?

With one independent variable, the F-statistic of the model equals the square of the slope's t-statistic (against zero), and both tests give the same conclusion. With several variables this no longer holds, because F then tests all the slopes together.

Spotted an error? Tell us and we will fix it.

  1. The regression line: slope, intercept and least squares
  2. The four regression assumptions and what residual plots reveal
  3. Goodness of fit and testing the regression coefficients
  4. The ANOVA table and the standard error of estimate
  5. Predicting Y and building a prediction interval
  6. Functional forms: log-lin, lin-log and log-log models

Ask Sensei Listen instead

Questions on Goodness of fit and testing the regression coefficients

Learn with Sensei, out loud The voice tutor, in early access

Sensei teaches the lesson aloud and stops when you interrupt: "wait, why is the geometric mean lower?" It answers with the lesson's own example, then quizzes you by voice. Every account can try Sensei on one module, with one voice question.

USD 149 a month founding price (regular USD 199), kept for as long as you stay subscribed. Everything in Plus included.

In active development and improving every day. Send feedback · Plans and pricing

Analyst Dojo Plus

Your free review list holds 10 items.

Plus keeps everything you save, for USD 19 a month. To make room on the free plan, remove something from your review list.

See Plus

Lessons, checkpoints and the lesson questions in practice stay free. Compare plans