We designed an experiment to explore the extent of measurement error in body mass index (BMI), when based on self-reported body weight and height. We find that there is a systematic age gradient in the reporting error in BMI, while there is limited evidence of systematic associations with gender, education and income. This is reassuring evidence for the use of self-reported BMI in studies that use it as an outcome, for example, to analyse socioeconomic gradients in obesity. However, our results suggest a complex structure of non-classical measurement error in BMI, depending on both individuals’ and within-household peers’ true BMI. This may bias studies that use BMI based on self-reported data as a regressor. We also observe non-classical reporting error in height and weight ─ taller people seem to report their height more accurately, while a nonlinear relationship is evident for weight, with a sharper increase in reporting errors for those of greater weight. Common methods to mitigate reporting error in BMI using predictions from corrective equations do not fully eliminate reporting heterogeneity associated with individual and within-household true BMI. Overall, the presence of non-classical error in BMI highlights the importance of collecting measured body weight and height data in large social science datasets.