A quickfire try double knocked the stuffing out of London Irish but Gloucester Rugby boss David Humphreys reserved much of his praise for the place-kicking of fly-half James Hook.
With Greig Laidlaw on the replacements’ bench, Hook took over kicking duties in windy conditions at a sold-out Kingsholm and slotted five penalties between the posts.
That cancelled out tries from Ciaran Hearn and Alex Lewington, as the Cherry & Whites bounced back from a 14-6 half-time deficit to edge ahead.
“James was absolutely outstanding,” reflected Humphreys. “It was very difficult to kick in those conditions but he kept the scoreboard ticking over, which is what it's all about.
“We are very fortunate to have some many excellent goal-kickers in Greig Laidlaw, James, Billy Twelvetrees, Billy Burns and Rob Cook.
“Despite the interval scoreline, there wasn't a huge amount between the teams. Irish took their two opportunities well but in those conditions, it's almost better not to have the ball.
“It became an arm wrestle but we never felt under massive pressure and full credit to Charlie Sharples and Henry Purdy, who relentlessly chased kicks.
“Our second-half performance was outstanding and one of our best of the season as we had to roll up our sleeves to ensure the win.
“We are building all the time as we are now winning tight games but we have a tough group of games coming up.”
Gloucester came into the match off the back of a thrilling 39-39 draw with Harlequins at Twickenham but they had to work harder for points on this occasion.
A powerful-pack – with Kiwi lock Jeremy Thrush in dominant form – laid the platform that allowed Hook to keep the scoreboard ticking over.
Meanwhile, defeat leaves the Exiles at the foot of the Aviva Premiership Rugby table – after Newcastle Falcons beat Bath Rugby to leapfrog them into 11th.
“It would have been nice to get a bonus point as we had parts of the game under control but ill-discipline in the second half really cost us,” said London Irish head coach Tom Coventry.
“The penalty count in that half was 10-0 against us and it was difficult to play with those figures in those conditions.
“They used the maul very well and the pressure told. Losing Alex Lewington to the sin-bin didn't help as going down to 14 men is never easy."
Gloucester Rugby: Cook; Sharples (Burns 69), Meakes (Atkinson 55), Twelvetrees, Purdy; Hook, Heinz (Laidlaw 55); Wood (McAllister 46), Hibbard (Lindsay 56), Thomas (Murphy 56); Savage, Thrush; Moriarty (Morgan 46), Kvesic, Kalamafoni (Rowan 65)
London Irish: Maitland; Lewington, Hearn, Williams, Tikoirotuma; Noakes (Geraghty 65), McKibbin (Steele 58); Court (Smallbone 61), Paice (Ellis 68), Franks (Aulika 68); Symons, Lloyd; Narraway (Sinclair 56), Cowan (Trayfoot 50), Treviranus
Replacements not used: Ojo
Tries: Kvesic, Burns
Penalties: Hook 5
Tries: Hearn, Lewington
Referee: Tom Foley
Boxing Day Sale! Click here to grab a bargain with 20% off tickets to the Aviva Premiership Rugby Final on 28 May at Twickenham.