Excessive weight gain appears, thermodynamically at least, straightforward: growing energy intake and/or falling energy expenditure create an energetic surplus, resulting in fat accumulation. The situation is, however, far more complex, with genetic, physiological, social, psychological and economic factors all implicated. Thus the causes of excessive weight gain remain difficult to disentangle. We combine two recent developments from different areas of nutrition research: the study of food prices in relation to energy content and the hypothesis that an evolved propensity to regulate protein intake more strongly than non-protein calories exerts powerful leverage on overall energy intake. We partition the energy content of a range of common supermarket foods, and show that increasing overall energy content only modestly raises the cost of foods, largely as a result of macronutrients having very different costs. Higher food prices are associated with higher protein content and lower carbohydrate content, whereas fat content was not significantly associated with food price. We show that the differential costs of energy from protein and carbohydrates may bias consumers towards diets high in carbohydrate energy, leading them to consume excessive energy to meet their dietary protein needs. We review evidence from physiology, evolution and economics that support our suggestion.