The Baggies welcomed Mark Warburton's side having put in underwhelming displays against Millwall, Derby and Preston North End in their last three outings - matches that all ended in draws.
But they put in a significantly improved performance against the Hoops to eventually take all three points.
Valerien Ismael's side endured a nightmare start when they fell behind after just 60 seconds to an Andre Gray goal.
But keeping the ball on the deck more and playing with more composure they consistently got into dangerous areas.
They had some good fortune when they pulled level in the 75th minute with goalkeeper Seny Dieng inexplicably fumbling the ball into his own net.
But Albion's winner - in the 88th minute - was an excellent move that saw Jordan Hugill and Callum Robinson combine before Grant produced an exquisite finish in the corner.
Ismael opted to make one change from the team that drew at Preston when naming his starting line-up.
In attack, Karlan Grant replaced Jordan Hugill with the Baggies again lining up in a 3-4-3 formation.
Grant started on left flank with his introduction seeing Matt Phillips shift to the central striker role with Grady Diangana on the right.
At the back, Conor Townsend continued at left centre-back alongside Kyle Bartley and Semi Ajayi.
Darnell Furlong and Adam Reach were the wing-backs with Jake Livermore and Alex Mowatt the midfield two.
QPR lined up in a 3-4-2-1 system that saw ex-Albion man Chris Willock and Ilias Chair operate just behind lone striker Gray.
Fellow ex-Baggie Charlie Austin was named amongst the substitutes.
In what was a disastrous start for Ismael's side, QPR took the lead inside the opening minute.
A ball in behind the Albion defence caused havoc with Sam Johnstone rushing out of his box to try and clear it.
The keeper, though, was never going to in the foot race he had entered with Gray.
And the Wolverhampton-born striker then produced a clever finish to roll the ball into the back of net from 18-yards.
Albion almost pulled level just two minutes later with Diangana hitting a powerful strike from just outside the box that whistled past the post.
Grant then tested Seny Dieng with another effort from distance.
As the half reached its midway point the game was being played at a frantic pace with QPR passing the ball a lot more than Albion's recent opponents.
That, in turn, allowed the Baggies to press more. And it led to them consistently getting into dangerous areas.
They should have pulled level just past the half-hour mark when Phillips hit the byline before standing up a cross.
That was met by Reach who planted a powerful header towards goal.
The net would have bulged if his effort was either side of Dieng.
But it was straight at him and that allowed the keeper to make a fairly straightforward stop.
Albion continued to pile on the pressure with QPR's defending becoming increasingly last-ditch.
And they had another glorious chance to pull level just before the break with Grant the man who this time reached the byline.
He also stood up a cross which was met by Furlong. But he headed over when he really should have done better.
It was clear at the start of the second half Albion were trying to keep the ball down and pass it more.
But Ismael opted to make a double change in the 54th minute with Callum Robinson and Jordan Hugill replacing Phillips and Diangana - with Diangana's withdrawal met by a chorus of boos.
It was Warburton's side who threatened next, though, with Moses Obudajo hitting a fierce effort from 20-yards which Johnstone had to parry away.
Overall, Albion were enjoying the lion's share of possession without creating much.
But with 15 minutes they were gifted an equaliser.
Grant collected the ball in the box and hit a low drive that should have been comfortable for Dieng.
But the goalkeeper got himself into a right mess and somehow allowed the ball to squirm past him and in.
Seconds later Albion were almost ahead with Robinson hitting a powerful effort in the box that sailed wide.
Suddenly the Baggies had a real spring in their step with Livermore firing agonisingly wide from the edge of the box.
And with just two minutes of the 90 to play, they found a winner with a well-worked goal.
A clever flick from Hugill teed up Robinson who then played a lovely pass to find Grant in the box.
And the forward this time produced a clinical finish to arrow the ball into the bottom corner and past Dieng.
Albion (3-4-3): Johnstone, Ajayi, Bartley, Townsend, Furlong, Livermore, Mowatt, Reach, Diangana (Robinson 54), Phillips (Hugukk 54), Grant (Bryan 89).
Subs not used: Button, Kipre, Molumby, Snodgrass.
QPR (3-4-3): Dieng, Dickie, De Wijs (Kakay 77), Dunne, Barbet, Johansen (Dozzell 79(, Willock (Dykes 65), Chair, Ball, Odubajo, Gray.
Subs not used: Walsh, Austin, Thomas, Adomah.