There are advantages and disadvantages to promoting from within your company. On the plus side, when you promote existing employees, you send a positive signal to your entire workforce that there is room for advancement within your company and that management cares about its employees' futures.
Promoting from within is also less costly than recruiting a new employee from the outside. You'll save on both recruiting and training costs, and you remove the risk that a new employee won't fit into your company culture. An in-house employee already knows your company's routine.
Although in-house employees have a leg up on company culture, they might not have the skills needed to best fill the open position. For that reason, you should always base your decision to promote from within or hire from the outside on the kind of expertise you need.
For example, if your business is preparing to go international and no one in your company has any international sales experience, it's probably a good idea to hire someone with those skills from the outside. That's true even if one of your best employees has always wanted to live in Paris. You'll also want to hire someone "fresh" if you are looking to shift the direction of your company or to change its culture.
Whether your company decides to promote from within or to hire from the outside, you should constantly be looking for ways to develop leaders within the company. Cultivating successors should be a top priority — it prepares a company for the future and aids in times of crisis.