An early Clayton Donaldson header gave Brentford their first away win of the 2012/13 npower League One season.
The striker took his tally for the campaign to eight with the goal, which came in the ninth minute.
Both teams had openings as the game wore on but neither could take them and Brentford saw the game out to take the points.
Almost nothing happened in the first half hour.
Brentford went ahead inside the first ten minutes but there were no other openings of note.
Brentford’s goal came when Adam Forshaw curled in a free kick towards the near post and Donaldson cleverly diverted it in to the far corner, beating the dive of Simon Eastwood.
The Portsmouth goalkeeper got down well to save a low Tom Adeyemi cross-cum-shot but the game reached the 30 minute mark with only one effort on goal.
Portsmouth had more than their fair share of the ball but had done little with it and Richard Lee had been a spectator.
The game opened up a little in the final 15 minutes of the first period and both teams had chances to get the second goal of the evening.
A Forshaw volley was blocked before Jon Harley missed the target from distance for the hosts.
Shaleum Logan saw a shot saved and Donaldson nodded a Forshaw cross inches over before Harry Forrester weaved his way past three or four defenders before slamming a shot inches wide.
The hosts ended the half well – Izale McLeod started to find space between the Brentford central defenders and Portsmouth were able to play off him.
He set up a chance for Akos Buzsaky with a cut back but the midfield shot wide from 18 yards and then had a go himself from the edge of the box, narrowly missing the target.
Substitute Ashley Harris diverted a Mustapha Dumbuya cross over the bar in stoppage time as Portsmouth pressed but Brentford got to the break ahead.
They could have doubled that lead just after half time with a Forrester shot that flew inches wide while Lee held a Buzsaky free kick at the other end.
Brentford had been forced in to a slight re-shuffle in the first half when Adeyemi limped off and Kevin O’Connor came on and had to do the same after the break.
Club captain O’Connor was taken off on a stretcher after making a tackle in midfield and Scott Barron came on with Forshaw taking a more central role.
Barron could have marked his arrival with a goal but failed to convert a Forrester cross from close range.
Portsmouth were trying to force an equaliser but were restricted to long range shots.
Buzsaky missed the target from distance and Carl Dickinson shot over from the left side of the penalty area before McLeod headed wide.
They continued to press as the game entered its later stages – Lubomir Michalik headed wide and Lee Williamson blasted over before a Brian Howard free kick flew inches wide.
Harlee Dean narrowly failed to head home a Sam Saunders free kick as Brentford sought to make the game safe and as the game entered stoppage time, Buzsaky shot over.
Portsmouth continued to press but couldn’t open The Bees up and the points headed back to West London.
Portsmouth: Eastwood; Webster (sub Harris 35 mins), Michalik, Gyepes, Dickinson; Dumbuya, Howard, Williamson, Harley (sub Walker 77 mins); Buzsaky; McLeod
Subs (not used): Andersen, Rodgers, Compton, Ertl, Russell
Bookings: Harley (75 mins)
Brentford: Lee; Logan, Dean, Craig, Bidwell; Diagouraga; Forrester (sub Saunders 85 mins), Douglas, Adeyemi (sub O’Connor 22 mins (sub Barron 57 mins)), Forshaw; Donaldson
Subs (not used): Moore, Dallas, Hayes, German
Bookings: Forrester (45 mins) (third of season), O’Connor (57 mins), Dean (77 mins) (second of season), Donaldson (81 mins), Lee (90 mins)
Attendance: 11,328 (1,084 Bees fans)
By Chris Wickham