Article
Freelancer vs agency vs development retainer: which one fits your product?
By Adil Soukaini
, 6 min read

Hire a freelancer for a well-defined task you can describe and check yourself; hire an agency for a fixed project with a deadline that needs several skills at once (design, front end, back end, QA); choose a monthly development retainer when your product needs steady, ongoing work from people who already know the code. Most problems with outsourcing come from using one model for a job that fits another.
What you are actually buying
- Freelancer: one person's time, usually billed by the hour or day, sometimes per deliverable. Independent work is common in the profession: 13.9% of respondents to the 2025 Stack Overflow Developer Survey describe themselves as independent contractors, freelancers or self-employed.
- Agency: a company that delivers a project with a team it assembles and manages. You buy an outcome and pay for coordination as well as code.
- Development retainer: a fixed monthly fee for an agreed amount of capacity and responsibility (for example, a set number of hours, code reviews, deployments, hosting care) from the same developer or small team, month after month. You buy continuity.
How the three models compare
Cost structure
Freelancers bill for time, so you pay only for what you use; in German-speaking Europe the average rate for software and web development was €91 an hour in 2026. Agencies add project management and margin, and usually quote per project. A retainer is a flat monthly amount: predictable for budgeting, but you pay for the capacity even in a quiet month. For full numbers, see what it costs to hire a software developer.
Continuity and knowledge
A freelancer may move to another client when your project pauses, and the knowledge leaves with them. Agencies rotate staff between projects, so the person who built your feature may not be the one who fixes it. A retainer is designed for continuity: the same people keep context from month to month, which is what makes small, frequent releases possible (see weekly releases with a remote developer).
Breadth of skills
One freelancer brings one skill set. An agency can staff designers, several developers and testers in parallel. A retainer with a single developer sits in between: one accountable person, with the option of bringing in specialists for specific pieces.
Management load on you
With a freelancer, you are the project manager: you write the tasks, review the work and decide priorities. An agency takes most of that on, which is valuable if nobody on your side can do it, and costly if you could. A retainer works best when you set priorities and the developer owns the technical decisions and delivery.
Speed to start
Freelancers can often start within days. Agencies need a proposal, estimate and contract. Retainers usually start with a short onboarding period; a practical two-week plan is in onboarding a remote developer.
The risks of each model
Freelancer
- Single point of failure. Illness, holidays or a better-paid contract stop your project. Keep the code in your own repository and insist on written handover notes.
- Misclassification. If you treat a full-time freelancer like an employee, tax authorities may too. In the US, the IRS looks at behavioral control, financial control and the type of relationship. In the UK, medium and large clients have been responsible for deciding employment status under the off-payroll (IR35) rules since April 2021. In France, a client who directs the freelancer like an employee risks requalification into an employment contract, with back pay, contribution adjustments and possible penalties for concealed work.
Agency
- Change requests. A quoted project is priced on a fixed scope; every change becomes a negotiation. See fixed price vs time and materials vs retainer.
- Staffing you did not choose. Ask who will write the code, not just who runs the sales call.
- Handover. When the project ends, the team moves on. Make sure you receive the repository, documentation and deployment access, and that the contract transfers the rights to the code (see code ownership and IP when outsourcing).
Retainer
- Unused capacity. If you do not have a backlog, you pay for idle time. Keep a prioritised list of work ready.
- Vague scope. "Development as needed" invites disagreement. Write down what is included (hours, response times, reviews, hosting, support) and what is not.
- Dependency. The same continuity that helps can make you dependent. The safeguards are the same as with a freelancer: your repository, your hosting accounts, documentation and a notice period.
Which one fits your situation
- A defined, short task (fix a payment bug, build one integration, migrate a WordPress theme): a freelancer, paid per task or for a capped number of hours.
- A defined project with a hard deadline and several disciplines (a marketing site with a design system, a first version of an app for a launch date): an agency, if you can write the scope clearly.
- A live product that needs regular releases, fixes and small features every month: a retainer.
- An MVP whose scope will change as you learn: usually a retainer or time-based freelance work, because fixed-price quotes punish change. Start by scoping the MVP.
- A team with in-house engineers that needs extra hands: a freelancer or retainer who works inside your process.
How to judge any of them after three months
Whatever the model, measure delivery, not hours. DORA, a long-running research programme on software delivery, defines five delivery metrics: change lead time, deployment frequency, failed deployment recovery time, change fail rate and deployment rework rate. You do not need a dashboard. Ask simple questions every month: how often did working changes reach production, how long did a typical change take from request to release, and how many releases needed an urgent fix?
Also check that you can answer yes to these: the code is in a repository your company owns, you can deploy without the provider, and there is enough documentation for someone else to take over.
Frequently asked questions
Is a freelancer cheaper than an agency?
Usually per hour, because an agency adds project management and margin. But if you have to manage the freelancer yourself, count your own time too. For a multi-skill project with a fixed deadline, an agency can be cheaper overall.
What is a development retainer?
A monthly agreement where you pay a fixed fee for a defined amount of development capacity and responsibilities from the same developer or team. It suits products that need ongoing releases, maintenance and small features rather than a one-off build.
Can a long-term freelancer be treated as an employee?
Yes, if the relationship looks like employment. US, UK and French authorities all look at control, integration into your organisation and economic dependence. Keep the freelancer independent in how they work, and get local advice for long engagements.
Should a startup outsource development?
Outsourcing makes sense when you need to ship before you can justify a full-time hire, or need skills you lack. Keep ownership of the code, the hosting accounts and the product decisions in-house whichever model you choose.
Sources
- 2025 Developer Survey – Work, Stack Overflow, 2025-07
- Freelancer-Einkommen: Projektumsatz sinkt um 17 % (Freelancer-Kompass 2026), freelancermap, 2026-04
- Independent contractor (self-employed) or employee?, Internal Revenue Service (IRS), 2026-05
- Understanding off-payroll working (IR35), HM Revenue & Customs, GOV.UK, 2026-02
- Indépendance juridique : risque de requalification du contrat de mission en contrat de travail, Bpifrance Création, 2026-06
- DORA's software delivery performance metrics, DORA, 2026-01

