Germany
Manuel Neuer - 6/10
There was absolutely no chance he could have done anything to deny the goal. Neuer was largely untroubled otherwise, but was beaten in the second half by an exquisite finish from Mbappe, who was then ruled offside.
Matthias Ginter - 6/10
Slightly better compared to his partners in the three-man defense for Germany. Ginter read the game well and made a few good interceptions. Nowhere to be seen during the build-up to the goal, though maybe he should've stayed put inside the box.
Mats Hummels - 5/10
Not an awful lot he could've done about the goal, but it was still the right idea to try and intercept it. Hummels' struggled to maintain balance and that probably did him in. Struggled a bit to deal with Mbappe's pace at times, but produced an excellent tackle on the Frenchman.
Antonio Rudiger - 5/10
Took a few risks while playing the high line in defense. On another day, Rudiger could've been left embarrassed. Bullied in the air by Pogba on more than one occasion.
Joshua Kimmich - 6/10
Dragged out wide and left helpless in the build-up to the opening goal. Tried to make an impact further up the pitch all night long, but was unable to find the end product. Kimmich had his hands full with Hernandez.
Toni Kroos - 6/10
Calm presence in midfield, heavily involved in the build-up to play. Unfortunately, Kroos went under the radar due to an impressive display from his counterparts on the other side of the halfway line. On a personal level, maybe he would have wanted to do better with one of the free-kicks.
Ilkay Gundogan - 5/10
Completely overshadowed by Pogba in midfield. Gundogan never really made an impact further up the pitch, apart from a shot he fired wide from inside the box in the first half.
Robin Gosens - 7/10
Probably Germany's best player on the night. Gosens constantly looked to bomb forward and was fairly successful in the same. Although he whipped in a number of good crosses, none of his teammates could capitalize. Minimalized the attacking impetus of Pavard to an extent as well.
Kai Havertz - 5/10
Played a few good passes but was not effective as a whole. Considering his recent form, Germany would have expected Havertz to be instrumental. Not to be on the night as he struggled to find the spark inside the final third against a resolute opposition in France.
Thomas Muller - 5/10
Struggled to make the kind of impact Germany desired from him. Muller could not find the spark inside the attacking third and was almost a passenger at times. Must certainly be disappointed and dejected by the display.
Serge Gnabry - 4/10
Showed promise early on with his high pressing and persistence, but slowly became a peripheral figure as the first half progressed. Gnabry had an excellent chance to restore parity after the interval, however, his effort rifled over the bar to add to the misery.
Substitutes
Timo Werner - N/A
Came on for Gnabry in the 74th minute.
Leroy Sane - N/A
Replaced Havertz in the 74th minute.
Emre Can - N/A
Came in to replace Ginter in the 87th minute.
Kevin Volland - N/A
Introduced in the 87th minute for Gosens.