About 140 cancer cases a week in Wales could be avoided if patients made lifestyle changes, a study has shown.
Cancer Research UK found tobacco smoke caused about 3,000 (15%) cases of cancer in men and women in 2015, while 1,000 (5%) were attributed to be overweight or obese.
The study showed 7,200 cases - about 38% - of cancer cases a year were preventable.
The charity said it was "clear obesity is now a major problem".
Obesity is attributed as a cause of 13 types of cancer, including cancers of the bowel, breast and kidney, and results suggest one in 20 diagnoses could be prevented by maintaining a healthy weight.
Andy Glyde, Cancer Research UK's public affairs manager in Wales, said: "These research findings are startling in that, for the first time, we can see how many cases of cancer in Wales could be prevented by things like not smoking and keeping a healthy weight.
"As part of its forthcoming obesity strategy, we urge the Welsh Government to be ambitious and include bold measures such as restricting supermarket special offers on unhealthy foods."
The study also found the third highest cause of preventable cancer is down to workplace exposures, such as working near asbestos, which leads to around 760 cases a year.
Speaking to BBC's Radio Wales, Dr Sunil Dolwani, a gastroenterologist at Cardiff University, said "only about 15% of people" were aware that excess weight could cause cancer.
He explained that excess fat and weight causes a change in the way hormones interact with different organs in the body.
"There are changes in our bodies signalling from hormones, even insulin, and fat is part and parcel of how the body signals different organs to act and react," he explained.
"Cancer is caused by cells growing more than they should and that is part of that signalling."