The blasts happened almost simultaneously at around 02:00 GMT on Tuesday in the city's Laleli and Sultanahmet districts.
Thousands of tourists stay in these quarters during their visits to Turkey's main city, which has some 12 million inhabitants.
Istanbul police chief Celalettin Cerrah told journalists that "for the moment everything is pointing to a terrorist attack".
The nationality of the victims was not immediately known but Cable TV channel CNN-Turk reported that two Chinese, two Dutch, a Ukrainian and a Turk had been injured in the blasts.
The explosion in Laleli, notably frequented by tourists from ex-Soviet nations, caused serious damage to the hotel, blowing out all the windows on the third floor and causing a fire.
Two other bombs went off at 03:00, an hour after the original blasts, in the Esenyurt district, at a major liquefied gas storage site, causing damage but no casualties, according to television reports.
Local authorities said there was no escape of gas and that a small fire was quickly put out by firefighters.
A series of four bomb attacks attributed to a local cell of the al-Qaida terror network left 60 dead in Istanbul last November.