Mardjono Siswo Suwarno, the lead investigator, said that the aircraft's front wheels snapped off as it landed, and that fire spread from punctured fuel tanks in the right wing.
Bodies identified
All 21 people killed have been positively identified, including five Australians, Sudibyo, a forensic doctor at Sardjito hospital in Yogyakarta, where the accident occurred, was quoted as saying by the Detikcom news website.
The crash - nine weeks after another Boeing 737 plunged into the sea, killing all 102 people on board - put Indonesia's patchy aviation safety record back in the spotlight.
Dudi Sudibyo, an aviation analyst, said that pilots were overworked and there were not enough flight inspectors or aircraft for Indonesia's booming aviation sector.
"The regulations are good, but the problem is in implementing them,'' he said.
Nearly 120 people survived Wednesday's crash at Yogyakarta's international airport, jumping through emergency exits flames and smoke filled the cabin.
Survivors said the aircraft seemed to be going too fast as it approached the runway after a 50-minute journey from the capital, Jakarta.
The authorities said there was no indication of sabotage or a mid-air explosion.