An own-goal by Ruben Dias and the heroics of goalkeeper Sam Johnstone allowed West Bromwich Albion to earn an impressive point at Manchester City.
Pep Guardiola's side dominated possession and, on 30 minutes, took the lead when Raheem Sterling's smart cut-back was sidefooted in by Ilkay Gundogan.
But West Brom battled back two minutes before half-time when Semi Ajayi's shot cannoned off Dias and into the net.
Gabriel Jesus headed on to the roof of the Baggies' net and substitute Sergio Aguero blazed wide as City pushed for a second-half winner.
In the 85th minute an excellent reaction save by Johnstone kept out Gundogan's downward header from Kevin De Bruyne's cross - and Gundogan then curled a free-kick fractionally wide of the post.
In added time there was still time for De Bruyne to swing in another cross and Sterling's close-range header was again beaten away by Johnstone's feet as Slaven Bilic's men held on for a valuable point.
Man City move up to sixth place on 20 points.
West Brom's first away point against Man City since August 2005 ended a run of nine straight league defeats at the Etihad, but they remain 19th, with seven points.
See: Man City report | West Brom report
Next fixtures
Man City: 19 Dec v Southampton (A)
West Brom: 20 Dec v Aston Villa (H)
Match officials
Referee: Peter Bankes. Assistants: Ian Hussin, Neil Davies. Fourth official: Anthony Taylor. VAR: Martin Atkinson. Assistant VAR: Stephen Child.
WHO'S GOING TO BE YOUR
MAN OF THE MATCH?
Vote at Full-time