Northland pivot Ash Moeke added a tricky conversion to put them within three points, but that was as close as the sky blue-clad outfit got as they struggled to mount any meaningful offence and too often relied on hoping second-five Rene Ranger could produce some magic.
As always, the former All Black was dynamic, who was playing with the unfamiliar No 12 jumper on, but he did manage to lay on a late try for centre Fa'atonia Autagavaia who took advantage of a hole created by Ranger and he galloped off in to the sunset for a five-pointer.
Luke Braid, Tanerau Latimer and Carl Axtens were impressive in the contact areas for the Steamers as they bullied Northland at the breakdown and gave their backline a great platform to work from.
Northland weren't helped by replacement hooker David Hall being sent to the sin bin for 10 minutes during the second half and Bay of Plenty were able to take control of the game with the one-man advantage as they scored two converted tries.
Wright did manage to add another try with only a couple of minutes left but Bay of Plenty held on to deny Northland any bonus points.
The victory lifted Bay of Plenty to fifth in the Premiership, two points ahead of Waikato and Hawkes Bay, but both those sides have a game in hand on the Steamers.
Northland remain fourth in the Championship.
Bay of Plenty 31 (Dan Goodwin 2, Carl Axtens, Greg Pleasants-Tate tries; Chris Noakes 4 con, pen) Northland 19 (Matt Wright 2, Fa'atonia Autagavaia tries; Ash Moeke 2 cons) HT: 10-7