The cost impact of both
In the beginning, an agency will appear to be more expensive. An agency has operating costs, salaries to pay, software subscriptions, etc. A freelancer is a one-person army with no overheads. But being a freelancer comes with its own drawbacks. His/her expertise could be in one or two areas, on the other hand, an agency brings experts in various roles working in tandem. For example, if you need content creation (videos/statics) for your posts and media buying expertise, you will have to bring in a couple of experts, and this will add to the price. At an agency, you can get it all under one umbrella.
Agencies make more sense
Though freelancers deliver faster on tight deadlines, they will have limitations on their resources, skills, and knowledge. It is unfair to compare a team with a single individual. This one person could end up doing only on the ask from you rather than creating a strategy for the whole social media marketing process. If your aim is a short-term outlook, then having someone who does basic media buying, or filling up content could work. Go for an agency, if you want to get stronger results and high-quality content with a strategy, and stand out in the long run.