There is no single correct sample size for a regression or a structural equation model. The number depends on what you want to detect and on how complex the model is. Rules of thumb are a starting point, and reviewers increasingly ask for more.
What drives the number
- The smallest effect you care about. Small effects need large samples.
- The power you want, usually 80 per cent, and the significance level.
- The number of predictors or parameters in the model.
- The quality of measurement. Unreliable scales weaken the effects you can observe.
- Expected missing data and dropout.
Regression
For multiple regression, run a power analysis before collecting data. Free tools such as G*Power take the expected effect size, the number of predictors, the significance level and the power, and return the sample required. Rules such as ten or fifteen cases per predictor ignore effect size, so use them only as a sanity check. Logistic regression needs enough cases in the smaller outcome group, not just a large total.
Structural equation modelling
For covariance-based SEM a sample of 200 is often quoted, but the real requirement depends on the number of indicators per factor, the size of the loadings and the complexity of the model. Simple models with strong loadings can work with fewer cases. Complex models with weak loadings or missing data can need many more. A Monte Carlo simulation of your own model is the most defensible method.
For PLS-SEM, the ten-times rule is widely cited and widely criticised, because it can understate what is needed. Power-based approaches, including the inverse square root method, tie the sample to the smallest path coefficient you expect to find.
How to report it
- State the method used and its inputs: effect size, significance level, power and number of predictors.
- Say where the expected effect size came from: earlier studies, a pilot or a reasoned minimum.
- Add an allowance for non-response and missing data.
- If circumstances fixed the sample, say so and report the smallest effect it could detect.