Normally, anything can be done internally in any company with the right talents, but what makes dealing with specialized agencies more profitable is that they have vast knowledge and experience with meeting the client’s expectations at the lowest costs possible.
It’s always a good idea to consult a professional to deciding to contact an agency.