How to interpret interaction terms

I keep referring to this issue in manuscript reviews, so I thought it worth a post.

If you include an interaction term in a model, the statistical significance of the main effects and the interaction term tells you nothing about the interactive effect. This seems contrary to your intuition. Turns out the interactive effect may only significantly differ from zero for part of the covariate space, so you must plot out the effect with confidence intervals to see if they bracket zero, if you want to properly interpret your results.

See this paper by Brambor et al. for details, especially their Figure 3.

While this can be done by hand or in a spreadsheet, it’s much easier to do in Stata. Be sure to use the i. and c. prefixes for your main effect variables, use the # mark to create the interaction term (so Stata knows these variables are all related), and then the margins command: margins, dydx(main effect variable 1) at (main effect variable 2=(value 1 value 2, etc.)) vsquish.

This will return slope coefficients for each value you choose for your second covariate, along with the correct SEs, p values and CIs for each slope coefficient.


Stephen By Stephen

About me


Professor and quant guy. Libertarian turned populist Republican. Trying to learn Japanese and play Spanish Baroque music on the ukulele.

Subscribe via email

Enter your email address to subscribe to my blog and receive notifications of new posts by email.