Key events
GOAL! PSV 1-2 Liverpool (Elliott 40)
Federico Chiesa was OK to continue, and here he is, pearling a shot from the right-hand edge of the D. It’s saved by Walter Benítez, but only parried into the road of Harvey Elliott, who slams home.
GOAL! Stuttgart 0-3 PSG (Dembele 35). Fabian Bredlow makes a stunning save on his line to deny Désiré Doué. But it’s all for nought when PSG launch another attack 60 seconds later, Ousmane Dembele putting the finishing touches to it.
GOAL! Aston Villa 2-2 Celtic (Idah 38)
Adam Idah meets a right-wing cross this time, and sweeps into the net. A possible 3-0 lead has suddenly turned into a 2-2 scoreline! Unai Emery utterly stunned.
GOAL! Aston Villa 2-1 Celtic (Idah 36)
It was so close to 3-0. Now there’s just a goal in it, Adam Idah meeting a deep cross from the left and hooking a crisp close-range shot into the net.
GOAL! PSV 1-1 Liverpool (Bakayoko 35)
Johan Bakayoko sits both Andy Robertson and Jarell Quansah down with one smooth swivel, then hammers home to level for PSV.
Aston Villa 2-0 Celtic. Ollie Watkins dinks over Kasper Schmeichel but Alistair Johnston arrives to hook off the line.
GOAL! Brest 0-1 Real Madrid (Rodrygo 27). A glorious solo goal by Rodrygo, who drops a shoulder to jink his way into the Brest box from the left, before lashing home. The champions making sure of their play-off spot … and maybe even more?
GOAL! Bayer Leverkusen 1-0 Sparta Prague (Wirtz 32). Jeremie Frimpong tears down the right and crosses low for Florian Wirtz, who whistles a forensic first-time shot into the bottom left. Lovely goal.
GOAL! Girona 1-0 Arsenal (Danjuma 28)
A simple ball down the middle, and Arnaut Danjuma is sent clear. Neto is on a weird walkabout, so Danjuma, 40 yards out, curls over the keeper’s head and into the unguarded net.
GOAL! PSV 0-1 Liverpool (Gakpo 28 pen)
Cody Gakpo, playing against his old club, fizzes the penalty nervelessly into the bottom right. No word on Chiesa yet.
PSV 0-0 Liverpool. Joey Veerman takes a heavy touch in his own box. Federico Chiesa nips in and is clattered for his trouble. Chiesa stays down a while. It’s a penalty, but also a worrying moment for a player who has had more than his fair share of injuries.
GOAL! Stuttgart 0-2 PSG (Dembele 17). Bradley Barcola turns provider this time, making good down the left and crossing for Ousmane Dembele to double PSG’s lead.
GOAL! Sporting 0-1 Bologna (Pobega 21). Another close-range header. Tommaso Pobega with this one.
GOAL! Juventus 0-1 Benfica (Pavlidis 16). Evangelos Pavlidis opens the scoring in Turin, and the Old Lady’s hopes of a seeded finish in the play-off places are compromised.
GOAL! Dinamo Zagreb 1-0 Milan (Baturina 19). Matteo Gabbia stands on the ball, allowing Martin Baturina to race off and slot. A dreadful error.
GOAL! Inter Milan 2 -0 Monaco (Martinez 16). Lautaro Martinez drives home from the edge of the box, and ten-man Monaco are in a world of pain.
GOAL! Borussia Dortmund 1-0 Shakhtar Donetsk (Guirassy 17). A scrappy mess but they all count. Serhou Guirassy with the opener.
GOAL! Red Bull Salzburg 0-2 Atletico Madrid (Griezmann 13). Rodrigo De Paul sends Giuliano Simeone clear down the right. Alexander Schlager rushes out of his box rashly. Simeone rounds him and rolls across for Antoine Griezmann, who can’t miss. A goal and now an assist for the manager’s boy!
GOAL! Lille 1-1 Feyenoord (Gimenez 14). A corner in from the right. Gernot Trauner heads down. Santiago Giménez pokes home from close range.
Inter 1-0 Monaco. Marcus Thuram has already won a penalty. Now his bustle down the middle teases Christian Mawissa into showcasing his rugby tackling skills. Off Mawissa goes, and Monaco are in all sorts.
Barcelona 0-0 Atalanta. Lamine Yamal nearly opens the scoring in jaw-dropping style, gliding in from the right and curling a shot towards the top corner. Misses by inches.
GOAL! Lille 1-0 Feyenoord (Sahraoui 4). Osame Sahraoui sends a low forensic shot across Feyenoord keeper Justin Bijlow and into the bottom left.
GOAL! Bayern Munich 1-0 Slovan Bratislava (Muller 8). Another close-range header, this time from the old boy Thomas Muller.
GOAL! Stuttgart 0-1 PSG (Barcola 6). Fresh from giving Manchester City a good hiding, PSG continue on their upward climb. A corner from the right flicked on and headed home by Bradley Barcola from close range.
GOAL! Red Bull Salzburg 0-1 Atletico Madrid (Simeone 5). The manager’s son Giuliano Simeone opens the scoring for Atleti.
GOAL! Aston Villa 2-0 Celtic (Rogers 5)
It’s two for Villa, and two for Rogers, who lashes a spectacular one into the top right. Oh Brendan. Back to his bad ways in Europe.
GOAL! Inter 1-0 Monaco (Martinez 3). Denis Zakaria clips Marcus Thuram from behind. Penalty. Lautaro Martínez hammers it home.
GOAL! Aston Villa 1-0 Celtic (Rogers 3)
Jacob Ramsey tears down the left and crosses low for Morgan Rogers, who can’t miss from six yards. What a start at Villa Park!
Aston Villa 0-0 Celtic. A great chance for Hyunjun Yang to release Reo Hatate clear through on goal, but he overhits the pass woefully. Villa’s high line getting away with one.
A distinct lack of first-minute goals. Probably shouldn’t moan about this. In lieu of early drama, here’s John Parry: “My prediction is that the most fun will come in the final five minutes, when some team somewhere, relaxing into slowing the game down with a two-goal lead, blows the lot affecting some other teams half a continent away.”
Here we go, then. It’s on. I’m going in. Good luck everyone.
The teams are out! Of the 36 currently doing their stretches, politely listening to corporate anthems, shaking hands, tossing coins and swapping pennants, only 11 are sure of their fate. Liverpool and Barcelona are definitely through to the last 16; Bologna, Sparta Prague, RB Leipzig, Girona, Red Star Belgrade, Sturm Graz, RB Salzburg, Slovan Bratislava and Young Boys already know the jig is up. Everyone else pensive, in their special place. A kind of hush, all over the continent tonight. The calm before the storm. We’ll be off in a couple of minutes.
Pre-pandemonium postbag. “The nonsense of the new Champions League format spilling into January means that Man City cannot field their expensive new striker to help them get over the line. Meanwhile, while Eintracht Frankfurt are virtually over the line in the Europa League, they must surely be also mildly [word redacted by Family Website editor] at losing their top scorer before the job is fully done” – Ben Chia
“Before you say ‘Liverpool are disrespecting European heritage and the opposition with this outrageous rotation’, I say Slot has earned the right to field what could still be a competitive side” – Michael
“Raheem Sterling then. He’s got a certain fund of goodwill to draw on, but it’s running out a bit quicker than must be comfortable for him; and you sense he feels it, and wants to do something to top up the credit. But what? He’s 30 and never a great runner anyway. He can dribble and move his legs about in mysterious ways, but so could Nicolas Pépé, and see where that got him. He knows he’s there on sufferance. He’s been through a lot, and deserves better. May he score a double hat-trick tonight, before the waters close over him” – Charles Antaki
Man City v Brugge team news
Manchester City: Ederson, Nunes, Stones, Akanji, Gvardiol, Kovacic, Gundogan, De Bruyne, Silva, Foden, Haaland.
Subs: Ortega, Carson, Grealish, Savinho, Wright, Alleyne, O’Reilly, Lewis, McAtee.
Club Brugge: Mignolet, Seys, Ordonez, Mechele, De Cuyper, Onyedika, Jashari, Talbi, Vanaken, Tzolis, Jutgla.
Subs: Romero, Vetlesen, Van de Heuvel, Vermant, Nilsson, Skoras, Nielsen, Jackers, Siquet, Spileers, Sabbe.
Daniel Harris has all the details here ☟☟☟☟☟.
Girona v Arsenal team news
Girona: Lopez, Martinez, Tsygankov, Ruiz, Asprilla, Danjuma, Romeu, Juanpe, Frances, Martin, Yaakobishvili.
Subs: Gazzaniga, Danso, Van de Beek, Stuani, Miovski, Herrera, Solis, Portu, Comas, Clua, Kim, Artero.
Arsenal: Neto, Partey, Kiwior, Gabriel, Calafiori, Jorginho, Merino, Odegaard, Nwaneri, Sterling, Trossard.
Subs: Setford, Porter, Saliba, Tierney, Martinelli, Timber, Zinchenko, Havertz, Butler-Oyedeji, Rice, Lewis-Skelly, Oulad M’Hand.
Arsenal are pretty much certain of a top-eight finish, so Mikel Arteta gives his starting XI a good old shoogle. Neto makes his first start in goal, with David Raya putting his feet up at home. Ethan Nwaneri, Raheem Sterling, Jacob Kiwior and Jorginho all start.
PSV v Liverpool team news
PSV: Benitez, Karsdorp, Boscagli, Obispo, Junior, Bakayoko, Land, Veerman, Saibari, Pepi, Til.
Subs: Drommel, Schiks, de Jong, Driouech, Babadi, Kuhn, Ledezma, Nagalo, Abed.
Liverpool: Kelleher, Bradley, Robertson, Quansah, Tsimikas, McConnell, Endo, Elliott, Chiesa, Danns, Gakpo.
Subs: Jaros, Davies, Nallo, Norris, Morton, Nyoni, Kone-Doherty, Mabaya, Morrison.
Liverpool make wholesale changes with top-two qualification guaranteed and a trip to Bournemouth this weekend uppermost in mind. Jayden Danns makes his first start up front, alongside the lesser-spotted Federico Chiesa. Andy Robertson is getting a run-out in central defence by the looks of it.
Aston Villa v Celtic team news
Aston Villa: Martinez, Cash, Konsa, Bogarde, Digne, Tielemans, Kamara, Bailey, Rogers, Ramsey, Watkins.
Subs: Olsen, Zych, McGinn, Duran, Nedeljkovic, Maatsen, Swinkels, Patterson, Young.
Celtic: Schmeichel, Johnston, Scales, Trusty, Taylor, Engels, McGregor, Hatate, Kuhn, Idah, Yang.
Subs: Sinisalo, Bain, Palma, McCowan, Nawrocki, Bernardo, Montgomery, Murray, Cummings, Ralston.
Ollie Watkins – reportedly the subject of a £60m bid from Arsenal – starts for Villa. Fellow transfer target Jhon Duran is on the bench. Celtic meanwhile fill the gap vacated by the departed Kyogo Furuhashi with Adam Idah.
Jeopardy Corner. Liverpool are guaranteed a top-two finish. Arsenal are almost certainly going to qualify automatically for the Round of 16. Aston Villa and Celtic – who face off in this week’s Battle of Britain – are shoo-ins for the play-offs, and both have a chance of a top-eight finish if things go their way. Manchester City, however, are in a spot of bother, so their must-win game with Brugge gets the full MBM treatment, courtesy of Daniel Harris. Please toggle between us to your heart’s content.
The mega-table, as it stands going into the final matchday. I can categorically state that we will not be updating this every time a goal goes in. We love doing things for you, but there are limits.
Preamble
Welcome to chaos. There are 36 clubs playing 18 fixtures to determine which eight qualify automatically for the Round of 16 and which 16 go into the play-off round. Here are those fixtures …
-
Aston Villa v Celtic
-
Barcelona v Atalanta
-
Bayer Leverkusen v Sparta Prague
-
Bayern Munich v Slovan Bratislava
-
Borussia Dortmund v Shakhtar Donetsk
-
Brest v Real Madrid
-
Dinamo Zagreb v AC Milan
-
Girona v Arsenal
-
Internazionale v Monaco
-
Juventus v Benfica
-
Lille v Feyenoord
-
Manchester City v Club Brugge
-
PSV v Liverpool
-
Red Bull Salzburg v Atletico Madrid
-
Sporting v Bologna
-
Sturm Graz v RB Leipzig
-
Stuttgart v Paris Saint-Germain
-
Young Boys v Red Star Belgrade
… and this ☟☟☟☟☟ is what each club needs to do. Kick off is at 8pm GMT. Bedlam ahoy!