Manchester City secured a place in the last 16 of the Champions League and ensured they will finish top of Group C despite having to settle for a point against Shakhtar Donetsk.
Ilkay Gundogan gave City the lead after half-time, side-footing home after some fine footwork from Gabriel Jesus gave him the space to finish.
But Shakhtar, who had shipped 12 goals without reply in their past three meetings with City, stayed in the game and substitute Manor Solomon levelled with his first touch when he met Dodo’s pull-back from the right.
City, missing record scorer Sergio Aguero with a thigh injury, were not at full flow going forward despite Kevin de Bruyne’s energy in midfield and the industry of Jesus in the final third.
The Brazilian striker did not manage a touch inside the Shakhtar area in the first half, and his only efforts at goal were a tame header and a shot that was blocked.
His hard work did create chances for others, however, and, as well as teeing up Gundogan’s goal, he set up substitute David Silva for a shot that was cleared off the line.
That was the closest City came to a winner in the final 20 minutes and an unimpressive attacking display petered out completely before the end, with the crowd unable to lift the home side.
City’s poor performance in front of goal did not bode well for the next few weeks while Aguero is absent, but they still achieved their twin objectives for the evening, with Atalanta’s 2-0 win over Dinamo Zagreb meaning they cannot be caught going into the final round of group fixtures.