The vessel was carrying 277 people from Tanjung Perak port in East Java's Surabaya when it caught fire late Thursday, said Budi Prasetyo, the head of the local search and rescue agency.
About 240 people were rescued by nearby ships and boats. Three others were confirmed dead and rescuers were still searching for 34 others thought to be missing, said National Search and Rescue Agency spokesman Yusuf Latif.
A port official, Syahrul Nugroho, said the fire broke out about 11 hours after the ferry left Surabaya headed for East Kalimantan province's Balikpapan city. The cause of the fire was not immediately clear.
Ferry accidents are common in Indonesia, the world's largest archipelago nation with more than 17,000 islands. Many accidents are blamed on lax regulation of boat services.
The manifest for the ferry that caught fire Thursday showed that only 111 people were registered as passengers, along with 44 crewmembers, Prasetyo said.