Goalkeeper Petr Cech had an Arsenal league debut to forget as West Ham pulled off an unexpected 2-0 win at the Emirates Stadium.
The veteran Czech international moved from Chelsea in a £10million summer deal, which was seen as a move to provide the Gunners with an edge in the Barclays Premier League title challenge.
However, Cech was caught out when West Ham midfielder Cheikhou Kouyate headed in a first-half free-kick and then Mauro Zarate slotted home a second on the break after 57 minutes to leave Gunners boss Arsene Wenger facing more questions about the direction of his side.
SIGN UP NOW
Want to become a GMS writer? Sign up now and submit a 250 word test article: https://gms.to/haveyoursay4
West Ham started with 16-year-old Reece Oxford in midfield, while Olivier Giroud was given the nod in attack ahead of Theo Walcott, and Alexis Sanchez made a surprise appearance on the bench following his return from holiday after Chile's Copa America victory.
Arsenal, who won the FA Community Shield at Wembley last weekend with victory over Chelsea, made a bright start with the lively Alex Oxlade-Chamberlain volleying the ball over the crossbar from 20 yards.
The Irons, knocked out of the Europa League qualifying by Romanian outfit Astra Giurgiu in midweek, offered some attacking threat of their own, with Zarate and Diafra Sakho at the top of the diamond fed by the busy Frenchman Dimitri Payet.
Arsenal remained patient with their build-up.
In the 31st minute, Aaron Ramsey's 20-yard half-volley deflected off the back of defender Aaron Creswell and looped onto the crossbar.
The Irons, though, took the lead on 43 minutes.
Payet whipped a deep free-kick into the right side of the Arsenal penalty area, where Kouyate arrived to power a header past Cech, who came flying out to punch but failed to make contact.
The Gunners laboured through the opening stages of the second half, before Giroud fired into the side netting after being played down the left of the penalty area by Mesut Ozil and Iron keeper Adrian then got down quickly to make a fine one-handed save from the French striker.
West Ham doubled their lead on 57 minutes.
Oxlade-Chamberlain failed to clear from the left side of the penalty area, and Zarate picked up the loose ball, turned and slammed a low shot into the bottom corner past a wrong-footed Cech.
Wenger had seen enough, replacing holding midfielder Francis Coquelin with Walcott.
Arsenal continued to press, but lacked a telling pass in the final third while West Ham remained confident when on possession.
Sanchez was sent on with 23 minutes left, and there was a stoppage following a clash of heads between James Tomkins and Giroud in the West Ham six-yard box.
When play resumed, Walcott had an effort blocked before Oxlade-Chamberlain smashed the ball into the side netting.
Arsenal were unable to force their way back into the match during five minutes of stoppage time, as West Ham closed out a first victory over the Gunners since April 2007.