Researchers at Dundee University have identified a "greedy gene" which causes people to eat an extra 100 calories on average at a single meal.
Scientists found that the gene, called FTO, appears to encourage people to opt for high calorie foods containing sugar and fat, reports the Telegraph.
The research found that the gene is carried by more than half of the population and encourages children to eat an average of 100 extra calories per sitting.
FTO has previously been linked to an increased risk of becoming overweight or obese.
However, scientists have struggled to understand if it affects calorie intake or how people's bodies process fat.
Professor Colin Palmer, from the University of Dundee, who led the study, said: "What this study effectively shows is that the people with the relevant variants on the gene have a trait which may lead them to eat more unhealthy, fattening foods. I would stress that this is a trait, and not an absolute occurrence."
But he insisted that the effects of FTO could be overcome.
"What we are doing with this work is debunking the old myths which are still often repeated in relation to obesity: 'I have big bones', or 'I have a slow metabolism', or indeed 'it is in my genes'. While strong genetic effects have been found in extremely rare cases, most obesity is associated with rather weak genetic tendencies that are modifiable by diet and exercise," said Professor Palmer.
To reach the conclusion, the researchers tested 100 children aged between four and 10 given three meals, each of which contained a mix of different foods including ham, cheese, crackers, crisps, raisins, grapes, cucumber, carrot, chocolate buttons, water, orange juice and bread.