In this article we investigate the main causes of school failure in the primary public schools in Lisbon. Poisson count-data models are used to analyse the relationship between the number of failures and a wide set of explanatory variables. However heterogeneity due to unobserved differences in intellectual abilities of the students is of primary concern. Neglecting it causes biased estimates and therefore a proper method is required to accommodate it. In this article we suggest a finite mixture of Poisson's. We found that variables associated to gender, ethnicity, family dimension, parent's level of education and income poverty are the most important observable determinants of school failure.