Linear Regression in SPSS: Step-by-Step Tutorial with Screenshots (2026)

Linear regression is arguably the most widely used statistical technique in psychology research. It allows you to predict a continuous dependent variable from one or more independent variables. In this tutorial, I guide you step by step through running it in SPSS, checking its assumptions, and correctly interpreting the results.

If what you need at the end is the table in APA 7 format, with B, SE, β, t, p and the 95% CI, you don't have to build it cell by cell: the APA 7 regression table generator builds it from the coefficients SPSS gives you.

What is linear regression?

Linear regression models the relationship between a dependent variable (Y) and one or more independent variables (X) using the equation:

Y = β₀ + β₁X₁ + β₂X₂ + ... + βₖXₖ + ε

Where β₀ is the constant, β₁...βₖ are the regression coefficients, and ε is the residual error.

There are two main variants:

  • Simple linear regression: a single predictor variable (X → Y)
  • Multiple linear regression: several predictor variables (X₁, X₂, ... Xₖ → Y)

Practical example: dataset

Imagine we want to predict academic performance (GPA, 0-10) from weekly study hours and anxiety level (measured with the STAI, 20-80) in a sample of 120 psychology students.

Our variables would be:

Variable Type Scale Role
GPA Quantitative 0 – 10 Dependent (Y)
Study hours Quantitative 0 – 40 h/week Independent (X₁)
Anxiety (STAI) Quantitative 20 – 80 Independent (X₂)

Step 1: Check the assumptions

Before running the regression, we must verify statistical assumptions to confirm that our data meet the model conditions. Skipping this step is one of the most frequent errors in theses and articles.

1.1. Linearity

The relationship between each predictor and the dependent variable must be linear. To check this in SPSS:

/* SPSS path */

Graphs → Legacy Dialogs → Scatter/Dot

→ Simple Scatter → Define

Y Axis: gpa

X Axis: study_hours

In the resulting scatter plot, the points should follow an approximately linear pattern (an elongated cloud, not a curve). If you see a curvilinear relationship, you will need to consider transformations or nonlinear models.

Study hours GPA R² = .72

Scatter plot with regression line. Correct linear pattern.

1.2. Normality of residuals

The model residuals must follow an approximately normal distribution. This is checked after running the regression, using:

/* SPSS path */

Analyze → Regression → Linear

→ Plots → Check: "Normal probability plot"

→ Check: "Histogram"

In the resulting normal P-P plot, the points should closely follow the diagonal line. Systematic deviations indicate that the residuals are not normal.

1.3. Homoscedasticity

The variance of the residuals must be constant across all levels of the predictor. This is verified with the standardized residuals vs. predicted values plot:

/* In the regression Plots window */

Y Axis: *ZRESID (standardized residuals)

X Axis: *ZPRED (standardized predicted values)

If the points are randomly distributed (no funnel or fan pattern), the assumption is met.

Standardized predicted values Standardized residuals Random distribution = OK

Residuals vs. predicted values plot. No pattern = correct homoscedasticity.

1.4. Absence of multicollinearity (multiple regression)

When we have multiple predictors, they should not be highly correlated with each other. We check this with collinearity statistics:

/* SPSS path */

Analyze → Regression → Linear

→ Statistics → Check: "Collinearity diagnostics"

Key criteria:

  • VIF (Variance Inflation Factor): should be < 5 (ideally < 3)
  • Tolerance: should be > 0.20 (ideally > 0.40)

Step 2: Run the regression in SPSS

Once the assumptions have been verified, we run the analysis:

Main path:

Analyze → Regression → Linear

/* Configuration */

Dependent: gpa

Independent(s): study_hours, anxiety_stai

Method: Enter

/* Recommended options */

→ Statistics: Estimates, Model fit, Descriptives, Collinearity

→ Plots: *ZRESID vs *ZPRED, Histogram, Normal P-P

→ Save: Predicted values (unstandardized), Residuals (standardized)

Note on the method: Use Enter as the default method. Stepwise methods (Stepwise, Forward, Backward) are criticized in the literature because they capitalize on chance and produce poorly replicable models. Only use them in exploratory analyses and always with cross-validation.

Step 3: Interpret the SPSS output

SPSS generates several tables. If you want a second pair of eyes on your specific output, upload the three tables to the free interpreter and it reads them in order. Here are the most important ones:

3.1. Model summary

Model R Adjusted R² Std. Error
1 .849 .721 .716 1.034

Predictors: (Constant), anxiety_stai, study_hours

How to interpret R²?

  • R² = .721 means the model explains 72.1% of the variance in academic performance.
  • Adjusted R² = .716 is the version adjusted for the number of predictors. This is the value you should report.
  • According to Cohen (1988): R² = .02 (small), .13 (medium), .26 (large). Our model shows a large effect. If you need to convert R² to Cohen's f² or other indices, you can use our effect size calculator.

3.2. ANOVA table

Source Sum of Squares df Mean Square F Sig.
Regression 323.45 2 161.73 151.23 <.001
Residual 125.12 117 1.07
Total 448.57 119

The ANOVA table tells us whether the model as a whole is significant. With F(2, 117) = 151.23, p < .001, we can state that the model significantly predicts performance.

3.3. Coefficients table

Predictor Unstandardized Standardized t Sig. Collinearity
B Std. Error Beta (β) Tolerance VIF
(Constant) 3.42 0.58 n/a 5.90 <.001 n/a n/a
Study hours 0.18 0.02 .62 11.28 <.001 .89 1.12
Anxiety (STAI) -0.05 0.01 -.28 -4.85 <.001 .89 1.12

How to interpret the coefficients?

  • B (unstandardized): For each additional hour of study, the GPA increases by 0.18 points (holding anxiety constant).
  • Beta (β) standardized: Allows comparing the relative importance of predictors. Study hours (β = .62) carry more weight than anxiety (β = -.28).
  • VIF = 1.12: Well below 5, no multicollinearity issues.

Step 4: Report the results in APA 7

Below is how to write the results correctly:

A multiple linear regression was conducted to examine whether weekly study hours and anxiety level (STAI) predicted academic performance. The overall model was significant, F(2, 117) = 151.23, p < .001, R² = .72, adjusted R² = .72. Study hours positively predicted performance (β = .62, p < .001), while anxiety negatively predicted it (β = -.28, p < .001). The model explained 72.1% of the variance in academic performance.

Common errors to avoid

  1. Not checking assumptions. This is the most serious and frequent error. Running regression without checking linearity, normality, homoscedasticity, and multicollinearity can completely invalidate the results.
  2. Using Stepwise without justification. Stepwise methods are exploratory and produce poorly replicable results. Use the Enter method with predictors selected based on your theoretical framework.
  3. Confusing B with Beta. B is the raw coefficient (in original units); Beta (β) is the standardized one (for comparing across predictors). Report both.
  4. Ignoring residuals. If residuals are not normal or there is heteroscedasticity, confidence intervals and p-values are unreliable.
  5. Interpreting correlation as causation. Regression describes associations. Without an experimental design, we cannot speak of causal effects.
  6. Not reporting adjusted R². Unadjusted R² inflates explained variance, especially with many predictors. Always report adjusted R².

Final checklist

  • ✅ I have verified linearity with a scatter plot
  • ✅ I have checked normality of residuals with P-P plot and histogram
  • ✅ I have verified homoscedasticity with residuals vs. predicted
  • ✅ I have checked VIF < 5 for multicollinearity
  • ✅ I have used the Enter method (not Stepwise)
  • ✅ I have reported adjusted R², not just R²
  • ✅ I have reported F, df, p, β in APA 7 format
  • ✅ I have interpreted results in context, without assuming causation

Conclusion

Linear regression in SPSS is straightforward to run, but its correct interpretation requires attention to assumptions and proper reporting of results. If you follow the steps in this tutorial, you will have a robust analysis that any reviewer will accept without objections.

If you need help with your regression or any other statistical analysis, do not hesitate to contact me. I can review your data, verify the assumptions, and help you write the results section of your article or thesis.

Keep reading

All blog articles