Johnny Sexton got Ireland out of jail at Murrayfield as his late penalty snatched a 27-24 victory.
Ireland let a 14-point lead slip as Scotland drew level with six minutes remaining, only for Sexton to nail a penalty from the left touchline to clinch back-to-back Six Nations wins.
Hugo Keenan - 7
Soared through the Edinburgh sky to make some outstanding catches under pressure.
Keenan read the game expertly from full-back and popped up with some big tackles down the flanks as Scotland threatened.
Blotted his copybook with poor communication with James Lowe for Huw Jones' try.
Keith Earls – 8
Repaid Andy Farrell's faith in recalling him. Earls was given few opportunities in attack but shone in defence.
The wing caused uncertainty in the Scotland defence when chasing Johnny Sexton’s kick, leading to Robbie Henshaw’s try, and won two turnover penalties in as many minutes late in the half.
Earls’ kick chase was fantastic and his superb catch from Jamison Gibson-Park’s box-kick with one minute remaining helped Ireland close the game out.
Garry Ringrose – 6
Saw a poor clearing kick charged down which led to Scotland's first try.
Ringrose was closely marshalled by the Scotland defence and although playing below his usual high standards he remained a threat with ball in hand. Made one of Ireland’s few line breaks.
Robbie Henshaw – 9
Ireland's player of the tournament to date. Comfortable at first receiver, rock-solid in defence – Henshaw was brilliant in every facet.
Was rewarded for a great kick chase with the opening try. Having beaten Stuart Hogg in the air, Henshaw then reacted quickest to pounce for a poacher’s try.
Henshaw was an aerial threat all afternoon while his powerful carries got Ireland over the gainline.
James Lowe – 4
The Leinster wing saw plenty of ball early on, breaking down the wing off Will Connors' pass and throwing a lovely offload to Sexton, and he did well to push Russell inside and force a knock-on as Scotland threatened out wide.
Lowe could perhaps be forgiven for failing to cleanly catch Russell’s kick, which led to Scotland’s first try, but there can be no excuse for the missed tackle on Jones’ for Scotland’s second.
Lowe followed that defensive error up with a desperate pass that bobbled into touch, and was hooked moments later.
Johnny Sexton – 8
Nerves of steel from the tee, Sexton kicked expertly through and produced an assured 80-minute display.
Two excellent kicks led to the opening try and Sexton mixed his game up nicely to keep the Scotland defence guessing.
Jamison Gibson-Park - 6
Like his half-back partner, Gibson-Park also played the full 80 and his lovely pass to Sexton took out six Scotland defenders in the lead-up to the first try.
Should have scored a try himself on 21 minutes when Ireland mauled towards the line, but his snipe arrived too late and he was turned over.
Box-kicks were a mixed bag and the tempo of his passing fluctuated, while he replicated Lowe with a poor missed tackle on Jones for Scotland's second try.
Cian Healy - 6
Edged a great battle with WP Nel at scrum time and popped up with some good moments in both attack and defence.
Rob Herring - 7
Recalled for his lineout expertise, Herring justified his selection by finding a green shirt with all but one of his darts.
Made eight tackles and won a turnover penalty, and shunted Tadhg Beirne over the line for a try before being replaced after the hour mark.
Tadhg Furlong – 7
Coughed up a soft penalty to hand Scotland their first points before being burned out wide by Finn Russell.
Furlong grew into the contest, though, and produced some nimble footwork to step around Hamish Watson and Russell on his own 22. He also chipped in with nine tackles and a defensive turnover before departing on 55 minutes.
Iain Henderson - 9
A defensive rock. Henderson made a lung-busting 21 tackles and hit countless rucks to frustrate Scotland's attack.
The Ulsterman produced a great turnover and lineout steal at the beginning of the second half as Scotland threatened to take charge.
Henderson was bounced by Hamish Watson for Scotland’s equalising try but he atoned for that by winning the decisive penalty which Sexton dispatched.
James Ryan - 8
Picked apart Scotland's lineout. Ryan stole two of the hosts’ throws and deprived them of clean ball from the set-piece.
Made a vital tackle on Russell early on as Scotland threatened and popped up with two turnovers as he dovetailed with Henderson in defence.
Tadhg Beirne - 8
Barged over from close range for his fifth Test try and it was no more than his performance deserved.
Beirne set the tone early on by combining with Sexton to execute a choke tackle on Rory Sutherland, while a deft give-and-go with CJ Stander was one of a number of standout moments in attack.
Was relieved to see Russell pull a penalty across the posts after being penalised for obstruction from a maul. Beirne also popped up with a couple of trademark jackals before departing on 64 minutes.
Will Connors - 7
Second only to Henderson in the tackle charts with 14, Connor also hit double figures in carries in a fine all-round display.
The openside ran over Russell with a big carry on 24 minutes and followed it up moments later with a crunching hit on Watson.
Made a crucial tackle to prevent Van der Merwe from scoring in the corner with seven minutes remaining.
CJ Stander – 7
Popped up with some nice touches in attack on his 50th Ireland appearance.
It was a trademark display from the No 8, who once again topped the ball-carrying charts with 17 while also chipping in with ten tackles.
Stander was unfortunate to see a great turnover on the deck result in a Scotland try after Ringrose's kick was charged down, but a lineout steal minutes later helped relieve some of the pressure.
Dave Kilcoyne (for Healy, 55) - 6
Stepped up in defence as Ireland came under the cosh late on.
Andrew Porter (for Furlong, 55) - 5
Pinged for not releasing off his first carry and missed a tackle in the lead-up to Scotland's second try. Did make nine tackles, though, which highlights the pressure Ireland came under.
Ronan Kelleher (for Herring, 64) - 5
A crooked throw at the lineout shortly after his introduction handed Scotland possession deep inside the Ireland half.
Jack Conan (for Beirne, 64) - 6
Wasn’t given a chance to show his ball-carrying threat, with Ireland firmly on the back foot for the final quarter.
Jordan Larmour (for Lowe, 66) - 6
Saw little involvement with few Scottish attacks coming down his wing and Ireland offering little in attack late on.
Ryan Baird (for Ryan, 71) - 7
Produced a game-changing moment by blocking Price’s clearing kick and then hunting down the scrum-half after he had retrieved possession, allowing Henderson to jackal and win the turnover penalty.