A win would have seen City join rivals Manchester United at the top of the table but they missed three or four gilt-edged opportunities to take all three points against a spirited Hammers.
Mancini did not pull any punches after the game when asked about Balotelli's miss.
"This is football," he said. "I think that a player like Balotelli, when he has a chance like to today [Saturday], he should score.
"Because when you are a top player, if you have a chance, you should score this - but I don't think he didn't want to score."
Mancini admitted his side lack a cutting edge in attack, despite naming strike trio Balotelli, Edin Dzeko and Carlos Tevez in the starting line-up for the first time.
The Upton Park blank was the first time in seven months that City failed to register a goal in a Barclays Premier League fixture but Mancini thought his side had done enough to win the game.
"No, no. Not a fair result," he said.
"When you have 65% ball possession, 22 shots - maybe less shots on goal - you deserve to win - and we missed four incredible chances to score.
"But I am happy with the performance, because we played well, I'm unhappy with the chances that we're missing.
"When you're playing well and you have a chance, and you're missing an incredible chance, you can be frustrated...but this is football. If you don't score, you can't win - we lost two points."
City now face Ajax on Tuesday night as they look to get their Champions League campaign on track after taking just a point from their opening three group matches.
Mancini's side will be missing Joleon Lescott and James Milner after the England pair picked up knocks over the past couple of days.
Lescott sat out training on Friday with a back problem and did not feature in the squad at West Ham whilst Milner was named in the starting line-up but had to be replaced by Gareth Barry after pulling up in the warm-up with a hamstring complaint.