It was a slow start to the game with the first meaningful chance coming in the 26th minute when Eamon Fyfe connected with Lee Chapman’s delivery into the box, but the forward was unable to keep his resulting header on target.
Just three minutes later the visitors had another good chance with Fyfe in action again when he travelled down the right flank and played the ball across for Paul McElroy, who had space but fired off-target.
Ballymena’s Josh Carson and Andrew Scott then tried their luck from range in quick succession with neither of the efforts testing Aaron McCarey.
Just after the restart Chapman travelled through midfield and to the edge of the box before firing narrowly wide of the left-hand post.
Carson then made two crucial blocks to stop Ryan Mayse’s corner before deflecting the forward’s strike away from goal moments later.
Carson was in action again when his free-kick hit the crossbar with the away side breaking the deadlock through the resulting counter-attack when Josh Ukek controlled the clearance on the left flank, travelled forward and slotted into the bottom corner.
Mayse added a quick second just three minutes later in similar fashion when Shay McCartan latched onto Lewis MacKinnon’s long pass and played the ball over the Ballymena defence for the substitute, whose powerful effort found the back of the net.
The goals weren’t done there with Mayse turning provider in the 86th minute when he charged down through midfield and crossed into the box for Fyfe, who fired past Sean O’Neill to secure Portadown’s first victory at the Ballymena Showgrounds since 2016.