"After a night of search and operations, the bodies of the three missing at sea have been found," Italy's fire service said on Wednesday morning.
The local coastguard said they had located the victims in the water and on a nearby beach during a night of salvage operations made difficult by sudden bad weather in the region.
The body of the fourth victim had been recovered shortly after the crash.
The boat, carrying six people in total, hit rocks on a canal leading into Rimini's harbour in the Emilia Romagna region on Tuesday evening.
It had left Rimini's marina in the afternoon, with the group heading for Trapani in Sicily, according to the Repubblica di Bologna.
However, due to strong winds and rough seas, they had decided to turn back and were trying to re-enter the port when the boat hit rocks.
The two remaining passengers were rescued on Tuesday evening and taken to hospital in serious condition, having been in the water for around half an hour.