The bus was carrying students to J S Vidyaniketan school which had opened despite the district magistrate's orders to keep all schools closed in view of intense cold, officials said.
The mishap occurred near Asadnagar village under Aliganj Kotwali police station area in Etah, which is four hours drive from the national capital.
District Magistrate, Etah, Shambhu Nath put the toll at 15 and said eight of them died on the spot.
Near 20 injured students were rushed to different hospitals, he said.
The toll might increase, local officials feared.
The District Magistrate said orders have been issued to cancel the recognition of the school.
Twelve of those killed have been identified, he said, adding the deceased were in the 5-15 years age bracket.
Soon after getting the news, senior officials rushed to the accident spot and supervised rescue and relief operations.
Prime Minister Narendra Modi has condoled the death of children in the mishap.
"Anguished by the tragic accident in UP's Etah district. I share the pain of the bereaved families & condole passing away of young children," he said in a tweet.
"I pray that those injured in the accident in Etah recover at the earliest," he said.
Uttar Pradesh Governor Ram Naik and Chief Minister Akhilesh Yadav also condoled the death of the children in the mishap.
The Chief Minister has asked the district officials to launch all out rescue operations and ensure proper treatment of the injured.