Esta es una pregunta un poco complicada porque depende de la magnitud de tu proyecto y su estado, de tu presupuesto disponible para invertir, si tu proyecto es un sitio web de miles de páginas te recomendaría decantarte por una agencia porque tienen equipo para cumplir con el trabajo y con los tiempos.
Un SEO Freelance te puede ayudar mucho si además es un buen profesional y es más económico porque busca su propio sustento y no tiene trabajadores a su cargo.