Mbappe's profligacy
Neymar might have turned from provider to scorer had his finish been better in the 49th minute, but Mattia Perin was equal to the forward's tame effort.
Mbappe should have provided Neymar with a tap-in two minutes later, only to shoot selfishly from a tight angle, and PSG were made to pay.
Benzema injured in Real win
Real Madrid survived a hostile reception and the loss of striker Karim Benzema to injury as they dug deep to begin their title defence with a ruthless 3-0 win at Celtic. Los Blancos' quest for a record-extending 15th European Cup got off to a bad start when losing star man Benzema to a knee injury with 30 minutes played.
Celtic had already struck the post through Callum McGregor at that point and continued to trouble their opponents on their return to the group stage after four seasons away. But as they so often did last season, Real found a way thanks to quickfire goals from Vinicius Junior and Luka Modric, which Eden Hazard added to with a brilliant third.
Haaland shines for City
Erling Haaland was decisive once again with two goals as Manchester City comfortably saw off Sevilla 4-0 in Spain to open their campaign in style. Haaland has enjoyed a devastating start to life at City and was on fire again as he became only the fourth player to score in his first appearance for three different teams in the Champions League.
The only surprising aspect of the game was City and Haaland only managed a single goal in the first half as Sevilla looked every inch of a team desperately short on confidence. As the hosts became more forward-thinking in the second half, City picked them off as Phil Foden capped a fine display with a goal and Haaland took his season's tally to 12 in seven games, before Ruben Dias put the finishing touches on in stoppage time as he forced home a corner.
AC Milan hold on
AC Milan came from behind to clinch a hard-fought 1-1 draw at Salzburg in their opener, as Alexis Saelemaekers cancelled out a superb solo goal from Noah Okafor.
Okafor's outstanding strike gave Salzburg the lead midway through an evenly matched first half, only for Saelemaekers to smash home an equaliser shortly before the break.
Zagreb stun Chelsea
Earlier, Chelsea made a dismal start to their campaign as Mislav Orsic guided Dinamo Zagreb to a shock 1-0 win over the disjointed.
Orsic handed the hosts a surprise lead with a neat finish after racing onto Bruno Petkovic's flick-on just 13 minutes in, as Chelsea produced yet another toothless attacking display.