Max O'Leary - 8
Made a sensational double save moments before City went up the other end to score the opener. Bailed Vyner out to deny Forss in the first half. Kept City in it with a string of fine saves before finally being beaten.
Zak Vyner - 6
Almost gifted Boro an equaliser when he misplaced his pass for Forss. Difficult not to have sympathy for him with plenty of ground to cover with Semenyo on his side. It's where the Boro equaliser came from with Semenyo high up the pitch. Unfortunate for the goal when the cross came off his boot into the path of Akpom. A tough day at the office.
Timm Klose - 6
Endured a mixed first half with a couple of nervy moments mixed with decent tackles inside the area. O'Leary was fuming with him after handing the hosts a chance at the end of the first half. Struggled with the movement of Akpom and looked a little off the pace.
Cam Pring - 7
Pearson mentioned in the build-up that the art of good defending is not to be noticed. Pring can file himself into that category with a committed showing. Couldn't get forward as much as he would have liked.
Alex Scott - 7
Started the counter-attack that led to City's opening goal. Also found it difficult to get himself on the ball and show his quality with little space to exploit in the middle. Wasn't really offered an out ball to the wing-backs to create space. Managed to carry City up the pitch when they were under the cosh.
Matty James - 6
A typical James-like performance as he sat deep to try and break up the play. Was good in the first half throwing his body in front of a couple of crosses but quieter in the second period. Like his team-mates, City's midfield found it difficult to get to grips with the contest.
Joe Williams - 6
Struggled to impose himself in the first half having found it difficult to get himself on the ball. Did make a couple of surging runs into the box when City countered but couldn't get on the end of one. Second half very similar to the first having been forced to drop deeper.
Andi Weimann (off 81, Low) - 7
He's had to wait a while but Weimann is back among the goals. It was great movement to cut inside and continue his run to the back post where he was left unmarked. Forced to drop deeper in the second half and spent most of his time defending.
Antoine Semenyo (off 70, Dasilva) - 4
Started at right wing-back and looked lost positionally which was unsurprising. Moved over to the other side in the first half where Pearson could give him instructions on the touchline and switched back again for the second half. Was way too high up the pitch for the equaliser. Offered little going forward before eventually coming off.
Nahki Wells - 6
Sparked a handful of decent counter-attacks from deep and linked up with Conway well. Forced to drop deep in the second half with City up against and therefore couldn't threaten in front of goal.
Tommy Conway (off 75, Bell) - 6
A great pick out to assist Weimann at the back post to hand City the lead. Worked ridiculously hard chasing down lost causes and trying to disrupt the backline. Made some good runs to stretch the Boro defence but didn't get himself an opportunity in front of goal.
Substitutes
Jay Dasilva (on 70, Semenyo) - 6
Offered a defensive resilience that City were lacking before his introduction. Couldn't get forward with City penned back.
Sam Bell (on 75, Conway) - N/A
Joe Low (on 81, Weimann) - N/A
A great moment for him to make his senior debut.
Subs not used: Bentley, Martin, King, Sykes
SIGN UP: For our daily Robins newsletter, bringing you the latest from Ashton Gate
READ NEXT