Liverpool started fast at Anfield as they pursued the goals needed to turn the tie on its head, with Mohamed Salah spurning a big early chance following a delightful pass from Ozan Kabak.
James Milner, a controversial pick ahead of Thiago in midfield, put his stamp on proceedings early, and almost opened the scoring as his long-range curler drew a big save from Thibaut Courtois as it arrowed towards the top corner.
At the other end, Karim Benzema hit the post after leaving Nat Phillips scrabbling for the ball, serving as a reminder of the quality Liverpool were facing despite Real being largely off-colour.
Real looked to take the sting out of the game whenever possible, slowing play down and passing around the Reds’ press, but they remained on the back foot.
Salah and Gini Wijnaldum both wasted chances late into the first half, with the Dutchman’s arguably the biggest of the opening 45 minutes, scooping over when it was easier to hit the target.
HT: Liverpool 0-0 Real Madrid
Jurgen Klopp will have been positive during the interval, and Liverpool kept up momentum upon the restart, with Roberto Firmino firing into the legs of Courtois after a stunning outside-of-the-boot pass from Trent Alexander-Arnold.
The manager rolled the dice before the hour, sending on both Thiago and Diogo Jota for Milner and Kabak, with the Turk finding himself substituted for the fourth consecutive game despite Phillips being booked.
Jota had his first opportunity with a header from Alexander-Arnold’s cross, looping over the bar and onto the turf behind the goal, and though it was a half-chance, it displayed the supreme creative form of the right-back.
The Portuguese was lively but unable to make a telling impact, with his closest effort coming with a drilled strike into the side-netting, with Real well-organised and holding strong.
In the latter stages the Reds were hugely unimaginative, with their hope clearly fading as they dropped out of the Champions League.