Testing for heteroscedasticity I get these results:

Breusch–Pagan / Cook–Weisberg test for heteroskedasticity

  • $H_0$: Constant variance

  • $H_a$: Heteroskedasticity

      Variables: fitted values of log_expdu
      chi2(1)      =    21.41
      Prob > chi2  =   0.0000

White's test

  • $H_0$: homoskedasticity

  • against $H_a$: unrestricted heteroskedasticity

      chi2(47)     =     48.91
      Prob > chi2  =    0.3964

The Breusch–Pagan test tells me that there is heteroskedasticity, while the White's test tells me the opposite. Which result should I use?

  • $\begingroup$ I ran White Test and Breusch-Pagan Test on a data and both test returns contradictory outcomes which is the opposite of the earlier post. In the post above White test indicated heteroscedasticity while Breusch-pagan indicated the opposite. However in y own analysis the White’s test result was with a p-value of 0.006148 suggesting that there is no heteroscedasticity, while the Breusch-Pagan test with a p-value of 0.005277 indicates that there is heteroscedasticity in the model. $\endgroup$
    – user319560
    Commented Apr 23, 2021 at 15:51
  • $\begingroup$ Welcome to the site. Was this intended as an answer to the OP's question, a comment requesting clarification from the OP or one of the answerers, or a new question of your own? Please only use the "Your Answer" field to provide answers to the original question. You will be able to comment anywhere when your reputation is >50. If you have a new question, click the blue ASK QUESTION at the top of the page & ask it there, then we can help you properly. Since you're new here, you may want to take our tour, which has information for new users. $\endgroup$ Commented Apr 23, 2021 at 15:57

2 Answers 2


The Breusch-Pagan test only checks for the linear form of heteroskedasticity i.e. it models the error variance as $\sigma_i^2 = \sigma^2h(z_i'\alpha)$ where $z_i$ is a vector of your independent variables. It tests $H_0: \alpha = 0$ versus $H_a: \alpha \neq 0$.

The White test on the other hand is more generic. It relies on the intuition that if there is no heteroskedasticity the classical error variance esitmator should gives you standard error estimates close enough to those estimated by the robust estimator. Therefore, it is able to detect more general form of heteroskedasticity than the Breusch-Pagan test.

A shortcoming of the White test is that it can lose its power very quickly particularly if the model has many regressors. This could be the reason for the results such as yours.


Breusch-Pagan / Cook-Weisberg tests the null hypothesis that the error variances are all equal versus the alternative that the error variances are a multiplicative function of one or more variables. For example, in the default form of the hettest command shown above, the alternative hypothesis states that the error variances increase (or decrease) as the predicted values of Y increase, e.g. the bigger the predicted value of Y, the bigger the error variance is. A large chi-square would indicate that heteroscedasticity was present. In your example, the chi-square value was large and the p-value is small, indicating heteroskedasticity was present.

  • 2
    $\begingroup$ Thank you for answering--that information is quite clear. But what is your explanation for why the BP/CW tests appear (strongly) to contradict the White test, which would also satisfy your description? $\endgroup$
    – whuber
    Commented Apr 2, 2013 at 13:00

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.