At least 20 people have died after a speedboat carrying Indonesian workers home from Malaysia capsized in stormy weather.

Around 90 people were on board the boat, which capsized off the Indonesian island of Batam at 5am on Wednesday.

Police suspect the boat trip was illegal and the workers were undocumented because of the high fare that passengers said they paid.

A police helicopter and more than a dozen boats were involved in rescue efforts.

Thirty nine people were rescued but at least 20 have died. A child under five years old was among the bodies taken to a local hospital.

An Indonesian woman, believed to be responsible for the journey, was arrested as she tried to leave Batam for nearby Singapore.