The aim was to establish the relative importance of multiple dietary, activity and other risk factors in determining BMI. A cross-sectional survey was conducted with 322 adults (71 % female; aged 18–79 years; BMI 16·5–40·9 kg/m2) using a previously developed, psychometrically tested, seventy-three-item questionnaire covering a wide range of obesity risk factors (consisting of five dietary, five activity and seven other risk factor subscales). Outcome was self-reported weight and height for BMI, cross-validated with items on clothes size and perceived need to lose weight. Stepwise regression analysis predicted 25–55 % of the variance in BMI with physical activity participation, current and past dieting behaviour, amount eaten, and age being the most important predictors. The association of lower BMI and younger age appeared to be due to higher activity levels, as younger participants reported much less healthy eating behaviour than the older age group. Amount eaten and physical activity participation were stronger predictors of BMI than other factors including healthy eating and use of mechanised transport. Results showed that the relationship between various risk factors and obesity may differ by both sex and age group, suggesting that different interventions may need to be targeted at different groups. The higher-risk eating behaviour observed in younger participants is of concern and needs to be addressed, if the current trend of rising obesity levels is to be halted.