Odsonne Edouard scored twice on his debut as Crystal Palace claimed their first win of the season to end 10-man Tottenham's 100% Premier League start.
Wilfried Zaha set the Eagles on their way, rolling in from the spot after Ben Davies was penalised for handball, before substitute Edouard added a second and third late on.
French forward Edouard, a deadline-day signing from Celtic, introduced himself to the Selhurst Park faithful in fine fashion, turning in Zaha's cross a minute after coming on and then steering in Conor Gallagher's pass.
The result moves Palace up to 11th in the table and it was no more than they deserved after a dominant display against the league leaders.
The hosts were well on top even before Japhet Tanganga's dismissal, with the Spurs defender collecting two yellow cards in the space of five minutes before the hour mark.
More to follow.
Player of the match
ÉdouardOdsonne Édouard
Crystal Palace
Squad number22Player nameÉdouard
Squad number23Player nameGallagher
Squad number11Player nameZaha
Squad number3Player nameMitchell
Squad number6Player nameGuéhi
Squad number7Player nameOlise
Squad number18Player nameMcArthur
Squad number16Player nameAndersen
Squad number4Player nameMilivojevic
Squad number8Player nameKouyaté
Squad number2Player nameWard
Squad number13Player nameGuaita
Squad number9Player nameJ Ayew
Squad number20Player nameBenteke
Line-ups
Crystal Palace
Formation 4-3-3
13Guaita
2Ward16Andersen6Guéhi3Mitchell
23Gallagher8Kouyaté18McArthur
9J Ayew20Benteke11Zaha
13Guaita2Ward16Andersen6Guéhi3Mitchell23GallagherBooked at 89mins8KouyatéSubstituted forMilivojevicat 67'minutes18McArthur9J AyewSubstituted forOliseat 86'minutes20BentekeSubstituted forÉdouardat 84'minutes11ZahaBooked at 53minsSubstitutes
1Butland4Milivojevic5Tomkins7Olise12Hughes17Clyne22Édouard34Kelly44RiedewaldTottenham
Formation 4-3-2-1
1Lloris
12Leite de Souza Junior25Tanganga15Dier3Reguilón
5Højbjerg29Skipp8Winks
27Lucas Moura20Alli
10Kane
1Lloris12Leite de Souza Junior25TangangaBooked at 58mins15DierSubstituted forRodonat 12'minutes3Reguilón5Højbjerg29Skipp8WinksSubstituted forDaviesat 60'minutes27Lucas MouraBooked at 81mins20Alli10KaneSubstitutes
2Doherty11Gil14Rodon22Gollini28Ndombele33Davies44Scarlett49Omole54MarkandayLive Text
Match ends, Crystal Palace 3, Tottenham Hotspur 0.
Second Half ends, Crystal Palace 3, Tottenham Hotspur 0.
Goal! Crystal Palace 3, Tottenham Hotspur 0. Odsonne Édouard (Crystal Palace) left footed shot from the centre of the box to the high centre of the goal. Assisted by Conor Gallagher.
Conor Gallagher (Crystal Palace) is shown the yellow card for a bad foul.
Foul by Conor Gallagher (Crystal Palace).
Ben Davies (Tottenham Hotspur) wins a free kick in the defensive half.
Foul by Michael Olise (Crystal Palace).
Dele Alli (Tottenham Hotspur) wins a free kick in the defensive half.
Substitution, Crystal Palace. Michael Olise replaces Jordan Ayew.
Attempt missed. Lucas Moura (Tottenham Hotspur) header from the centre of the box misses to the left. Assisted by Sergio Reguilón with a cross.
Goal! Crystal Palace 2, Tottenham Hotspur 0. Odsonne Édouard (Crystal Palace) left footed shot from the centre of the box to the bottom right corner. Assisted by Wilfried Zaha.
Substitution, Crystal Palace. Odsonne Édouard replaces Christian Benteke.
Foul by Conor Gallagher (Crystal Palace).
Oliver Skipp (Tottenham Hotspur) wins a free kick in the defensive half.
Lucas Moura (Tottenham Hotspur) is shown the yellow card.
Hand ball by Lucas Moura (Tottenham Hotspur).
Attempt missed. Conor Gallagher (Crystal Palace) right footed shot from outside the box is high and wide to the right. Assisted by Jordan Ayew.
Corner, Tottenham Hotspur. Conceded by Joachim Andersen.
Foul by Conor Gallagher (Crystal Palace).
Ben Davies (Tottenham Hotspur) wins a free kick in the defensive half.
Our coverage of your Premier League club is bigger and better than ever before - here's everything you need to know to make sure you never miss a moment