The children, aged between three and seven, were being driven to their kindergarten in the city of Weihai when the bus burst into flames in a tunnel.
The driver was angry that his overtime and night shift pay had been cut, police told Xinhua news agency.
The children's teacher and the driver were also killed.
The fire was started on the bus floor near the driver's seat. Part of a lighter was discovered nearby and petrol traces were found on the bus, Xinhua said.
Electrical faults and traffic accidents had been ruled out as possible causes, police said.
A fire on a bus in China that killed five South Korean and six Chinese children was started deliberately by the driver, Chinese state media say.