Efficiency. Not all companies are up to speed on the latest technologies. Outsourcing is often simply an acknowledgement that another business can do something more efficiently.
Expertise. While a company may be best in its class at one function, it’s highly unlikely that it’s tops in every category. Outsourcing can help companies obtain expertise.
Focus. Handing non-core functions off to another business can ensure that a company can focus on its primary products or services.
There are also downsides to outsourcing:
Control. No matter how little wiggle room is left in a contract, outsourcing means some degree of control will be lost to another business.
Quality. Not every company is created equal when it comes to offering quality goods and services. Outsourcing is no guarantee of quality.
Communication. Even within an organization, communication can be problematic. When outsourcing functions, a lack of communication can be disastrous.
Culture. Generally, cultural issues are closely related to communication issues. Any company that outsources across cultures needs to understand that culture or face the possibility of miscommunication and other problems.