A freelancer suits well-defined tasks
If you already have a strategy and need design, copy, specific settings or maintenance, a good freelancer can be efficient and flexible.
An agency helps when you need a system
When SEO, ads, web, tracking and content are all running at once, they need coordinating. An agency can connect the channels so they do not work in isolation.
Ask for reporting and accountability
Whichever you choose, ask for KPIs, correct tracking, regular meetings and plain explanations. Good marketing should make sense to the business owner.