Pep Guardiola says Manchester City are not always able to pay high transfer fees and meet player's wage demands as the club is operating within a defined budget.
Alexis Sanchez, who made his Manchester United debut on Friday, looked likely to join City before they pulled out due to the cost of the deal, leaving United to swoop in under their rivals' noses.
Reportedly, Sanchez is earning more than £350,000 per week at Old Trafford, and City were unwilling to agree to demands that would have made him the highest paid player in their squad.
Guardiola claims City cannot afford 22 'top' players as the Premier League leaders continue to fight on four fronts.
He said: "When you want to handle four competitions sometimes you have to be lucky with injuries. Otherwise you need 22 top players for every position. People don't believe this, but today 22 top players is too expensive to buy, even [for] City.
"Their salaries we cannot pay. There are budgets for the transfers and we cannot pay. In the future, it may change but we haven't paid more than £80m-£100m for one player. We cannot pay that right now, it is the truth.
"That's why we need the academy to fight. Of course, we spend a lot money but it is the same money as a lot of other teams. I can assure you we are not the only team in the world that spend money."