The runaway Premier League leaders - unbeaten all season in the top flight - had gone ahead 14 minutes in when the unmarked Ilkay Gundogan scored from a corner and Hugo Lloris saw plenty of the ball with his hands and feet as the hosts pushed us right back throughout the first half.
It was a different story for a while after the restart as we took away City's most dangerous weapen - possession - by playing some nice football and imposing ourselves on the game.
Harry Kane forced a flying save from home goalkeeper Ederson but after his mix-up following Kieran Trippier's throw-in allowed City to break and score through Kevin De Bruyne with 20 minutes left, it was a downhill descent in the Manchester rain.
Gabriel Jesus missed a penalty, Raheem Sterling slid home at the back post following an incisive four-man move and the same player strolled through as both Eric Dier and Lloris missed the ball to walk into an empty net on the 90-minute mark.
Christian Eriksen snatched a late consolation with a good left-footed strike, but it was no match for City's power.
Danny Rose retained the left-back position from the midweek win over Brighton, making it consecutive starts for the first time since returning from a long injury lay-off back in October. Mauricio Pochettino made three changes to the team that started against the Seagulls with Trippier, Mousa Dembele and Dele Alli coming in for Serge Aurier, Moussa Sissoko and Erik Lamela. Our former right-back Kyle Walker started for City.
GOAL: MANCHESTER CITY 1-0 SPURS - ILKAY GUNDOGAN - 14mins
Jan Vertonghen was forced to intervene early on to deny Leroy Sane and Sergio Aguero's stooping header went wide before the hosts took the lead in simple fashion from a set piece. Dier's clearance spun behind, Fabian Delph swung in the corner and Gundogan ghosted in unmarked to head in from a central position.
SAVES: LLORIS KEPT BUSY - 24-33mins
City quickly began to show why they've been able to string together a record-breaking winning run as they played through our press and put our defenders and goalkeeper under constant pressure in possession. Lloris was seeing plenty of the ball and saved well from Aguero with Sterling putting the rebound over the top, then beat out Gundogan's drive before diving at the feet of Sane as he produced another burst of pace in the area.
CHANCE: KANE JUST OFF-TARGET - 35mins
Our best chance of the first period came in a flash on 35 minutes. Dele picked out Eriksen on the left and he played it short to Kane, who unleashed a low curling shot that zipped just wide of the far post. Rose was involved at both ends in quick succesion as half-time approached, dinking in a ball that Dele couldn't quite reach before getting back to block Aguero's angled shot from inside our area.
Above: Christian Eriksen gets away from Fernandinho.
SAVES: FINE STOPS FROM BOTH KEEPERS - 55-67mins
We had a good spell of possession in the opening stages of the second half. Kane let fly from 25 yards, forcing Ederson into a diving fingertip save, while Lloris clawed away Sane's effort after a weaving run into the box, with Sterling lashing the rebound over the top as the flag went up for off-side against him.
GOAL: MANCHESTER CITY 2-0 SPURS - KEVIN DE BRUYNE - 70mins
Again, you sensed the players felt they could and should have done better as City doubled their lead. Kane let Trippier's attacking throw-in run, the hosts picked up possession and countered, making the most of the overload on the left side as De Bruyne lashed past Lloris from the angle. The Frenchman got his arm in the way, but couldn't keep it out.
PENALTY: GABRIEL JESUS HITS THE POST - 75mins
Pep Guardiola's side could have been out of sight on 75 minutes when Vertonghen slid in to deny De Bruyne and his fellow countryman went to ground, but substitute Gabriel Jesus hammered the resulting penalty against the post, with Sterling again slicing the rebound over. Erik Lamela did well at the other end to get in behind, but Harry Winks couldn't quite fashion a shooting chance as he tried desperately to keep the ball in the box.
GOAL: MANCHESTER CITY 3-0 SPURS - RAHEEM STERLING - 80mins
City won possession and De Bruyne started a quick move for their third goal. It went through Gundogan to Sane, who slid across from the left for Sterling to bundle in at the back post.
GOAL: MANCHESTER CITY 4-0 SPURS - RAHEEM STERLING - 90mins
Lloris saved from Bernardo Silva and Sterling before the latter strolled through to add a bonus fourth for City. Dier missed the ball and it ran through Lloris' legs at the edge of the area, allowing the forward the simplest of tap-ins.
GOAL: MANCHESTER CITY 4-1 SPURS - CHRISTIAN ERIKSEN - 90+3mins
Eriksen's persistence led to him pulling a goal back in the final minute of added time. He won the ball 25 yards from goal, advanced towards the area and then pulled a low shot back across Ederson into the bottom corner.
MAURICIO POCHETTINO SAID
"The result is bad, of course, and we feel disappointed, but it's important to explain the game. We cannot concede in the way that we conceded (the first goal), a lack of concentration and focus and this situation changed the game. Throughout the game we respected our ideas, but they were better. We tried, but in the end there is not too much to assess, not too much to say, we just have to try to lift the players and be ready to compete again next week."
HUGO LLORIS SAID
"Tactically and technically they are a great team - probably the best team in Europe - but we stuck with our principles, played our football with our philosophy and probably had a lack of aggression offensively because we tried to create from the back. We took a lot of risks and it's frustrating but at the same time, it will help us to keep working and improve."
Manchester City (4-3-3): Ederson, Walker, Otamendi, Mangala, Delph, Fernandinho (c), Gundogan (Foden 83), De Bruyne, Sane (Bernardo 85), Sterling, Aguero (G Jesus 57). Substitutes (not used): Bravo, Danilo, Yaya Toure, Zinchenko.
Spurs (4-2-3-1): Lloris (c), Trippier, Dier, Vertonghen, Rose (Davies 89), Winks, Dembele, Eriksen, Dele (Sissoko 84), Son (Lamela 77), Kane. Substitutes (not used): Vorm, Aurier, Foyth, Llorente.
Goals: Spurs - Eriksen 90+3; Manchester City - Gundogan 14, De Bruyne 70, Sterling 80, 90.
Yellow cards: Manchester City - Otamendi 38, Delph 51; Spurs - Kane 52, Dembele 62, Dele 68, Sissoko 90+1.
Referee: Craig Pawson.
After a hectic schedule over the last few weeks, we have a rare midweek without a game. Our next outing in the Premier League comes in exactly a week's time as we head to Turf Moor to face a Burnley side that battled out a goalless draw at Brighton on Saturday afternoon.