The report in the British Medical Journal said this could be because donating blood lowers the iron level, which is linked with heart attack risk.
Jukka Salonen and colleagues at the University of Kuopio in Finland checked 2,600 men who were taking part in a heart disease study. They found that 153 of the participants gave blood in the two years before their first examination. Of them only one, or less than 1% had a heart attack compared with 226 or 9.8% of the non-donors.
Filtering out other possible factors such as medical history and health barely changed the percentages, they said.