Children were among the 35 people aboard the eight-meter boat when the collision occurred on Sunday evening on the Loza river near Antsohihy, the River and Maritime Port Agency (APMF) said.
Some passengers managed to swim ashore but others are unaccounted for.
"We don't know yet what happened to the other passengers," APMF Director-General Jean-Edmond Randrianantenaina told AFP.
Rescue operations are still underway, he said.
The passenger boat was sailing from Ambiky when it was rammed by a cargo dhow and sank immediately, the agency said.
Randrianantenaina suggested the accident may have been caused by lack of lighting on the passenger boat.
"The cargo ship fled after the collision, but we caught up with it," said Randrianantenaina, adding that police were questioning the crew.
Last December a boat sank off Madagascar's northeastern coast, claiming 88 lives, most of them seasonal workers returning home after harvesting cloves.