Zappacosta had given the Grifone the lead at the Stadio Luigi Ferraris after racing onto a through ball and skipping past a host of Sampdoria defenders to fire home.
A cagey opening saw neither side able to fashion a clear opportunity in front of goal, although Genoa midfielder Milan Badelj almost netted with a deflected effort, whilst Miha Zajc dragged a strike from range just past the post.
The Grifone were on the front foot in the first half and came within inches of taking the lead as Zajc’s freekick from wide right evaded everyone and clipped the crossbar, with Edoardo Goldaniga unable to react in time to tap in the rebound.
Sampdoria’s best opportunities came on the counterattack through Keita Balde, although the former Lazio man was unable to truly test goalkeeper Mattia Perin.
Genoa made a blistering start to the second half and raced into the lead in style through Zappacosta. The defender latched onto Kevin Strootman’s lofted pass and flicked the ball over Tonelli’s head and cutting into the space to fire into the bottom corner.
At the other end, Perin showed good reflexes to prevent an Antonio Candreva drive from range after a heavy deflection off Keita.
However, with only 15 minutes remaining the Blucerchiati found an equaliser against the run of play, as Tonelli rose highest to head a corner back across goal and beyond Perin.
The equaliser saw both teams regress and look to hold position in the middle, although Genoa came close to snatching a late winner after Marko Pjaca pounced on a loose ball in defence but could only blaze over.