The easy answer is: “You don’t have to.” Many businesses (large and small) handle all their advertising in-house. But that takes talented and well-trained people. So the first reason to use an agency is cost. It’s often much less expensive to pay an agency than it is to pay employees.
The second reason is that agencies typically have more combined experience and talent than in-house teams, especially at small to mid-size companies. Agencies can draw on that experience and skill to work faster and more efficiently creating projects and campaigns.
Third, agencies know reps at TV, radio and billboard companies. They know printers and where to find other advertising related resources. They are also adept at creating messaging and visuals that are consistent and well-designed.
Last, agencies typically produce more creative work than in-house teams. Creative work gets noticed and gets results.