Guides6 min read
Unlimited development or an agency?
An agency suits a defined project with an end. A subscription suits a live product with a steady flow of changes. Hire when software is what you sell.
Mercury Labs
An agency suits a defined project with an end. A subscription suits a live product with a steady flow of changes. Hire when software is what you sell.
Choose by the shape of the work. If you can describe the whole job and it has an end, ask an agency for a fixed quote. If you have a product that will keep needing changes for as long as it is in use, a subscription fits better. If software is the heart of what you sell and you have someone to lead engineers, hire.
Unlimited development is a subscription: one monthly price for a senior engineering team that works through your requests for one product. An agency sells a project or a number of days. A hire is a person on your payroll.
An agency is good at a project you can describe in advance: a new website, a first version of an app, a migration. You agree the scope, they quote, they deliver. The difficulty starts when you learn something halfway through and want to change direction, which on real software is most of the time. Every change is a conversation about money.
Hiring is good when software is central to the business and will be for years. Your own engineers build up knowledge nobody else has. But a good engineer takes months to find, one engineer alone has nobody to review their work, and someone has to decide what they build and whether it is any good. If nobody in the company can do that, the hire often disappoints both sides.
A freelancer is good for small jobs with clear edges. They are quick to start and cost less than an agency. The risk is the obvious one: when they are ill, busy or gone, the knowledge goes with them.
A subscription is good for the long middle of a product's life: the steady run of features, fixes, integrations and upgrades after the first version exists. You keep one queue, put it in the order you want, and the team works through it. Nothing is requoted when your priorities change, because you are not paying by the piece.
| Option | When to use | Trade-offs |
|---|---|---|
| An agency | A defined project with an end, where you can write down what done looks like | A change request and a new quote when priorities move. The team moves on when the project ends |
| Hiring a team | Software is the main thing you sell, and you have someone who can lead engineers | Months to recruit. Salaries, management and tools whether or not the month is busy |
| A freelancer | Small, separate jobs, or a specialist skill you need briefly | One person, so no review and no cover. You do the co-ordination |
| Unlimited development | One live product with a steady flow of changes, and no wish to manage engineers | One product per subscription. Requests and updates in writing, with no standing meetings |
Compare a year, not a month, and count everything. Our own subscription is £15,000 a month, which is £180,000 a year for one product, whatever the number of requests.
A subscription is poor value in a month when you have little to ask for. If the product is stable and you want two small changes a quarter, pay for those by the piece.
There is no cap on requests, so the limit has to sit somewhere else. With ours it sits in two rules, and you should ask any supplier offering unlimited work where theirs sit.
Those rules do not suit everyone. If you want people in the room for workshops, a weekly status meeting, or a team you direct hour by hour, a subscription worked in writing will frustrate you, and an agency or your own hires will fit better.
06 stages
Who owns the code, and where is it kept?
Watchpoint
It should be in a repository you control from the first day, not handed over at the end.
What happens when my priorities change?
Watchpoint
If the answer involves a new quote, changes will be slow and you will make fewer of them.
Who does the work, and who reviews it?
Watchpoint
Code written with AI tools and reviewed by nobody is a cost you pay later.
How will I see progress?
Watchpoint
A written update for each change is a record. A status call is not.
What do you need from us?
Watchpoint
Every model needs someone on your side who can answer questions and approve changes.
What happens if we stop?
Watchpoint
You should be left with working code, access to everything and notes another team could pick up.
If you are building something for the first time and can describe it, get a fixed quote and hold the supplier to it. Once it is live and the requests start to arrive every week, stop buying changes one at a time. Whether that means hiring or a subscription depends on one question: is there someone in your company who wants to run an engineering team? If there is, hire. If there is not, Unlimited development is built for that case. Our note on why we stopped billing by the hour explains the pricing.