В каждом индивидуальном случае ответ будет разным. Чтобы определить, какой вариант рациональнее в каждом конкретном случае, я задаю следующие вопросы:
Какой функционал в рамках маркетинга нужен?
Сколько часов работы по каждой функции необходимо?
Может ли 1 специалист совмещать разные функции из перечисленных?
Сколько стоит час работы фрилансера по каждой функции? Сколько стоит услуга в агентстве? Сколько стоит специалист (в месяц, с учетом налогооблажения)?
Если функционал узкий, а работы много - есть смысл брать штатника. Если нужен и контекстолог, и таргетолог, и дизайнер и SMMщик и аналитик и.... Но работы на каждого по 2 часа в неделю - агентство рациональнее.
Если нужен... как в предыдущем пункте, но есть понимание, что, например, задач по SEO на пол-рабочего дня точно - есть смысл взять фрилансера или специалиста "на пол ставки". А остальной функционал - в агентство.
Почему агентство лучше, чем 15 фрилансеров? Потому что вы спрашиваете с 1-го контрагента за всю работу в целом. С 15-ти фрилансерами вы войдете с ума (у каждого свои тараканы + в смежных вопросах будут валить ответственность друг на друга).
Почему не стоит брать маркетолога, который и жнец и жрец и на дуде игрец?
Даже если маркетолог супер крут и знает все рекламные каналы - что-то он будет знать (и делать) хорошо, что-то не очень. Более того, если вы нагрузили маркетолога на 160 рабочих часов в неделю - вы этим вредительствуете не ему, а себе. Он все-равно отработает свои 40, если совестливый - 60. Но по факту выполнит только те задачи, которые ему хорошо даются. Куча задач зависнет мертвым грузом. А вы недополучите результат.