You are right, that is the third component, but hiring is also very expensive, especially if you have a low quote of acceptance and have to interview many candidates for each position.
Good point. Not sure which is more expensive, and it obviously depends on your problem space and the stakes involved (i.e. crud apps vs financials vs health care).
People would rather hire someone who has made mistakes on someone else's dime (another word for it is "experience").