I am fitting a CFA model with the following syntax from lavaan package:

cfa_esp <- ' Tarefa =~ Coop. + Esf.Melh. + PapelImp. 
             Ego =~ Pun.Erros + Recon.Desig. + Riv.Membr.'
m0_cfa <- cfa(cfa_esp, data =data, orthogonal = F, estimator = "WLSMV")

And I obtain these results from the coefficients:

summary(m0_cfa, standardized = T)$PE

Latent Variables:
                         Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
  Tarefa =~                                                                   
    Coop.                   1.000                               0.688    0.891
    Esf.Melh.               0.639    0.042   15.170    0.000    0.439    0.793
    PapelImp.               0.677    0.043   15.678    0.000    0.466    0.797
  Ego =~                                                                      
    Pun.Erros               1.000                               0.262    0.403
    Recon.Desig.            4.872    1.514    3.218    0.001    1.277    1.388
    Riv.Membr.              1.069    0.221    4.834    0.000    0.280    0.307

How can I interpret Std.all column?

This is my try for each estimate column:

  • A unit increase in Tarefa implies in .639 units increase in Esf.Melh.;
  • One standard deviation increase in Tarefa implies in .439 units increase in Esf.Melh.
  • The correlation of PapelImp. and Tarefa is .797 (since we are building latent variable, Std.all is interpreted as correlation);

This is what I thought it was right. However, the Std.all coefficient is 1.388 for Ego and Recon.Desig.. So, how can I interpret these coefficients?


1 Answer 1


I agree with the first two of your interpretations but for generalisability I would interpret the std.all column like any other standardised path coefficient:

  • Estimates: For every one unit increase in Tarefa, Esf.Melh. is expected to increase by .639 units
  • Std.lv: For every one standard deviation increase in Tarefa, Esf.Melh. is expected to increase by .439 units.
  • Std.all: For every one standard deviation increase in Tarefa, Esf.Melh. is expected to increase by .793 standard deviations.

The latter, in this example, can only be interpreted as a correlation between the latent factor and the indicator when the indicator loads on a single factor.

However, in your example, it seems that your solution might not be proper since you found standardized factor loadings that (in their absolute value) exceed 1. This is sometimes also called a Heywood case and it tells you that there might be a problem with your model specification and/or identification.

For instance see the review Farooq, 2022: Heywood cases: possible causes and solutions. In this paper he writes:

Li (2021) opines that an inadmissible solution (i.e., Heywood case) includes out-of-bounds estimates in a statistically converged solution such as standardised coefficients greater than 1 in absolute value or negative residual/error variance.

He also quotes several solutions for different Heywood cases and improper solutions such as

  • Drop the troublesome indicators
  • Increase the number of indicators per factor
  • Fix improper estimate to plausible value
  • Impose an equality constraint between parameters having similar estimates
  • etc.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.