At least 15 children were killed and several other wounded after a speeding truck collided with a school bus in northern India.

NDTV, a privately run TV channel, said there were around 30 children on board, aged between seven and 10 years old.

The NDTV report said that the school bus driver died instantly while the truck driver was admitted to hospital.

Javeed Ahmed, a senior police official, said the children were on their way to a school in Etah town, Uttar Pradesh state, some 270km southeast of New Delhi.

OPINION: Why Indian cars are not driven by safety concerns

Police said it was not clear what had caused the vehicles to crash although collisions are a common occurrence on winter mornings, when northern India is frequently blanketed with thick fog.

Prime Minister Narendra Modi tweeted his condolences to the victims' families.

"Anguished by the tragic accident in UP's Etah district," he said. "I pray for those injured in the accident in Etah recover at the earliest."

Nearly 150,000 people were killed across India in road accidents last year, an average of 400 a day, according to data from the Ministry of Road Transport and Highways.