Jack Butland - 6
Rarely tested directly but did need to stay alert to claim several crosses into his box.
Tayo Adaramola - 7
Always looking to push forward and help out Wilfried Zaha on the wing. Also looked to hit Jean-Philippe Mateta where possible with a long ball before being pinned back a little in the second half.
Marc Guehi - 7
Another appearance as captain and saw more of the ball than he would have thought he might. Still kept composed and didn't make many mistakes.
Joachim Andersen - 7
Not tested too much but was good on the ball and strong in the tackle. Was needed to clear the ball off the line in the second period after Liam Moore tried to lob Jack Butland.
Nathaniel Clyne - 6
Preoccupied for Stoke's leveller and so didn't spot Josh Tymon free at the back post to tap home the equaliser.
Cheikhou Kouyate - 7
Might not have thought he'd been as busy as he was in the first half but broke up several Stoke attacks and helped Palace bring the ball out of defence well. Ball fell to him kindly for the opener but he did well to divert it into the net at the first time of asking.
Will Hughes - 6
Not his own fault but didn't see the best of him playing in defensive midfield with Olise in front of him. Failed to deal with the cross coming in for Stoke's leveller.
Michael Olise - 7
Lively in midfield and was Palace's most direct player in a tepid opening 45 minutes. Almost got the winner at the back post before taking a quick corner that Riedewald scored from seconds later.
Jordan Ayew - 5
Great run during the first half that led to Olise having a shot on goal but spurned two good chances early in the second half that he should have done better with.
Wilfried Zaha - 6
Didn't get any real chances to make some magic happen during the first half. Looked more lively in the second period and
Jean-Philippe Mateta - 6
Little service in the first half but did well to get to the ball for the opener and see his shot deflected into Kouyate's path.
Substitutes
Conor Gallagher (for Jordan Ayew 63') - 6
Put a sublime ball across the Stoke six-yard box that nobody gambled on.
Jeffrey Schlupp (for Tayo Adaramola 63') - 6
Put in a great run to keep the ball alive and eventually help win a corner that Riedewald scored from.
Jairo Riedewald (for Cheikhou Kouyate 77') - 7
Made the big intervention that won Palace the game. Took the goal really well and didn't snatch at the opportunity.
Luka Milivojevic (for Will Hughes 77') - 6
Christian Benteke (for Jean-Philippe Mateta 90') - N/A