There’s no pay from the IOC (International Olympic Committee) when they win a medal. But many countries Olympic committees pay their athletes for winning medals. Among them, The U.S., Russia, Canada, China & Italy and many more countries.
$20K-$50K per gold medal is typical in bigger countries. The smaller countries actually tend to pay more, $50K-$100K, since a single gold is more important to their country. Some athletes receive cars, houses and promise of jobs when they retire.
Source: Yahoo! Answers
In the U.S., our athletes receive, from the U.S. Olympic Committee, $25,000 for gold, $15,000 for silver, and $10,000 for bronze.
Swimmers, receive even more thanks to an organization called USA Swimming, who chips in an additional $75,000 for gold, as has been highly publicized for Missy Franklin.