| | First Half starts. |
| 3' | | Fouled by Ádám Nagy - Bristol City |
| 3' | | Michael Olise - Reading - won a free kick in attack. |
| 3' | | Hand ball by Lucas João - Reading |
| 5' | | Andy Rinomhota - Reading - won a free kick in defence. |
| 5' | | Fouled by Callum O'Dowda - Bristol City |
| 7' | | Fouled by Jamie Paterson - Bristol City |
| 7' | | Omar Richards - Reading - won a free kick in defence. |
| 8' | | Missed chance. Josh Laurent - Reading - shot with right foot from outside the box goes high. |
| 11' | | Andy Rinomhota - Reading - won a free kick in defence. |
| 11' | | Fouled by Tommy Rowe - Bristol City |
| 13' | | Fouled by Andy Rinomhota - Reading |
| 13' | | Jamie Paterson - Bristol City - won a free kick in attack. |
| 14' | | New attacking attempt. Yakou Meite - Reading - shot with left foot from outside the box is saved in the right corner. Assist - Andy Rinomhota. |
| 16' | | Fouled by Michael Olise - Reading |
| 16' | | Jay Dasilva - Bristol City - won a free kick in defence. |
| 21' | | Corner - Reading. Conceded by Daniel Bentley. |
| 22' | | Missed chance. Yakou Meite - Reading - shot with the head from the centre of the box is high and wide to the left. Assist - Michael Olise with a cross after corner. |
| 28' | | Callum O'Dowda - Bristol City - won a free kick on the left wing. |
| 28' | | Fouled by Thomas Holmes - Reading |
| 30' | | Antoine Semenyo - Bristol City - won a free kick on the right wing. |
| 30' | | Fouled by Omar Richards - Reading |
| 31' | | Offside - Bristol City. Jamie Paterson with a pass, however Famara Diédhiou is in offside. |
| 33' | | Antoine Semenyo - Bristol City - won a free kick in defence. |
| 33' | | Fouled by Omar Richards - Reading |
| 35' | | Corner - Reading. Conceded by Zak Vyner. |
| 36' | | New attacking attempt. Yakou Meite - Reading - shot with left foot from the centre of the box is saved in the left corner. Assist - Michael Morrison with a head. |
| 38' | | Corner - Bristol City. Conceded by Omar Richards. |
| 42' | | Fouled by Lucas João - Reading |
| 42' | | Tommy Rowe - Bristol City - won a free kick in defence. |
| 43' | | Fouled by Yakou Meite - Reading |
| 43' | | Tommy Rowe - Bristol City - won a free kick on the left wing. |
| 45+1' | | New attacking attempt. Lucas João - Reading - shot with right foot from outside the box is saved in the top right corner. Assist - Michael Olise. |
| 45+1' | | Corner - Reading. Conceded by Daniel Bentley. |
| 45+3' | | Shot blocked. Lucas João - Reading - shot with right foot from the centre of the box is blocked. Assist - Ovie Ejaria with a cross. |
| 45+4' | | First Half ended - Reading 0, Bristol City 0. |
| 45' | | Second Half starts Reading 0, Bristol City 0. |
| 47' | | Fouled by Antoine Semenyo - Bristol City |
| 47' | | Michael Olise - Reading - won a free kick in defence. |
| 47' | | Andy Rinomhota - Reading - won a free kick in attack. |
| 47' | | Fouled by Callum O'Dowda - Bristol City |
| 49' | | Fouled by Andy Rinomhota - Reading |
| 49' | | Jamie Paterson - Bristol City - won a free kick on the left wing. |
| 50' | | New attacking attempt. Yakou Meite - Reading - shot with left foot from the centre of the box is saved in the left corner. Assist - Lucas João. |
| 51' | | Fouled by Jack Hunt - Bristol City |
| 51' | | Ovie Ejaria - Reading - won a free kick in defence. |
| 54' | | Goal! Reading 1, Bristol City 0. Ovie Ejaria - Reading - shot with right foot from outside the box to the left corner. Assist - Lucas João. |
| 56' | | Fouled by Ádám Nagy - Bristol City |
| 56' | | Ovie Ejaria - Reading - won a free kick on the left wing. |
| 56' | | Substitution - Bristol City. Chris Martin for Famara Diédhiou. |
| 56' | | Substitution - Bristol City. Nahki Wells for Tommy Rowe. |
| 58' | | Callum O'Dowda - Bristol City - won a free kick on the left wing. |
| 58' | | Fouled by Michael Olise - Reading |
| 60' | | New attacking attempt. Callum O'Dowda - Bristol City - shot with left foot from outside the box is saved in the right corner. Assist - Chris Martin. |
| 63' | | Fouled by Antoine Semenyo - Bristol City |
| 63' | | Ovie Ejaria - Reading - won a free kick on the left wing. |
| 63' | | New attacking attempt. Liam Moore - Reading - shot with the head from the centre of the box is saved in the top left corner. Assist - Michael Olise with a cross. |
| 64' | | Fouled by Jamie Paterson - Bristol City |
| 64' | | Omar Richards - Reading - won a free kick on the left wing. |
| 65' | | Missed chance. Michael Morrison - Reading - shot with the head from the centre of the box missed. Assist - Michael Olise with a cross . |
| 65' | | Fouled by Taylor Moore - Bristol City |
| 65' | | Josh Laurent - Reading - won a free kick in attack. |
| 65' | | Taylor Moore - Bristol City - receive yellow card for a foul. |
| 67' | | New attacking attempt. Thomas Holmes - Reading - shot with the head from the centre of the box is saved in the top right corner. Assist - Michael Olise. |
| 67' | | Corner - Reading. Conceded by Daniel Bentley. |
| 68' | | New attacking attempt. Yakou Meite - Reading - shot with left foot from the left side of the box is saved by goalkeeper in the centre of the goal. Assist - Andy Rinomhota. |
| 70' | | Fouled by Chris Martin - Bristol City |
| 70' | | Liam Moore - Reading - won a free kick in defence. |
| 70' | | Chris Martin - Bristol City - receive yellow card for a foul. |
| 71' | | Missed chance. Lucas João - Reading - shot with right foot from more than 35 yards is close, but missed. |
| 72' | | Callum O'Dowda - Bristol City - won a free kick in attack. |
| 72' | | Fouled by Josh Laurent - Reading |
| 73' | | Substitution - Bristol City. Chris Brunt for Ádám Nagy. |
| 73' | | Missed chance. Taylor Moore - Bristol City - shot with the head from the centre of the box missed to the left. Assist - Jamie Paterson . |
| 73' | | Goal! Reading 1, Bristol City 1. Nahki Wells - Bristol City - shot with left foot from few metres to the top right corner . |
| 74' | | Fouled by Michael Olise - Reading |
| 74' | | Nahki Wells - Bristol City - won a free kick in defence. |
| 75' | | Fouled by Callum O'Dowda - Bristol City |
| 75' | | Michael Olise - Reading - won a free kick in attack. |
| 75' | | Missed chance. Chris Martin - Bristol City - shot with the head from the centre of the box is close, but missed. Assist - Chris Brunt with a cross. |
| 76' | | Goal! Reading 2, Bristol City 1. Yakou Meite - Reading - shot with left foot from outside the box to the left corner. Assist - Michael Olise. |
| 80' | | Shot blocked. Omar Richards - Reading - shot with left foot from outside the box is blocked. Assist - Andy Rinomhota. |
| 80' | | Missed chance. Yakou Meite - Reading - shot with the head from the centre of the box is close, but missed to the left. |
| 81' | | Substitution - Reading. Alfa Semedo for Michael Olise. |
| 85' | | Shot blocked. Lucas João - Reading - shot with right foot from outside the box is blocked. Assist - Ovie Ejaria. |
| 85' | | Corner - Reading. Conceded by Zak Vyner. |
| 85' | | Shot blocked. Lucas João - Reading - shot with the head from the centre of the box is blocked. Assist - Ovie Ejaria with a cross. |
| 85' | | Shot blocked. Alfa Semedo - Reading - shot with right foot from the centre of the box is blocked. |
| 86' | | Substitution - Bristol City. Opi Edwards for Jack Hunt. |
| 87' | | Substitution - Bristol City. Han-Noah Massengo for Callum O'Dowda. |
| 89' | | Fouled by Josh Laurent - Reading |
| 89' | | Han-Noah Massengo - Bristol City - won a free kick in attack. |
| 90+1' | | Offside - Reading. Alfa Semedo with a pass, however Yakou Meite is in offside. |
| 90+2' | | Goal! Reading 3, Bristol City 1. Lucas João - Reading - shot with left foot from the centre of the box to the right corner. Assist - Yakou Meite. |
| 90+4' | | Shot blocked. Ovie Ejaria - Reading - shot with right foot from the left side of the box is blocked. Assist - Alfa Semedo. |
| 90+4' | | Fouled by Josh Laurent - Reading |
| 90+4' | | Han-Noah Massengo - Bristol City - won a free kick in defence. |
| 90+5' | | Substitution - Reading. Sone Aluko for Ovie Ejaria. |
| 90+5' | | Substitution - Reading. Tomás Esteves for Yakou Meite. |
| 90+6' | | Second Half ended - Reading 3, Bristol City 1. |
| | Thats all. Game finished - Reading 3, Bristol City 1. |