Two defensive blunders allowed Sergio Aguero to put the visitors 2-0 up, with James Tomkins and Winston Reid falling for Alvaro Negredo's dummy for the opener in the 16th minute, as Aguero ran onto Fernandinho's excellent pass to beat Jussi Jaaskelainen.
Ricardo Vaz Te then switched off and left Aguero unmarked to head home David Silva's free kick early in the second half, although the West Ham man redeemed himself to an extent with an overhead effort which brought the home side back into the game.
But the result was put beyond doubt 10 minutes from the end when Aguero's neat back-heel set up Silva to curl a third beyond the helpless Jaaskelainen, who made several excellent saves throughout the game.
Allardyce told Sky Sports: "We gave two dreadful goals away from our point of view. They have created some very good chances and our goalkeeper has kept us in the game.
"That is what disappoints me, that Manchester City's goals were given, rather than earned, and in the end we paid the price for that.
"We gave a spirited fight-back when we got to 2-1. We showed what we could do for a period of time and made Manchester City's defence look shaky.
"But, unfortunately, it was far too late."