GWS captain Toby Greene had a case of the goalkicking yips but Port Adelaide were just as bad in front of goal as the Giants posted an ugly 22-point win at Giants Stadium.
Greene had 0.5 to his name in Sunday's clash before finally kicking his first major midway through the final quarter.
That gave the Giants a 23-point lead and it proved enough as the home side held on for an important 9.19 (73) to 6.15 (51) win.
The win lifted GWS (8-5) above the Power (8-5) into fifth spot.
Port Adelaide would have jumped to second with victory.
The two teams kicked a combined 15.34 despite the match being played in fine conditions.
"I thought it was a scrappy game, both sides really untidy at times," Port coach Ken Hinkley said.
"They had more moments than us and had a bit more power in their front half, (meaning) they could put a score on the board that was better than ours.
"They kicked (19) points and we kicked 15. Not a great exhibition of Australian Rules Football."
Greene was the biggest culprit in front of goal, though he was a tad unlucky with his first shot in the opening term that was originally declared a goal before being overturned for being touched by an opponent.
"Both teams were pretty inaccurate. I'm not sure why," GWS coach Adam Kingsley said.
"It felt like we were having some shots from wide or long, and even some shots we should have made, we probably didn't take advantage of that.
"It felt like they were having long shots as well.
"The bulk of the game I was really pleased with, I thought we played how we wanted to play, particularly with the ball."
Star Port midfielder Zak Butters could be in trouble for slapping Tom Green with an open palm in the first quarter.
Butters went to whack Green on the shoulder, but his hand deflected up to his opponent's face.
It was a frustrating day for Butters, who was restricted to 17 disposals and four clearances by tagger Toby Bedford (16 disposals, three clearances, one goal).
Mitch Georgiades kicked three goals for Port, while Dan Houston finished with 35 disposals and 790m gained.
GWS ruckman Kieren Briggs racked up 16 disposals, nine clearances and 29 hit-outs in a losing cause.
Hinkley made two major selection statements by dropping forwards Charlie Dixon and Jeremy Finlayson, and it was Georgiades who stood tall in the opening term with two goals.
GWS could only manage six behinds as Port entered the first break with a 15-point advantage.
The Giants kicked another behind to start the second term, but their run of seven misses was finally brought to an end courtesy of a horror defensive turnover from Port backman Esava Ratugolea.
Callum Brown marked Ratugolea's errant kick before converting for the Giants' opener, and he snared another major a minute later to spark a four-goal-to-nil second term for GWS.
The second half was a scrappy affair as both sides missed a glut of gettable shots.
Port levelled the scores early in the third term, but the Giants controlled proceedings for the rest of the match.