Jackie, my stock answer for most service-based businesses is definitely to outsource, for the following reasons:Depending on your familiarity with the plethora of tools, tactics and media available, it makes sense to go with the experts. Seldom will a business owner or single employee be across all relevant methodologies.An outsourced agency is in my view, more responsible and more accountable. Even tho' it's not "money out of their own pocket," an independent agent can see what's needed, rather than what's wanted. An employee might not be allowed the flexibility to make recommendations or decisions that impact spending.There's an adage about "sticking to your knitting." If marketing is not your strong suit, stick to what you do best – be it sales, manufacturing, people management, networking, product development etc. – and employ a range of the best minds available to fill in the gaps. Those skills are not easily embodied in one person (see Point 1).
The situations where it makes more sense to employ full timers arise when the business is sufficiently developed to afford, or require, dedicated in-house marketing staff. Even then, it should be looked at as a team effort, again see Point 1.
One exception might be when a new business partner is being considered for a business experiencing strong growth. If that person is a marketing expert across several fields and can make a substantial contribution to ongoing growth, it might make sense to bring them on board as a director or profit-sharer, rather than an employee.
Hope that helps.