When you have done your research, you may request for quotations from different vendors like a freelancer or agency. You will see that hiring a freelancer is typically lower than signing a contract with an agency. Freelancer are base it on the type of tasks you give them, therefore rates are more reasonable and much more cost effective than hiring a full-time staff.
Although this may not be the case every time, because freelancers work independently, they choose jobs based on the skills they good at. Moreover, freelancers are less likely to accept work that they don't they don't really know anything about.
By using an agency, they usually come with a contract where in actuality the agency works only on what they agreed on. Freelancers, however, will take more jobs and are thus better flexibility-wise.