European Championships 2020 Winners: Italy Runners-up: England Holders from previous tournament: Portugal QUALIFYING
| Group A | 22 March 2019 | Bulgaria | 1 | - | 1 | Montenegro | 5,652 | Vasil Levski National Stadium, Sofia | | Nedelev (82 - pen.) | | | | Mugosa (50)
| | | 22 March 2019 | England | 5 | - | 0 | Czech Republic | 82,575 | Wembley Stadium, London | | Sterling 3 (24, 62, 68), Kane (45+2 - pen.), Kalas (84 - og) | | | | | | | 25 March 2019 | Kosovo | 1 | - | 1 | Bulgaria | 12,580 | Fadil Vokrri Stadium, Pristina | | Zeneli (61) | | | | Bozhikov (39) | | | 25 March 2019 | Montenegro
| 1 | - | 5 | England | 8,329 | City Stadium, Podgorica | | Vesovic (17) | | | | Keane (30), Barkley 2 (39, 59), Kane (71), Sterling (81) | | | 7 June 2019 | Czech Republic | 2 | - | 1 | Bulgaria | 13,482 | Stadion Letna, Prague | | Schick 2 (19, 50) | | | | Isa (3) | | | 7 June 2019 | Montenegro | 1 | - | 1 | Kosovo | 100 | City Stadium, Podgorica | | Mugosa (69) | | | | Rashica (24) | Montenegro were sanctioned by UEFA to play one home match without spectators for racist behaviour in their home match against England. | 10 June 2019 | Bulgaria | 2 | - | 3 | Kosova | 4,994 | Vasil Levski National Stadium, Sofia | | Popov I (43), Dimitrov (55) | | | | Rashica (14), Muriqi (64), Rashani (90+3) | | | 10 June 2019 | Czech Republic | 3 | - | 0 | Montenegro | 11,565 | Andruv Stadion, Olomouc | | Jankto (18), Kopitovic (49 - og), Schick (82 - pen.) | | | | | | | 7 September 2019 | Kosovo | 2 | - | 1 | Czech Republic | 12,678 | Fadil Vokrri Stadium, Pristina | | Muriqi (20), Vojvoda (67)
| | | | Schick (16) | | | 7 September 2019 | England | 4 | - | 0 | Bulgaria | 82,605 | Wembley Stadium, London | | Kane 3 (24, 50 - pen., 73 - pen.), Sterling (55) | | | | | | | 10 September 2019 | England | 5 | - | 3 | Kosovo | 30,155 | St Mary's Stadium, Southampton | | Sterling (8), Kane (19), Vojvoda (38 - og), Sancho 2 (44, 45+1) | | | | Berisha V 2 (1, 49), Muriqi (55 - pen.) | | | 10 September 2019 | Montenegro | 0 | - | 3 | Czech Republic | 5,951 | City Stadium, Podgorica | | | | | | Soucek (54), Masopust (58), Darida (90+4 - pen.) | | | 11 October 2019 | Czech Republic | 2 | - | 1 | England | 18,651 | Sinobo Stadium, Prague | | Brabec (9), Ondrasek (85) | | | | Kane (5 - pen.) | | | 11 October 2019 | Montenegro | 0 | - | 0 | Bulgaria | 2,743 | City Stadium, Podgorica | 14 October 2019 | Bulgaria | 0 | - | 6 | England | 17,481 | Vasil Levski National Stadium, Sofia | | | | | | Rashford (7), Barkley 2 (20, 32), Sterling 2 (45+3, 69), Kane (85) | | | 14 October 2019 | Kosovo | 2 | - | 0 | Montenegro | 12,600 | Fadil Vokrri Stadium, Pristina | | Rrahmani (10), Muriqi (35) | | | | | | | 14 November 2019 | Czech Republic | 2 | - | 1 | Kosovo | 10,986 | Struncovy sady Stadion, Plzen | | Kral (71), Celustka (79) | | | | Nuhiu (50_ | | | 14 November 2019 | England | 7 | - | 0 | Montenegro | 77,277 | Wembley Stadium, London | | Oxlade-Chamberlain (11), Kane 3 (19, 24, 37), Rashford (30), Sofranac (66 - og), Abraham (84) | | | | | | | 17 November 2019 | Bulgaria | 1 | - | 0 | Czech Republic | 0 | Vasil Levski National Stadium, Sofia | | Bozhikov (56)
| | | | | The match was played behind closed doors due to a UEFA punishment against Bulgaria for racist behaviour in their home match against England. | Final Group A table | P | W | D | L | F | A | Pts | Goal Diff | 1 | England | 8 | 7 | 0 | 1 | 37 | 6 | 21 | +31 | 2 | Czech Republic | 8 | 5 | 0 | 3 | 13 | 11 | 15 | +2 | 3 | Kosovo | 8 | 3 | 2 | 3 | 13 | 16 | 11 | -3 | 4 | Bulgaria | 8 | 1 | 3 | 4 | 6 | 17 | 6 | -11 | 5 | Montenegro | 8 | 0 | 3 | 5 | 3 | 22 | 3 | -19 |
| Group B
| 22 March 2019 | Luxembourg | 2 | - | 1 | Lithuania | 3,353 | Stade Josy Bathel, Luxembourg City | | Barreiro (45), Rodrigues (55) | | | | Cernych (14) | | | 22 March 2019 | Portugal | 0 | - | 0 | Ukraine | 58,355 | Estadio da Luz, Lisbon | 25 March 2019 | Luxembourg | 1 | - | 2 | Ukraine | 4,653 | Stade Josy Bathel, Luxembourg City | | Turpel (34) | | | | Tsyhankov (40), Rodrigues (90+3 - og) | | | 25 March 2019 | Portugal | 1 | - | 1 | Serbia | 50,342 | Estadio da Luz, Lisbon | | Pereira (42) | | | | Tadic (7 - pen.) | | | 7 June 2019 | Lithuania | 1 | - | 1 | Luxembourg | 3,264 | LFF Stadium, Vilnius | | Novikovas (74)
| | | | Rodrigues (21)
| | | 7 June 2019 | Ukraine | 5 | - | 0 | Serbia | 34,700 | Arena Lviv, Lviv | | Tsyhankov 2 (26, 27), Konoplyanka 2 (46, 75), Yaremchuk (58) | | | | | | | 10 June 2019 | Serbia | 4 | - | 1 | Lithuania | 52 | Red Star Stadium, Belgrade | | Mitrovic A 2 (20, 34), Jovic (35), Ljajic (90+2) | | | | Novikovas (71 -pen.) | Serbia were sanctioned by UEFA to play one home match without spectators for racist behaviour in their home match against Montenegro. | 10 June 2019 | Ukraine | 1 | - | 0 | Luxembourg | 34,700 | Arena Lviv, Lviv | | Yaremchuk (6) | | | | | | | 7 September 2019 | Lithuania | 0 | - | 3 | Ukraine | 5,067 | LFF Stadium, Vilnius | | | | | | Zinchenko (7), Marlos (27), Malinovskyi (62)
| | | 7 September 2019 | Serbia | 2 | - | 4 | Portugal | 39,839 | Red Star Stadium, Belgrade | | Milenkovic (68), Mitrovic A (85) | | | | Carvalho (42), Guedes (58), Ronaldo (80), Silva B (86) | | | 10 September 2019 | Lithuania | 1 | - | 5 | Portugal | 5,067 | LFF Stadium, Vilnius | | Andriuskevicius (28) | | | | Ronaldo 4 (7 - pen., 62, 65, 76), Carvalho (90+2) | | | 10 September 2019 | Luxembourg | 1 | - | 3 | Serbia | 6,373 | Stade Josy Barthel, Luxembourg City | | Turpel (66) | | | | Mitrovic A 2 (36, 78), Radonjic (55) | | | 11 October 2019 | Portugal | 3 | - | 0 | Luxembourg | 47,305 | Estadio Jose Alvalade, Lisbon | | Silva B (16), Ronaldo (65), Guedes (89) | | | | | | | 11 October 2019 | Ukraine | 2 | - | 0 | Lithuania | 32,500 | Metalist Stadium, Kharkiv | | Malinovskyi 2 (29, 58) | | | | | | | 14 October 2019 | Lithuania | 1 | - | 2 | Serbia | 2,787 | LFF Stadium, Vilnius | | Kaslauskas (79) | | | | Mitrovic A 2 (49, 53) | | | 14 October 2019 | Ukraine | 2 | - | 1 | Portugal | 65,883 | NSC Olimpiyskiy Stadium, Kyiv | | Yaremchuk (6), Yarmolenko (27) | | | | Ronaldo (72 - pen.) | | | 14 November 2019 | Portugal | 6 | - | 0 | Lithuania | 18,534 | Estadio Algarve, Faro / Loue | | Ronaldo 3 (7 - pen., 22, 65), Pizzi (52), Paciencia (56), Silva B (63)
| | | | | | | 14 November 2019 | Serbia | 3 | - | 2 | Luxembourg | 1,560 | Red Star Stadium, Belgrade | | Mitrovic A 2 (11, 43), Radonjic (70) | | | | Rodrigues (54), Turpel (75) | Serbia were sanctioned by UEFA to play one home match without spectators for racist behaviour in their home match against Portugal. | 17 November 2019 | Luxembourg | 0 | - | 2 | Portugal | 8,000 | Stade Josy Barthel, Luxembourg City | | | | | | Fernandes (39), Ronaldo, 86) | | | 17 November 2019 | Serbia | 2 | - | 2 | Ukraine | 4,457 | Red Star Stadium, Belgrade | | Tadic (9 - pen.), Mitrovic A (56) | | | | Yaremchuk (32), Byesyedin (90+3) | | | Final Group B table | P | W | D | L | F | A | Pts | Goal Diff | 1 | Ukraine | 8 | 6 | 2 | 0 | 17 | 4 | 20 | +13 | 2 | Portugal | 8 | 5 | 2 | 1 | 22 | 6 | 17 | +16 | 3 | Serbia | 8 | 4 | 2 | 2 | 17 | 17 | 14 | 0 | 4 | Luxembourg | 8 | 1 | 1 | 6 | 7 | 16 | 4 | -9 | 5 | Lithuania | 8 | 0 | 1 | 7 | 5 | 25 | 1 | -20 |
| Group C | 21 March 2019 | Netherlands | 4 | - | 0 | Belarus | 38,604 | De Kuip, Rotterdam | | Depay 2 (1, 55 - pen.), Wijnaldum (21), Van Dijk (86) | | | | Drahun (78) | | | 21 March 2019 | Northern Ireland | 2 | - | 0 | Estonia | 18,176 | Windsor Park, Belfast | | McGinn (56), Davis (75 - pen.) | | | | | | | 24 March 2019 | Netherlands | 2 | - | 3 | Germany | 51,694 | Johan Cruyff Arena, Amsterdam | | De Ligt (48), Deppay (63) | | | | Sane (15), Gnabry (34), Schulz (90) | | | 24 March 2019 | Northern Ireland | 2 | - | 1 | Belarus | 18,188 | Windsor Park, Belfast | | Evans J (30), Magennis (87) | | | | Stasevich (33) | | | 8 June 2019 | Estonia | 1 | - | 2 | Northern Ireland | 8,378 | Lillekula Stadium, Tallinn | | Vassiljev (25)
| | | | Washington (77), Magennis (80) | | | 8 June 2019 | Belarus | 0 | - | 2 | Germany | 12,510 | Borisov Arena, Barysaw | | | | | | Sane (13), Reus (62) | | | 11 June 2019 | Belarus | 0 | - | 1 | Northern Ireland | 5,250 | Borisov Arena, Barysaw | | | | | | McNair (86) | | | 11 June 2019 | Germany | 8 | - | 0 | Estonia | 26,050 | Opel Arena, Mainz | | Reus 2 (10, 37), Gnabry 2 (17, 62), Goretzka (20), Gundogan (26 - pen.), Werner (79), Sane (88)
| | | | | | | 6 September 2019 | Estonia | 1 | - | 2 | Belarus | 7,314 | Lillekula Stadium, Tallinn | | Sorga (54) | | | | Naumov (48), Skavysh (90+2) | | | 6 September 2019 | Germany | 2 | - | 4 | Netherlands | 51,299 | Voksparkstadion, Hamburg | | Gnabry (9), Kroos (73 - pen.) | | | | de Jong F (59), Tah (66 - og), Malen (79), Wijnaldum (90+1) | | | 9 September 2019 | Estonia | 0 | - | 4 | Netherlands | 11,006 | Lillekula Stadium, Tallinn | | | | | | Babel 2 (17, 47), Depay (76), Wijnaldum (87) | | | 9 September 2019 | Northern Ireland | 0 | - | 2 | Germany | 18,326 | Windsor Park, Belfast | | | | | | Halstenberg (48), Gnabry (90+3) | | | 10 October 2019 | Belarus | 0 | - | 0 | Estonia | 11,300 | Dinamo Stadium, Minsk | 10 October 2019 | Netherlands | 3 | - | 1 | Northern Ireland | 41,348 | De Kuip, Rotterdam | | Depay 2 (80, 90+4), de Jong L (90+1) | | | | Magennis (75) | | | 13 October 2019 | Belarus | 1 | - | 2 | Netherlands | 21,639 | Dinamo Stadium, Minsk | | Drahun (54)
| | | | Wijnaldum 2 (32, 41) | | | 13 October 2019 | Estonia | 0 | - | 3 | Germany | 12,062 | Lillekula Stadium, Tallinn | | | | | | Gundogan 2 (51, 57), Werner (71) | | | 16 November 2019 | Germany | 4 | - | 0 | Belarus | 33,164 | Borussia-Park, Moenchengladbach | | Ginter (41), Goretzka (49), Kroos 2 (55, 83) | | | | | | | 16 November 2019 | Northern Ireland | 0 | - | 0 | Netherlands | 18,404 | Windsor Park, Belfast | 19 November 2019 | Germany | 6 | - | 1 | Northern Ireland | 42,855 | Waldstadion, Frankfurt | | Gnabry 3 (19, 47, 60), Goretzka 2 (43, 73), Brandt (90+1)
| | | | Smith (7) | | | 19 November 2019 | Netherlands | 5 | - | 0 | Estonia | 50,386 | Johan Cruyff Arena, Amsterdam | | Wijnaldum 3 (6, 66, 79), Ake (19), Boadu (87) | | | | | | | Final Group C table | P | W | D | L | F | A | Pts | Goal Diff | 1 | Germany | 8 | 7 | 0 | 1 | 30 | 7 | 21 | +23 | 2 | Netherlands | 8 | 6 | 1 | 1 | 24 | 7 | 19 | +17 | 3 | Northern Ireland | 8 | 4 | 1 | 3 | 9 | 13 | 13 | -4 | 4 | Belarus | 8 | 1 | 1 | 6 | 4 | 16 | 4 | -12 | 5 | Estonia | 8 | 0 | 1 | 7 | 2 | 26 | 1 | -24 |
| Group D | 23 March 2019 | Georgia | 0 | - | 2 | Switzerland | 49,207 | Boris Paichadze Dinamo Arena, Tbilisi | | | | | | Zuber (56), Zakaria (80)
| | | 23 March 2019 | Gibraltar | 0 | - | 1 | Republic of Ireland | 2,000 | Victoria Stadium, Gibraltar | | | | | | Hendrick (49) | | | 26 March 2019 | Republic of Ireland | 1 | - | 0 | Georgia | 40,317 | Aviva Stadium, Dublin | | Hourihane (36) | | | | | | | 26 March 2019 | Switzerland | 3 | - | 3 | Denmark | 18,352 | St Jakob-Park, Basel | | Freuler (19), Xhaka (66), Embolo (76)
| | | | Jorgsensen M (84), Gytkjaer (88), Dalsgaard (90+3) | | | 7 June 2019 | Georgia | 3 | - | 0 | Gibraltar | 18,631 | Boris Paichadze Dinamo Arena, Tbilisi | | Gvilia (30), Papunashvili (59), Arveladze (76 - pen.) | | | | | | | 7 June 2019 | Denmark | 1 | - | 1 | Republic of Ireland | 34,610 | Parken Stadium, Copenhagen | | Hojbjerg (76) | | | | Duffy (85) | | | 10 June 2019 | Denmark | 5 | - | 1 | Georgia | 15,387 | Parken Stadium, Copenhagen | | Dolberg 2 (13, 63), Eriksen (30 - pen.), Poulsen (73), Braithwaite (90+3)
| | | | Lobzhanidze (25)
| | | 10 June 2019 | Republic of Ireland | 2 | - | 0 | Gibraltar | 36,281 | Aviva Stadium, Dublin | | Chipolina J (29 - og), Brady (90+3) | | | | | | | 5 September 2019 | Gibraltar | 0 | - | 6 | Denmark | 2,076 | Victoria Stadium, Gibraltar | | | | | | Skov (6), Eriksen 2 (34 - pen., 50 - pen.), Delaney (69), Gytkjaer 2 (73, 78) | | | 5 September 2019 | Republic of Ireland | 1 | - | 1 | Switzerland | 44,111 | Aviva Stadium, Dublin | | McGoldrick (85) | | | | Schar (74) | | | 8 September 2019 | Georgia | 0 | - | 0 | Denmark | 21,456 | Boris Paichadze Dinamo Arena, Tbilisi | 8 September 2019 | Switzerland | 4 | - | 0 | Gibraltar | 8,318 | Stade Tourbillon, Sion | | Zakaria (37), Mehmedi (43), Rodriguez (45+4), Gavranovic (87) | | | | | | | 12 October 2019 | Georgia | 0 | - | 0 | Republic of Ireland | 24,385 | Boris Paichadze Dinamo Arena, Tbilisi | 12 October 2019 | Denmark | 1 | - | 0 | Switzerland | 35,964 | Parken Stadium, Copenhagen | | Poulsen (84) | | | | | | | 15 October 2019 | Gibraltar | 2 | - | 3 | Georgia | 1,455 | Victoria Stadium, Gibraltar | | Casciaro (66), Chipolina R (74) | | | | Kharaishvili (10), Kankava (21), Kvilitaia (84) | | | 15 October 2019 | Swizerland | 2 | - | 0 | Republic of Ireland | 24,766 | Stade de Geneve, Geneva | | Seferovic (16), Fernandes (90+3) | | | | | | | 15 November 2019 | Denmark | 6 | - | 0 | Gibraltar | 24,033 | Parken Stadium, Copenhagen | | Skov 2 (12, 64), Gytkjaer (47), Braithwaite (51), Eriksen 2 (85, 90+3) | | | | | | | 15 November 2019 | Switzerland | 1 | - | 0 | Georgia | 16,400 | Kybunpark, St Gallen | | Itten (77) | | | | | | | 18 November 2019 | Gibraltar | 1 | - | 6 | Switzerland | 2,079 | Victoria Park, Gibraltar | | Styche (74) | | | | Itten 2 (10, 84), Vargas (50), Fassnacht (57), Benito (75), Xhaka (86) | | | 18 November 2019 | Republic of Ireland | 1 | - | 1 | Denmark | 50,000 | Aviva Stadium, Dublin | | Doherty (85) | | | | Braithwaite (73) | | | Final Group D table | P | W | D | L | F | A | Pts | Goal Diff | 1 | Switzerland | 8 | 5 | 2 | 1 | 19 | 6 | 17 | +13 | 2 | Denmark | 8 | 4 | 4 | 0 | 23 | 6 | 16 | +17 | 3 | Republic of Ireland | 8 | 3 | 4 | 1 | 7 | 5 | 13 | +2 | 4 | Georgia | 8 | 2 | 2 | 4 | 7 | 11 | 8 | -4 | 5 | Gibraltar | 8 | 0 | 0 | 8 | 3 | 31 | 0 | -28 |
| Group E | 21 March 2019 | Croatia | 2 | - | 1 | Azerbaijan | 23,146 | Stadion Maksimir, Zagreb | | Barisic (44), Kramaric (79) | | | | Sheydayev (19) | | | 21 March 2019 | Slovakia | 2 | - | 0 | Hungary | 14,235 | Anton Malatinsky Stadium, Trnava | | Duda (42), Rusnak (85) | | | | | | | 24 March 2019 | Wales | 1 | - | 0 | Slovakia | 31,617 | Cardiff City Stadium, Cardiff | | James (5) | | | | | | | 24 March 2019 | Hungary | 2 | - | 1 | Croatia | 19,400 | Groupama Arena, Budapest | | Szalai (34), Patkai (76)
| | | | Rebic (13) | | | 8 June 2019 | Croatia | 2 | - | 1 | Wales | 17,061 | Stadion Gradski vrt, Osijek | | Lawrence J (17 - og), Perisic (48) | | | | Brooks (77) | | | 8 June 2019 | Azerbaijan | 1 | - | 3 | Hungary | 10,450 | Bakcell Arena, Baku | | Emreli (69) | | | | Orban 2 (18, 53), Holman (71) | | | 11 June 2019
| Azerbaijan | 1 | - | 5 | Slovakia | 8,200 | Bakcell Arena, Baku | | Sheydayev (29) | | | | Lobotka (8), Kucka (27), Hamsik 2 (30, 57), Hancko (85) | | | 11 June 2019 | Hungary | 1 | - | 0 | Wales | 18,350 | Groupama Arena, Budapest | | Patkai (80) | | | | | | | 6 September 2019 | Slovakia | 0 | - | 4 | Croatia | 18,098 | Anton Malatinsky Stadium, Trnava | | | | | | Vlasic (45), Perisic (46), Petkovic (72), Lovren (89) | | | 6 September 2019 | Wales | 2 | - | 1 | Azerbaijan | 28,385 | Cardiff City Stadium, Cardiff | | Pashayev (26 - og), Bale (84) | | | | Emreli (59) | | | 9 September 2019 | Azerbaijan | 1 | - | 1 | Croatia | 9,150 | Bakcell Arena, Baku | | Khalilzade (72)
| | | | Modric (11 - pen.)
| | | 9 September 2019 | Hungary | 1 | - | 2 | Slovakia | 21,700 | Groupama Arena, Budapest | | Szoboszlai (50) | | | | Mak (40), Bozenik (56) | | | 10 October 2019 | Croatia | 3 | - | 0 | Hungary
| 32,110 | Stadion Poljud, Split | | Modric (5), Petkovic 2 (24, 42) | | | | | | | 10 October 2019 | Slovakia | 1 | - | 1 | Wales | 18,071 | Anton Malatinsky Stadium, Trnava | | Kucka (53) | | | | Moore (25) | | | 13 October 2019 | Hungary | 1 | - | 0 | Azerbaijan | 11,300 | Groupama Arena, Budapest | | Korhut (10) | | | | | | | 13 October 2019 | Wales | 1 | - | 1 | Croatia | 31,745 | Cardiff City Stadium, Cardiff | | Bale (45+3) | | | | Vlasic (9) | | | 16 November 2019 | Azerbaijan | 0 | - | 2 | Wales | 8,622 | Bakcell Arena, Baku | | | | | | Moore (10), Wilson (34) | | | 16 November 2019 | Croatia | 3 | - | 1 | Slovakia | 8,212 | Stadion Rujevica, Rijeka | | Vlasic (56), Petkovic (60), Perisic (74)
| | | | Bozenik (32) | | | 19 November 2019 | Slovakia | 2 | - | 0 | Azerbaijan | 7,825 | Anton Malatinsky Stadion, Trnava | | Bozenik (19), Hamsik (86) | | | | | | | 19 November 2019 | Wales | 2 | - | 0 | Hungary | 31,762 | Cardiff City Stadium, Cardiff | | Ramsey 2 (15, 47) | | | | | | | Final Group E table | P | W | D | L | F | A | Pts | Goal Diff | 1 | Croatia | 8 | 5 | 2 | 1 | 17 | 7 | 17 | +10 | 2 | Wales | 8 | 4 | 2 | 2 | 10 | 6 | 14 | +4 | 3 | Slovakia | 8 | 4 | 1 | 3 | 13 | 11 | 13 | +2 | 4 | Hungary | 8 | 4 | 0 | 4 | 8 | 11 | 12 | -3 | 5 | Azerbaijan | 8 | 0 | 1 | 7 | 5 | 18 | 1 | -13 |
| Group F | 23 March 2019 | Malta | 2 | - | 1 | Faroe Islands | 7,531 | National Stadium, Ta' Qali | | Nwoko (13), Borg (77 - pen.) | | | | Thomsen (90+8)
| | | 23 March 2019 | Sweden | 2 | - | 1 | Romania | 30,115 | Friends Arena, Solna | | Quaison (33), Claesson (40) | | | | Keseru (58) | | | 23 March 2019 | Spain | 2 | - | 1 | Norway | 39,752 | Mestalla, Valencia | | Rodrigo (16), Ramos (71 - pen.) | | | | King (65 - pen.) | | | 26 March 2019 | Malta | 0 | - | 2 | Spain | 16,542 | National Stadium, Ta' Qali | | | | | | Morata 2 (31, 73)
| | | 26 March 2019 | Norway | 3 | - | 3 | Sweden | 23,459 | Ullevaal, Oslo | | Johnsen (41), King (59), Kamara (90+7) | | | | Claesson (70), Nordtveit (86 - og), Quaison (90+1) | | | 26 March 2019 | Romania | 4 | - | 1 | Faroe Islands | 10,502 | Stadionul Dr Constantin Radulescu, Cluj-Napoca | | Deac (26), Keseru 2 (29, 33), Puscas (63)
| | | | Davidsen (40 - pen.) | | | 7 June 2019 | Faroe Islands | 1 | - | 4 | Spain | 3,226 | Torsvollur, Torshavn | | Olsen K (30) | | | | Ramos (6), Navas (19), Gestsson (34 - og), Gaya (71) | | | 7 June 2019 | Norway | 2 | - | 2 | Romania | 17,664 | Ullevaal, Oslo | | Elyounoussi T (56), Odegaard (70) | | | | Keseru 2 (77, 90+2) | | | 7 June 2019 | Sweden | 3 | - | 0 | Malta | 26,421 | Friends Arena, Solna | | Quaison (2), Claesson (50), Isak (81) | | | | | | | 10 June 2019 | Faroe Islands | 0 | - | 2 | Norway | 3,083 | Torsvollur, Torshavn | | | | | | Johnsen 2 (49, 83) | | | 10 June 2019 | Malta | 0 | - | 4 | Romania | 6,471 | National Stadium, Ta' Qali | | | | | | Puscas 2 (7, 29), Chipciu (34), Man (90+1) | | | 10 June 2019 | Spain | 3 | - | 0 | Sweden | 72,205 | Santiago Bernabeu, Madrid | | Ramos (64 - pen.), Morata (85 - pen.), Oyarzabal (87) | | | | | | | 5 September 2019 | Faroe Islands | 0 | - | 4 | Sweden | 3,108 | Torsvollur, Torshavn | | | | | | Isak 2 (12, 15), Lindelof (23), Quaison (41) | | | 5 September 2019 | Norway | 2 | - | 0 | Malta | 11,269 | Ullevaal, Oslo | | Berge (34), King (45+1 - pen.)
| | | | | | | 5 September 2019 | Romania | 1 | - | 2 | Spain | 50,024 | Arena Nationala, Bucharest | | Andone (59)
| | | | Ramos (29 - pen.), Alcacer (47)
| | | 8 September 2019 | Romania | 1 | - | 0 | Malta | 13,376 | Ilie Oana Stadium, Ploiesti | | Puscas (47) | | | | | | | 8 September 2019 | Spain | 4 | - | 0 | Faroe Islands | 23,644 | El Molinon, Gijon | | Rodrigo 2 (13, 50), Alcacer 2 (90, 90+3) | | | | | | | 8 September 2019 | Sweden | 1 | - | 1 | Norway | 38,372 | Friends Arena, Solna | | Forsberg (60)
| | | | Johansen (45)
| | | 12 October 2019 | Faroe Islands | 0 | - | 3 | Romania | 2,381 | Torsvollur, Torshavn | | | | | | Puscas (74), Miltrita (83), Keseru (90+4) | | | 12 October 2019 | Malta | 0 | - | 4 | Sweden | 10,702 | National Stadium, Ta' Qali | | | | | | Danielson (11), Larsson Se 2 (58 - pen., 71 - pen.), Agius (66 - og) | | | 12 October 2019 | Norway | 1 | - | 1 | Spain | 25,200 | Ullevaal, Oslo | | King (90+4 - pen.)
| | | | Saul (47)
| | | 15 October 2019 | Faroe Islands | 1 | - | 0 | Malta | 2,677 | Torsvollur, Torshavn | | Baldvinsson (71) | | | | | | | 15 October 2019 | Romania | 1 | - | 1 | Norway | 29,854 | Arena Nationala, Bucharest | | Mitrita (62) | | | | Sorloth (90+2) | | | 15 October 2019 | Sweden | 1 | - | 1 | Spain | 49,712 | Friends Arena, Solna | | Berg (50)
| | | | Rodrigo (90+2)
| | | 15 November 2019 | Norway | 4 | - | 0 | Faroe Islands | 10,400 | Ullevaal, Oslo | | Reginiussen (4), Fossum (8), Sorloth 2 (62, 65) | | | | | | | 15 November 2019 | Romania | 0 | - | 2 | Sweden | 49,678 | Arena Nationala, Bucharest | | | | | | Berg (18), Quaison (34) | | | 15 November 2019 | Spain | 7 | - | 0 | Malta | 19,773 | Ramon de Carranza, Cadiz | | Morata (23), Cazorla (41), Pau Torres (62), Sarabia (63), Olmo (69), Gerard (71), Navas (85) | | | | | | | 18 November 2019 | Malta | 1 | - | 2 | Norway | 2,708 | National Stadium, Ta' Qali | | Fenech (40) | | | | King (7), Sorloth (62) | | | 18 November 2019 | Spain | 5 | - | 0 | Romania | 36,198 | Metropolitano Stadium, Madrid | | Fabian (8), Gerard 2 (33, 43), Rus (45+1 - og), Oyarzabal (90+2) | | | | | | | 18 November 2019 | Sweden | 3 | - | 0 | Faroe Islands | 19,737 | Friends Arena, Solna | | Andersson (29), Svanberg (72), Guidetti (80) | | | | | | | Final Group F table | P | W | D | L | F | A | Pts | Goal Diff | 1 | Spain | 10 | 8 | 2 | 0 | 31 | 5 | 26 | +26 | 2 | Sweden | 10 | 6 | 3 | 1 | 23 | 9 | 21 | +14 | 3 | Norway | 10 | 4 | 5 | 1 | 19 | 11 | 17 | +8 | 4 | Romania | 10 | 4 | 2 | 4 | 17 | 15 | 14 | +2 | 5 | Faroe Islands | 10 | 1 | 0 | 9 | 4 | 30 | 3 | -26 | 6 | Malta | 10 | 1 | 0 | 9 | 3 | 27 | 3 | -24 |
| Group G
| 21 March 2019 | Austria | 0 | - | 1 | Poland | 40,400 | Ernst Happel Stadion, Vienna | | | | | | Piatek (69) | | | 21 March 2019 | North Macedonia | 3 | - | 1 | Latvia | 7,043 | Philip II Arena, Skopje | | Alioski (11), Elmas 2 (29, 90+3) | | | | Velkovski (87 - og) | | | 21 March 2019 | Israel | 1 | - | 1 | Slovenia | 12,430 | Sammy Ofer Stadium, Haifa | | Zahavi (55) | | | | Sporar (48) | | | 24 March 2019 | Israel | 4 | - | 2 | Austria | 16,180 | Sammy Ofer Stadium, Haifa | | Zahavi 3 (34, 45, 55), Dabbur (66)
| | | | Arnautovic 2 (8, 75)
| | | 24 March 2019 | Poland | 2 | - | 0 | Latvia | 51,112 | National Stadium, Warsaw | | Lewandowski (76), Glik (84) | | | | | | | 24 March 2019 | Slovenia | 1 | - | 1 | North Macedonia
| 9,872 | Stozice Stadium, Ljubljana | | Zajc (34) | | | | Bardhi (47) | | | 7 June 2019 | Austria | 1 | - | 0 | Slovenia | 19,200 | Worthersee Stadion, Klagenfurt | | Burgstaller (74) | | | | | | | 7 June 2019 | North Macedonia | 0 | - | 1 | Poland | 22,000 | Tose Proeski Arena, Skopje | | | | | | Piatek (47)
| | | 7 June 2019 | Latvia | 0 | - | 3 | Israel | 5,508 | Daugava Stadium, Riga | | | | | | Zahavi 3 (10, 60, 81) | | | 10 June 2019 | North Macedonia | 1 | - | 4 | Austria | 10,501 | Tose Proeski Arena, Skopje | | Hinteregger (18 - og)
| | | | Lazaro (39), Arnautovic 2 (62 - pen., 82), Bejtulai (86 - og) | | | 10 June 2019 | Latvia | 0 | - | 5 | Slovenia | 4,011 | Daugava Stadium, Riga | | | | | | Crnigoj 2 (24, 27), Ilicic 2 (29 - pen., 44), Zajc (47) | | | 10 June 2019 | Poland | 4 | - | 0 | Israel | 57,229 | National Stadium, Warsaw | | Piatek (35), Lewandowski (56 - pen.), Grosicki (59), Kadzior (84) | | | | | | | 5 September 2019 | Israel | 1 | - | 1 | North Macedonia | 15,200 | Turner Stadium, Be'er Sheva | | Zahavi (55) | | | | Ademi (64) | | | 6 September 2019 | Austria | 6 | - | 0 | Latvia | 16,300 | Stadion Wals Siezenheim, Wals Siezenheim | | Arnautovic 2 (7, 53 - pen.), Sabitzer (13), Steinbors (76 - og), Laimer (80), Gregoritsch (85) | | | | | | | 6 September 2019 | Slovenia | 2 | - | 0 | Poland | 15,231 | Stozice Stadium, Ljubljana | | Struna (35), Sporar (65) | | | | | | | 9 September 2019 | Latvia | 0 | - | 2 | North Macedonia | 2,724 | Daugava Stadium, Riga | | | | | | Pandev (14), Bardhi (17) | | | 9 September 2019 | Poland | 0 | - | 0 | Austria | 56,788 | National Stadium, Warsaw | 9 September 2019 | Slovenia | 3 | - | 2 | Israel | 10,669 | Stozice Stadium, Ljubljana | | Verbic 2 (43, 90), Bezjak (66) | | | | Natkho (50), Zahavi (63) | | | 10 October 2019 | Austria | 3 | - | 1 | Israel | 26,200 | Enst Happel Stadion, Vienna | | Lazaro (41), Hinteregger (56), Sabitzer (88) | | | | Zahavi (34) | | | 10 October 2019 | North Macedonia | 2 | - | 1 | Slovenia | 16,500 | Tose Proeski Arena, Skopje | | Elmas 2 (50, 68) | | | | Ilicic (90+5 - pen.) | | | 10 October 2019 | Latvia | 0 | - | 3 | Poland | 7,107 | Daugava Stadium, Riga | | | | | | Lewandowski 3 (9, 13, 76) | | | 13 October 2019 | Poland | 2 | - | 0 | North Macedonia | 52,894 | National Stadium, Warsaw | | Frankowski (74), Milik (80) | | | | | | | 13 October 2019 | Slovenia | 0 | - | 1 | Austria | 15,108 | Stozice Stadium, Ljubljana | | | | | | Posch (21) | | | 15 October 2019 | Israel | 3 | - | 1 | Latvia | 9,150 | Turner Stadium, Be'er Sheva | | Dabbur 2 (16, 42), Zahavi (26) | | | | Kamess (40) | | | 16 November 2019 | Slovenia | 1 | - | 0 | Latvia | 11,224 | Stozice Stadium, Ljubljana | | Tarasovs (53 - og) | | | | | | | 16 November 2019 | Austria | 2 | - | 1 | North Macedonia | 41,100 | Ernst Happel Stadion, Vienna | | Alaba (7), Lainer (48) | | | | Stojanovski (90+3) | | | 16 November 2019 | Israel | 1 | - | 2 | Poland | 16,700 | Teddy Stadium, Jerusalem | | Dabbur (88) | | | | Krychowiak (4), Piatek (54) | | | 19 November 2019 | North Macedonia | 1 | - | 0 | Israel | 5,573 | Tose Proeski Arena, Skopje | | Nikolov (45+2) | | | | | | | 19 November 2019 | Latvia | 1 | - | 0 | Austria | 2,781 | Daugava Stadium, Riga | | Oss (65) | | | | | | | 19 November 2019 | Poland | 3 | - | 2 | Slovenia | 53,946 | National Stadium, Warsaw | | Szymanski (3), Lewandowski (54), Goralski (81) | | | | Matavz (14), Ilicic (61) | | | Final Group G table | P | W | D | L | F | A | Pts | Goal Diff | 1 | Poland | 10 | 8 | 1 | 1 | 18 | 5 | 25 | +13 | 2 | Austria | 10 | 6 | 1 | 3 | 19 | 9 | 19 | +10 | 3 | North Macedonia | 10 | 4 | 2 | 4 | 12 | 13 | 14 | -1 | 4 | Slovenia | 10 | 4 | 2 | 4 | 16 | 11 | 14 | +5 | 5 | Israel | 10 | 3 | 2 | 5 | 16 | 17 | 11 | -1 | 6 | Latvia | 10 | 1 | 0 | 9 | 3 | 28 | 3 | -25 |
| Group H | 22 March 2019 | Albania | 0 | - | 2 | Turkey | 11,730 | Loro Borici Stadium, Shkoder | | | | | | Yilmaz (21), Calhanoglu (55) | | | 22 March 2019 | Andorra | 0 | - | 2 | Iceland | 1,854 | Estadi Nacional, Andorra la Vella | | | | | | Bjarnason (22), Kjartansson (80) | | | 22 March 2019 | Moldova | 1 | - | 4 | France | 10,042 | Zimbru Stadium, Chisinau | | Ambros (89) | | | | Griezmann (24), Varane (27), Giroud (36), Mbappe (87) | | | 25 March 2019 | Turkey | 4 | - | 0 | Moldova | 29,456 | New Eskisehir Stadium, Eskisehir | | Kaldirim (24), Tosun 2 (26, 53), Ayhan (70) | | | | | | | 25 March 2019 | Andorra | 0 | - | 3 | Albania | 1,373 | Estadi Nacional, Andorra la Vella | | | | | | Sadiku (21), Balaj (87), Abrashi (90+6) | | | 25 March 2019 | France | 4 | - | 0 | Iceland | 64,538 | Stade de France, Saint-Denis | | Umtiti (12), Giroud (68), Mbappe (78), Griezmann (84) | | | | | | | 8 June 2019 | Iceland | 1 | - | 0 | Albania | 8,968 | Laugardalsvollur, Reykjavik | | Gudmundsson (22) | | | | | | | 8 June 2019 | Moldova | 1 | - | 0 | Andorra | 6,712 | Zimbru Stadium, Chisinau | | Armas (8) | | | | | | | 8 June 2019 | Turkey | 2 | - | 0 | France | 36,783 | Buyulsehir Stadium, Konya | | Ayhan (30), Under (40) | | | | | | | 11 June 2019 | Albania | 2 | - | 0 | Moldova | 5,004 | Elbasan Arena, Elbasan | | Cikalleshi (66), Ramadani (90+3) | | | | | | | 11 June 2019 | Andorra | 0 | - | 4 | France | 3,187 | Estadi Nacional, Andorra la Vella | | | | | | Mbappe (11), Ben Yedder (30), Thauvin (45+1), Zouma (60) | | | 11 June 2019 | Iceland | 2 | - | 1 | Turkey | 9,680 | Laugardalsvollur, Reykjavik | | Sigurdsson R 2 (21, 32) | | | | Tokoz (40) | | | 7 September 2019 | Iceland | 3 | - | 0 | Moldova | 8,338 | Laugardalsvollur, Reykjavik | | Sigporsson (31), Bjarnason (55), Bodvarsson (77) | | | | | | | 7 September 2019 | France | 4 | - | 1 | Albania | 77,655 | Stade de France, Saint-Denis | | Coman 2 (8, 68), Giroud (27), Ikone (85) | | | | Cikalleshi (90 - pen.)
| | | 7 September 2019 | Turkey | 1 | - | 0 | Andorra | 42,600 | Vodafone Park, Istanbul | | Tufan (89) | | | | | | | 10 September 2019 | Albania | 4 | - | 2 | Iceland | 8,652 | Elbasan Arena, Elbasan | | Dermaku (32), Hysaj (52), Roshi (79), Cikalleshi (83) | | | | Sigurdsson G (47), Sigporsson (58) | | | 10 September 2019 | France | 3 | - | 0 | Andorra | 55,383 | Stade de France, Saint-Denis | | Coman (18), Lenglet (52), Ben Yedder (90+1) | | | | | | | 10 September 2019 | Moldova | 0 | - | 4 | Turkey | 8,281 | Zimbru Stadium, Chisinau | | | | | | Tosun 2 (37, 79), Turuc (57), Yazici (88)
| | | 11 October 2019 | Andorra | 1 | - | 0 | Moldova | 947 | Estadi Nacional, Andorra la Vella | | Vales (63)
| | | | | | | 11 October 2019 | Iceland | 0 | - | 1 | France | 9,719 | Laugardalsvollur, Reykjavik | | | | | | Giroud (66 - pen.) | | | 11 October 2019 | Turkey | 1 | - | 0 | Albania | 41,438 | Sukru Saracoglu Stadium, Istanbul | | Tosun (90) | | | | | | | 14 October 2019 | France | 1 | - | 1 | Turkey | 72,154 | Stade de France, Saint-Denis | | Giroud (76) | | | | Ayhan (82) | | | 14 October 2019 | Iceland | 2 | - | 0 | Andorra | 7,169 | Laugardalsvollur, Reykjavik | | Sigurdsson A (38), Sigporsson (65) | | | | | | | 14 October 2019 | Moldova | 0 | - | 4 | Albania | 4,367 | Zimbru Stadium, Chisinau | | | | | | Cikalleshi (22), Bare (34), Trashi (40), Manaj (90) | | | 14 November 2019 | Turkey | 0 | - | 0 | Iceland | 48,329 | Turk Telekom Stadium, Istanbul | 14 November 2019 | Albania | 2 | - | 2 | Andorra | 4,260 | Elbasan Arena, Elbasan | | Balaj (6), Manaj (55) | | | | Martinez C 2 (18, 48) | | | 14 November 2019 | France | 2 | - | 1 | Moldova | 64,367 | Stade de France, Saint-Denis | | Varane (35), Giroud (79 - pen.) | | | | Rata (9) |
| | 17 November 2019 | Albania | 0 | - | 2 | France | 19,228 | Arena Kombetare, Tirana | | | | | | Tolisso (9), Griezmann (30) | | | 17 November 2019 | Andorra | 0 | - | 2 | Turkey | 2,357 | Estadi Nacional, Andorra la Vella | | | | | | Unal 2 (17, 21 - pen.) | | | 17 November 2019 | Moldova | 1 | - | 2 | Iceland | 6,742 | Zimbru Stadium, Chisinau | | Milinceanu (56) | | | | Bjarnason (17), Sigurdsson G (65) | | | Final Group H table | P | W | D | L | F | A | Pts | Goal Diff | 1 | France | 10 | 8 | 1 | 1 | 25 | 6 | 25 | +19 | 2 | Turkey | 10 | 7 | 2 | 1 | 18 | 3 | 23 | +15 | 3 | Iceland | 10 | 6 | 1 | 3 | 14 | 11 | 19 | +3 | 4 | Albania | 10 | 4 | 1 | 5 | 16 | 14 | 13 | +2 | 5 | Andorra | 10 | 1 | 1 | 8 | 3 | 20 | 4 | -17 | 6 | Moldova | 10 | 1 | 0 | 9 | 4 | 26 | 3 | -22 |
| Group I | 21 March 2019 | Kazakhstan | 3 | - | 0 | Scotland | 27,641 | Astana Arena, Astana | | Pertsukh (6), Vorogovskiy (10), Zaynutdinov (51)
| | | | | | | 21 March 2019 | Cyprus | 5 | - | 0 | San Marino | 3,175 | GSP Stadium, Nicosia | | Sotiriou 2 (19 - pen., 23 - pen.), Kousoulos (26), Efrem (31), Laifis (56) | | | | | | | 21 March 2019 | Belgium | 3 | - | 1 | Russia | 34,245 | King Baudouin Stadium, Brussels | | Tielemans (14), Hazard E 2 (45 - pen., 88) | | | | Cheryshev (16) | | | 24 March 2019 | Kazakhstan | 0 | - | 4 | Russia | 29,582 | Astana Arena, Nur-Sultan | | | | | | Cheryshev 2 (19, 45+2), Dzyuba (52), Beisebekov (62 - og) | | | 24 March 2019 | San Marino | 0 | - | 2 | Scotland | 4,077 | San Marino Stadium, Serravalle | | | | | | McLean (4), Russell (74) | | | 24 March 2019 | Cyprus | 0 | - | 2 | Belgium | 8,728 | GSP Stadium, Nicosia | | | | | | Hazard E (10), Batshuayi (18) | | | 8 June 2019 | Russia | 9 | - | 0 | San Marino | 42,241 | Mordovia Arena, Saransk | | Cevoli (25 - og), Dzyuba 4 (31 - pen., 73, 76, 88), Kudryashov (36), Miranchuk An (41), Smolov 2 (77, 83) | | | | | | | 8 June 2019 | Belgium | 3 | - | 0 | Kazakhstan | 37,155 | King Baudouin Stadium, Brussels | | Mertens (11), Castagne (14), Lukaku (50) | | | | | | | 8 June 2019 | Scotland | 2 | - | 1 | Cyprus | 31,277 | 3rd Hampden Park, Glasgow | | Robertson (61), Burke (89) | | | | Kousoulos (87) | | | 11 June 2019 | Kazakhstan | 4 | - | 0 | San Marino | 18,652 | Astana Arena, Nur-Sultan | | Kuat (45+1), Fedin (62), Suyumbayev (65), Islamkhan (79)
| | | | | | | 11 June 2019 | Belgium | 3 | - | 0 | Scotland | 32,482 | King Baudouin Stadium, Brussels | | Lukaku 2 (45+1, 57), De Bruyne (90+2) | | | | | | | 11 June 2019 | Russia | 1 | - | 0 | Cyprus | 42,228 | Nizhny Novgorod Stadium, Nizhny Novgorod | | Ionov (38) | | | | | | | 6 September 2019 | Cyprus | 1 | - | 1 | Kazakhstan | 5,639 | GSP Stadium, Nicosia | | Sotiriou (39)
| | | | Shchotkin (2)
| | | 6 September 2019 | San Marino | 0 | - | 4 | Belgium | 2,523 | San Marino Stadium, Serravalle | | | | | | Batshuayi 2 (43 - pen, 90+2), Mertens (57), Chadli (63) | | | 6 September 2019 | Scotland | 1 | - | 2 | Russia | 32,432 | 3rd Hampden Park, Glasgow | | McGinn (11)
| | | | Dzyuba (40), O'Donnell (59 - og)
| | | 9 September 2019 | Russia | 1 | - | 0 | Kazakhstan | 31,818 | Kaliningrad Stadium, Kaliningrad | | Fernandes (89) | | | | | | | 9 September 2019 | San Marino | 0 | - | 4 | Cyprus | 662 | San Marino Stadium, Serravalle | | | | | | Kousoulos 2 (2, 73), Papoulis (39), Artymatas (75)
| | | 9 September 2019 | Scotland | 0 | - | 4 | Belgium | 25,524 | 3rd Hampden Park, Glasgow | | | | | | Lukaku (9), Vermaelen (24), Alderweireld (32), De Bruyne (82) | | | 10 October 2019 | Kazakhstan | 1 | - | 2 | Cyprus | 11,769 | Astana Arena, Nur-Sultan | | Yerlanov (34) | | | | Sotiriou (73), Ioannou I (84)
| | | 10 October 2019 | Belgium | 9 | - | 0 | San Marino | 34,504 | Kin Baudouin Stadium, Brussels | | Lukaku 2 (28, 41), Chadli (31), Brolli (35 - og), Alderweireld (43), Tielemans (45+1), Benteke (79), Verschaeren (84 - pen.), Castagne (90) | | | | | | | 10 October 2019 | Russia | 4 | - | 0 | Scotland | 65,703 | Luzhniki Stadium, Moscow | | Dzyuba 2 (57, 70), Ozdoyev (60), Golovin (84) | | | | | | | 13 October 2019 | Kazakhstan | 0 | - | 2 | Belgium | 26,801 | Astana Arena, Nur-Sultan | | | | | | Batshuayi (21), Meunier (53)
| | | 13 October 2019 | Cyprus | 0 | - | 5 | Russia | 9,439 | GSP Stadium, Nicosia | | | | | | Cheryshev 2 (9, 90+2), Ozdoyev (23), Dzyuba (79), Golovin (89) | | | 13 October 2019 | Scotland | 6 | - | 0 | San Marino | 20,699 | 3rd Hampden Park, Glasgow | | McGinn 3 (12, 27, 45+1), Shankland (65), Findlay (67), Armstrong (87) | | | | | | | 16 November 2019 | Cyprus | 1 | - | 2 | Scotland | 7,595 | GSP Stadium, Nicosia | | Efrem (47) | | | | Christie (12), McGinn (53) | | | 16 November 2019 | Russia | 1 | - | 4 | Belgium | 53,317 | Krestovsky Stadium, Saint Petersburg | | Dzhikiya (79) | | | | Hazard T (19), Hazard E 2 (33, 40), Lukaku (72) | | | 16 November 2019 | San Marino | 1 | - | 3 | Kazakhstan | 643 | San Marino Stadium, Serravalle | | Berardi (77) | | | | Zaynutdinov (6), Suyumbayev (22), Shchotkin (26) | | | 19 November 2019 | Belgium | 6 | - | 1 | Cyprus | 40,568 | King Baudouin Stadium, Brussels | | Benteke 2 (16, 68), De Bruyne 2 (36, 41), Carrasco (44), Christoforou (51 - og) | | | | Ioannou N (14) | | | 19 November 2019 | San Marino | 0 | - | 5 | Russia | 1,604 | San Marino Stadium, Serravalle | | | | | | Kuzyayev (3), Petrov (19), Miranchuk Al (49), Ionov (56), Komkichenko (78) | | | 19 November 2019 | Scotland | 3 | - | 1 | Kazakhstan | 19,515 | 3rd Hampden Park, Glasgow | | McGinn 2 (48, 90+1), Naismith (64) | | | | Zaynutdinov (34) | | | Final Group I table | P | W | D | L | F | A | Pts | Goal Diff | 1 | Belgium | 10 | 10 | 0 | 0 | 40 | 3 | 30 | +47 | 2 | Russia | 10 | 8 | 0 | 2 | 33 | 8 | 24 | +25 | 3 | Scotland | 10 | 5 | 0 | 5 | 16 | 19 | 15 | -3 | 4 | Cyprus | 10 | 3 | 1 | 6 | 15 | 20 | 10 | -5 | 5 | Kazakhstan | 10 | 3 | 1 | 6 | 13 | 17 | 10 | -4 | 5 | San Marino | 10 | 0 | 0 | 10 | 1 | 51 | 0 | -50 |
| Group J | 23 March 2019 | Bosnia & Herzegovina | 2 | - | 1 | Armenia | 10,000 | Stadion Grbavica, Sarajevo | | Krunic (33), Milosevic (80) | | | | Mkhitaryan (90+3 - pen.) | | | 23 March 2019 | Italy | 2 | - | 0 | Finland | 24,000 | Stadio Friulli, Udine | | Barella (7), Kean (74) | | | | | | | 23 March 2019 | Liechtenstein | 0 | - | 2 | Greece | 2,711 | Rheinpark Stadion, Vaduz | | | | | | Fortounis (45+1), Donis (80) | | | 26 March 2019 | Armenia | 0 | - | 2 | Finland | 12,900 | Vazgen Sargsyan Republic Stadium, Yerevan | | | | | | Jensen (14), Soiri (78) | | | 26 March 2019 | Bosnia & Herzegovina | 2 | - | 2 | Greece | 10,500 | Bilino Polje Stadium, Zenica | | Visca (10), Pjanic (15) | | | | Fortounis (64 - pen.), Kolovos (85) | | | 26 March 2019 | Italy | 6 | - | 0 | Liechtenstein | 19,834 | Stadio Ennio Tardini, Parma | | Sensi (17), Verratti (32), Quagliarelli 2 (35 - pen., 45+3 - pen.), Kean (69), Pavoletti (76) | | | | | | | 8 June 2019 | Armenia | 3 | - | 0 | Liechtenstein | 9,200 | Vazgen Sargsyan Republic Stadium, Yerevan | | Ghazaryan (2), Karapetian (18), Barseghyan (90+1) | | | | | | | 8 June 2019 | Finland | 2 | - | 0 | Bosnia & Herzegovina | 16,103 | Tampere Stadium, Tampere | | Pukki 2 (56,68) | | | | | | | 8 June 2019 | Greece | 0 | - | 3 | Italy | 19,828 | Olympic Stadium, Athens | | | | | | Barella (23), Insigne (30), Bonucci (33) | | | 11 June 2019 | Greece | 2 | - | 3 | Armenia | 7,011 | Olympic Stadium, Athens | | Zeca (54), Fortounis (87) | | | | Karapetian (8), Ghazaryan (33), Barseghyan (74) | | | 11 June 2019 | Italy | 2 | - | 1 | Bosnia & Herzegovina | 29,100 | Juventus Stadium, Turin | | Insigne (49), Verratti (86) | | | | Dzeko (32) | | | 11 June 2019 | Liechtenstein | 0 | - | 2 | Finland | 2,160 | Rheinpark Stadion, Vaduz | | | | | | Pukki (37), Kallman (57) | | | 5 September 2019 | Armenia | 1 | - | 3 | Italy | 13,680 | Vazgen Sargsyan Republic Stadium, Yerevan | | Karapetian (11) | | | | Belotti (28), Pellegrini Lo (77), Ayrapetyan (80 - og) | | | 5 September 2019 | Bosnia & Herzegovina | 5 | - | 0 | Liechtenstein | 3,825 | Bilino Polje Stadium, Zenica | | Gojak 2 (11, 89), Malin (80 - og), Dzeko (85), Visca (87) | | | | | | | 5 September 2019 | Finland | 1 | - | 0 | Greece | 16,163 | Tampere Stadium, Tampere | | Pukki (52 - pen.) | | | | | | | 8 September 2019 | Armenia | 4 | - | 2 | Bosnia & Herzegovina | 12,457 | Vazgen Sargsyan Republic Stadium, Yerevan | | Mkhitaryan 2 (3, 66), Hambardzumyan (77), Loncar (90+5 - og) | | | | Dzeko (13), Gojak (70) | | | 8 September 2019 | Finland | 1 | - | 2 | Italy | 16,292 | Tampere Stadium, Tampere | | Pukki (72 - pen.) | | | | Immobile (59), Jorginho (79 - pen.) | | | 8 September 2019 | Greece | 1 | - | 1 | Liechtenstein | 3,445 | Olympic Stadium, Athens | | Masouras (33) | | | | Salanovic (85) | | | 12 October 2019 | Bosnia & Herzegovina | 4 | - | 1 | Finland | 8,193 | Bilino Polje Stadium, Zenica | | Hajrovic (29), Pjanic 2 (37 - pen., 58), Hodzic (73) | | | | Pohjanpalo (79) | | | 12 October 2019 | Italy | 2 | - | 0 | Greece | 56,274 | Stadio Olimpico, Rome | | Jorginho (63 - pen.), Bernadeschi (78) | | | | | | | 12 October 2019 | Liechtenstein | 1 | - | 1 | Armenia | 2,285 | Rheinpark Stadion, Vaduz | | Frick Y (72) | | | | Barseghyan (19) | | | 15 October 2019 | Finland | 3 | - | 0 | Armenia | 7,231 | Veritas Stadion, Turku | | Jensen (31), Pukki 2 (61, 88) | | | | | | | 15 October 2019 | Greece | 2 | - | 1 | Bosnia & Herzegovina | 4,512 | Olympic Stadium, Athens | | Pavlidis (30), Kovacevic (88 - og) | | | | Gojak (35) | | | 15 October 2019 | Liechtenstein | 0 | - | 5 | Italy | 5,087 | Rheinpark Stadion, Vaduz | | | | | | Bernardeschi (2), Belotti 2 (70, 90+2), Romagnoli (77), El Shaarawy (82) | | | 15 November 2019 | Armenia | 0 | - | 1 | Greece | 6,450 | Vazgen Sargsyan Republic Stadium, Yerevan | | | | | | Limnios (35) | | | 15 November 2019 | Finland | 3 | - | 0 | Liechtenstein | 9,804 | Telia 5G-areena, Helsinki | | Tuominen (21), Pukki 2 (64 - pen., 75)9 | | | | | | | 15 November 2019 | Bosnia & Herzegovina | 0 | - | 3 | Italy | 8,355 | Bilino Polje Stadium, Zenica | | | | | | Acerbi (21), Insigne (37), Belotti (52) | | | 18 November 2019 | Greece | 2 | - | 1 | Finland | 5,453 | Olympic Stadium, Athens | | Mantalos (47), Galanopoulos (70) | | | | Pukki (27) | | | 18 November 2019 | Italy | 9 | - | 1 | Armenia | 27,752 | Stadio Renzo Barbera, Palermo | | Immobile 2 (8, 33), Zaniolo 2 (9, 64), Barello (29), Romagnoli (72), Jorginho (75 - pen.), Orsolini (78), Chiesa (81) | | | | Babayan (79) | | | 18 November 2019 | Liechtenstein | 0 | - | 3 | Bosnia & Herzegovina | 2,993 | Rheinpark Stadion, Vaduz | | | | | | Civic (57), Hodzic 2 (64, 72) | | | Final Group J table | P | W | D | L | F | A | Pts | Goal Diff | 1 | Italy | 10 | 10 | 0 | 0 | 37 | 4 | 30 | +33 | 2 | Finland | 10 | 6 | 0 | 4 | 16 | 10 | 18 | +6 | 3 | Greece | 10 | 4 | 2 | 4 | 12 | 14 | 14 | -2 | 4 | Bosnia & Herzegovina | 10 | 4 | 1 | 5 | 20 | 17 | 13 | +3 | 5 | Armenia | 10 | 3 | 1 | 6 | 14 | 25 | 10 | -11 | 5 | Liechtenstein | 10 | 0 | 2 | 8 | 2 | 31 | 2 | -29 |
| Play-offs: Path A Semi-finals | 8 October 2020 | Iceland | 2 | - | 1 | Romania | 60 | Laugardalsvollur, Reykjavik | | Sigurdsson G 2 (16, 34) | | | | Maxim (63 - pen.) | | | 8 October 2020 | Bulgaria | 1 | - | 3 | Hungary | 1,929 | Vasil Levski National Stadium, Sofia | | Yomov (89) | | | | Orban (17), Kalmar (47), Niklolic (75)
| | | Final
| 12 November 2020 | Hungary | 2 | - | 1 | Iceland | 0 | Puskas Arena, Budapest | | Nego (88), Szoboszlai (90+2)
| | | | Sigurdssson G (11) | | | Path B Semi-finals | 8 October 2020 | Bosnia & Herzegovina | 1 | - | 1 | Northern Ireland (won 4-3 on pens.) | 1,800 | Stadion Grbavica, Sarajevo (aet) | | Krunic (14) | | | | McGinn (53)
| | | 8 October 2020 | Slovakia (won 4-2 on pens.) | 0 | - | 0 | Republic of Ireland | 0 | Tehelne pole, Bratislava (aet) | Final | 12 November 2020 | Northern Ireland | 1 | - | 2 | Slovakia | 1,060 | Windsor Park, Belfast (aet) | | Skriniar (88 - og) | | | | Kucka (17), Duris (110)
| | | Path C Semi-finals | 8 October 2020 | Scotland (won 5-3 on pens.) | 0 | - | 0 | Israel | 0 | 3rd Hampden Park, Glasgow (aet) | 8 October 2020 | Norway | 1 | - | 2 | Serbia | 200 | Ullevaal Stadion, Oslo (aet) | | Normann (88)
| | | | Milinkovic-Savic 2 (82, 102)
| | | Final | 12 November 2020 | Serbia | 1 | - | 1 | Scotland (won 5-4 on pens.) | 0 | Red Star Stadium, Belgrade (aet) | | Jovic (90) | | | | Christie (52) | | | Path D Semi-finals | 8 October 2020 | Georgia | 1 | - | 0 | Belarus | 0 | Boris Paichadze Dinamo Arena, Tbilisi | | Okriashvili (7 - pen.) | | | | | | | 8 October 2020 | North Macedonia | 2 | - | 1 | Kosovo | 0 | Tose Proeski Arena, Skopje | | Kololli (16 - og), Velkovski (33) | | | | Hadergjonaj (29)
| | | Final | 12 November 2020 | Georgia | 0 | - | 1 | North Macedonia | 0 | Boris Paichadze Dinamo Arena, Tbilisi | | | | | | Pandev (56) | | | FINALS Group A | 11 June 2021 | Turkey | 0 | - | 3 | Italy | 12,916 | Stadio Olimpico, Rome | | | | | | Demiral (53 - og), Immobile (66), Insigne (79) | | | 12 June 2021 | Wales | 1 | - | 1 | Switzerland | 8,782 | Olympic Stadium, Baku | | Moore (74)
| | | | Embolo (49)
| | | 16 June 2021 | Turkey | 0 | - | 2 | Wales | 19,762 | Olympic Stadium, Baku | | | | | | Ramsey (42), Roberts C (90+5)
| | | 16 June 2021 | Italy | 3 | - | 0 | Switzerland | 12,445 | Stadio Olimpico, Rome | | Locatelli 2 (26, 52), Immobile (89) | | | | | | | 20 June 2021 | Switzerland | 3 | - | 1 | Turkey | 17,138 | Olympic Stadium, Baku | | Seferovic (6), Shaqiri 2 (26, 68) | | | | Kahveci (62) | | | 20 June 2021 | Italy | 1 | - | 0 | Wales | 11,541 | Stadio Olimpico, Rome | | Pessina (39) | | | | | | | Final Group A table | P | W | D | L | F | A | Pts | Goal Diff | 1 | Italy | 3 | 3 | 0 | 0 | 7 | 0 | 9 | +7 | 2 | Wales | 3 | 1 | 1 | 1 | 3 | 2 | 4 | +1 | 3 | Switzerland | 3 | 1 | 1 | 1 | 4 | 5 | 4 | -1 | 4 | Turkey | 3 | 0 | 0 | 3 | 1 | 8 | 0 | -7 |
| Group B | 12 June 2021 | Denmark | 0 | - | 1 | Finland | 13,790 | Parken Stadium, Copenhagen | | | | | | Pohjanpalo (60) | | | 12 June 2021 | Belgium | 3 | - | 0 | Russia | 26,264 | Krestovsky Stadium, Saint Petersburg | | Lukaku 2 (10, 88), Meunier (34)
| | | | | | | 16 June 2021 | Finland | 0 | - | 1 | Russia | 24,540 | Krestovsky Stadium, Saint Petersburg | | | | | | Miranchuk (45+2)
| | | 17 June 2021 | Denmark | 1 | - | 2 | Belgium | 23,395 | Parken Stadium, Copenhagen | | Poulsen (2) | | | | Hazard T (55), De Bruyne (70) | | | 21 June 2021 | Russia | 1 | - | 4 | Denmark | 23,644 | Parken Stadium, Copenhagen | | Dzyuba (70 - pen.) | | | | Damsgaard (38), Poulsen (59), Christensen (79), Maehle (82) | | | 21 June 2021 | Finland | 0 | - | 2 | Belgium | 18,545 | Krestovsky Stadium, Saint Petersburg | | | | | | Hradecky (74 - og), Lukaku (81) | | | Final Group C table | P | W | D | L | F | A | Pts | Goal Diff | 1 | Belgium | 3 | 3 | 0 | 0 | 7 | 1 | 9 | +6 | 2 | Denmark | 3 | 1 | 0 | 2 | 5 | 4 | 3 | +1 | 3 | Finland | 3 | 1 | 0 | 2 | 1 | 3 | 3 | -2 | 4 | Russia | 3 | 1 | 0 | 2 | 2 | 7 | 3 | -5 |
| Group C | 13 June 2021 | Austria | 3 | - | 1 | North Macedonia | 9,082 | Arena Nationala, Bucharest | | Lainer (18), Gregoritsh (78), Arnautovic (89)
| | | | Pandev (28) | | | 13 June 2021 | Netherlands | 3 | - | 2 | Ukraine | 15,837 | Johan Cruyff Arena, Amsterdam | | Wijnaldum (52), Weghorst (58), Dumfries (85) | | | | Yarmolenko (75), Yaremchuk (79) | | | 17 June 2021 | Ukraine | 2 | - | 1 | North Macedonia | 10,001 | Arena Nationala, Bucharest | | Yarmolenko (29), Yaremchuk (34) | | | | Alioski (57)
| | | 17 June 2021 | Netherlands | 2 | - | 0 | Austria | 15,243 | Johan Cruyff Arena, Amsterdam | | Depay (11 - pen.), Dumfries (67)
| | | | | | | 21 June 2021 | North Macedonia | 0 | - | 3 | Netherlands | 15,227 | Johan Cruyff Arena, Amsterdam | | | | | | Depay (24), Wijnaldum 2 (50, 58)
| | | 21 June 2021 | Ukraine | 0 | - | 1 | Austria | 10,472 | Arena Nationala, Bucharest | | | | | | Baumgartner (21) | | | Final Group C table | P | W | D | L | F | A | Pts | Goal Diff | 1 | Netherlands | 3 | 3 | 0 | 0 | 8 | 2 | 9 | +6 | 2 | Austria | 3 | 2 | 0 | 1 | 4 | 3 | 6 | +1 | 3 | Ukraine | 3 | 1 | 0 | 2 | 4 | 5 | 3 | -1 | 4 | North Macedonia | 3 | 0 | 0 | 3 | 2 | 8 | 0 | -6 |
| Group D | 13 June 2021 | England | 1 | - | 0 | Croatia | 18,497 | Wembley Stadium, London | | Sterling (57) | | | | | | | 14 June 2021 | Scotland | 0 | - | 2 | Czech Republic | 9,847 | 3rd Hampden Park, Glasgow | | | | | | Schick 2 (42, 52) | | | 18 June 2021 | Czech Republic | 1 | - | 1 | Croatia | 5,607 | 3rd Hampden Park, Glasgow | | Schick (37 - pen.) | | | | Perisic (47)
| | | 18 June 2021 | England | 0 | - | 0 | Scotland | 20,306 | Wembley Stadium, London | 22 June 2021 | Croatia | 3 | - | 1 | Scotland | 9,896 | 3rd Hampden Park, Glasgow | | Vlasic (17), Modric (62), Perisic (77) | | | | McGregor (42) | | | 22 June 2021 | Czech Repulic | 0 | - | 1 | England | 19,104 | Wembley Stadium, London | | | | | | Sterling (12) | | | Final Group D table | P | W | D | L | F | A | Pts | Goal Diff | 1 | England | 3 | 2 | 1 | 0 | 2 | 0 | 7 | +2 | 2 | Croatia | 3 | 1 | 1 | 1 | 4 | 3 | 4 | +1 | 3 | Czech Republic | 3 | 1 | 1 | 1 | 3 | 2 | 4 | +1 | 4 | Scotland | 3 | 0 | 1 | 2 | 1 | 5 | 1 | -4 |
| Group E | 14 June 2021 | Poland | 1 | - | 2 | Slovakia | 12,862 | Krestovksy Stadium, Saint Petersburg | | Linetty (46) | | | | Szczesny (18 - og), Skriniar (69) | | | 14 June 2021 | Spain | 0 | - | 0 | Sweden | 10,559 | Estadio de La Cartuja, Seville | 18 June 2021 | Sweden | 1 | - | 0 | Slovakia | 11,525 | Krestovksy Stadium, Saint Petersburg | | Forsberg (77 - pen.) | | | | | | | 19 June 2021 | Spain | 1 | - | 1 | Poland | 11,742 | Estadio de La Cartuja, Seville | | Morata (25) | | | | Lewandowski (54) | | | 23 June 2021 | Slovakia | 0 | - | 5 | Spain | 11,204 | Estadio de La Cartuja, Seville | | | | | | Dubravka (30 - og), Laporte (45+3), Sarabia (56), Torres F (67), Kucka (71 - og) | | | 23 June 2021 | Sweden | 3 | - | 2 | Poland | 14,252 | Krestovksy Stadium, Saint Petersburg | | Forsberg 2 (2, 59), Claesson (90+4) | | | | Lewansowksi 2 (61, 84) | | | Final Group E table | P | W | D | L | F | A | Pts | Goal Diff | 1 | Sweden | 3 | 2 | 1 | 0 | 4 | 2 | 7 | +2 | 2 | Spain | 3 | 1 | 2 | 0 | 6 | 1 | 5 | +5 | 3 | Slovakia | 3 | 1 | 0 | 2 | 2 | 7 | 3 | -5 | 4 | Poland | 3 | 0 | 1 | 2 | 4 | 6 | 1 | -2 |
| Group F | 15 June 2021 | Hungary | 0 | - | 3 | Portugal | 55,662 | Puskas Arena, Budapest | | | | | | Guerreiro (84), Ronaldo 2 (87 - pen., 90+2) | | | 15 June 2021 | France | 1 | - | 0 | Germany | 13,000 | Allianz Arena, Munich | | Hummels (20 - og)
| | | | | | | 19 June 2021 | Hungary | 1 | - | 1 | France | 55,998 | Puskas Arena, Budapest | | Fiola (45+2) | | | | Griezmann (66) | | | 19 June 2021 | Portugal | 2 | - | 4 | Germany | 12,926 | Allianz Arena, Munich | | Ronaldo (15), Jota (67)
| | | | Dias (35 - og), Guerreiro (39 - og), Havertz (51), Gosens (60)
| | | 23 June 2021 | Portugal | 2 | - | 2 | France | 54,886 | Puskas Arena, Budapest | | Ronaldo 2 (31 - pen., 60 - pen.) | | | | Benzema 2 (45+2 - pen., 47) | | | 23 June 2021 | Germany | 2 | - | 2 | Hungary | 12,413 | Allianz Arena, Munich | | Havertz (66), Goretzka (84) | | | | Szalai Ad (11), Schafer (68) | | | Final Group F table | P | W | D | L | F | A | Pts | Goal Diff | 1 | France | 3 | 1 | 2 | 0 | 4 | 3 | 5 | +1 | 2 | Germany | 3 | 1 | 1 | 1 | 6 | 5 | 4 | +1 | 3 | Portugal | 3 | 1 | 1 | 1 | 7 | 6 | 4 | +1 | 4 | Hungary | 3 | 0 | 2 | 1 | 3 | 6 | 2 | -3 |
| Round of 16
| 26 June 2021 | Wales | 0 | - | 4 | Denmark | 14,645 | Johan Cruyff Arena, Amsterdam | | | | | | Dolberg 2 (27, 48), Maehle (88), Braithwaite (90+4)
| | | 26 June 2021 | Italy | 2 | - | 1 | Austria | 18,910 | Wembley Stadium, London (aet) | | Chiesa (95), Pessina (105) | | | | Kalajdzic (114) | | | 27 June 2021 | Netherlands | 0 | - | 2 | Czech Republic | 52,834 | Puskas Arena, Budapest | | | | | | Holes (68), Schick (80) | | | 27 June 2021 | Belgium | 1 | - | 0 | Portugal | 11,504 | Estadio de la Cartuja, Seville | | Hazard T (42) | | | | | | | 28 June 2021 | Croatia | 3 | - | 5 | Spain | 22,771 | Parken Stadium, Copenhagen (aet) | | Pedri (20 - og), Orsic (85), Pasalic (90+2)
| | | | Sarabia (38), Azpilicueta (57), Torres F (77), Morata (100), Oyarzabal (103) | | | 28 June 2021 | France | 3 | - | 3 | Switzerland (won 5-4 on pens.) | 22,642 | Arena Nationala, Bucharest (aet) | | Benzema 2 (57, 59), Pogba (75) | | | | Seferovic 2 (15, 81), Gavranovic (90)
| | | 29 June 2021 | England | 2 | - | 0 | Germany | 41,973 | Wembley Stadium, London | | Sterling (75), Kane (86)
| | | | | | | 29 June 2021 | Sweden | 1 | - | 2 | Ukraine | 9,221 | 3rd Hampden Park, Glasgow (aet) | | Forsberg (43)
| | | | Zinchenko (27), Dovbyk (120+1)
| | | Quarter-finals | 2 July 2021 | Switzerland | 1 | - | 1 | Spain (won 3-1 on pens.) | 24,764 | Krestovsky Stadium, Saint Petersburg (aet) | | Shaqiri (68) | | | | Zakaria (8 - og) | | | 2 July 2021 | Belgium | 1 | - | 2 | Italy | 12,984 | Allianz Arena, Munich | | Lukaku (45+2 - pen.)
| | | | Barella (31), Insigne (44)
| | | 3 July 2021 | Czech Republic | 1 | - | 2 | Denmark | 16,306 | Olympic Stadium, Baku | | Schick (49)
| | | | Delaney (5), Dolberg (42)
| | | 3 July 2021 | Ukraine | 0 | - | 4 | England | 11,880 | Stadio Olimpico, Rome | | | | | | Kane 2 (4, 50), Maguire (46), Henderson J (63)
| | | Semi-finals
| 6 July 2021 | Italy (won 4-2 on pens.) | 1 | - | 1 | Spain | 57,811 | Wembley Stadium, London (aet) | | Chiesa (60) | | | | Morata (80) | | | 7 July 2021 | England | 2 | - | 1 | Denmark | 64,950 | Wembley Stadium, London (aet) | | Kjaer (39 - og), Kane (104) | | | | Damsgaard (30)
| | | Final | 11 July 2021 | Italy (won 3-2 on pens.) | 1 | - | 1 | England | 67,173 | Wembley Stadium, London (aet) | | Bonucci (67)
| | | | Shaw (2) | | |
|