A man has been arrested and charged after a bus driver was punched in the face and left needing stitches and dental surgery.
Roskill depot-based Rajnish Trehan was hit by a man who wouldn't pay on Saturday.
Police said the bus was travelling through Avondale on Saturday and stopped on Great North Road to pick up passengers.
A person allegedly attempted to board the bus without paying and was challenged by the driver.
The driver was assaulted and the attacker left the scene on foot, police said.
A man matching the description of the attacker was found in Avondale on Sunday, Inspector Wayne Kitcher said.
"On seeing police, he attempted to evade staff by boarding a nearby bus and hiding down the back," he said.
"Our staff boarded and arrested the man without further incident."
A 36-year-old from West Harbour has been charged with assault and due to appear in Auckland District Court on Friday.
"No one deserves to come to work and be subjected to harm just for doing their job," Kitcher said.
Tramways Auckland union president Gary Froggatt told Morning Report members were now pushing for a stop work meeting, which he acknowledged would cause disruption across the city.