
Benchmarks
An hourly rate is meaningless without the hours. A senior engineer at three times the rate who finishes in a fifth of the time is cheaper in total and leaves less behind to fix, which is why comparing rates rather than outcomes reliably misleads.
For a defined piece of work, ask what it will cost in full. A supplier unwilling to estimate a defined outcome is telling you something.
Routine content updates do not need an architect. A payment integration does. Paying senior rates for everything is as wasteful as paying junior rates for the hard parts.
Work that has to be redone is not cheap at any rate. Ask what testing and documentation is included.
Four things, in roughly descending order of influence.
This is not an argument that expensive is better; plenty of expensive work is poor. It is an argument that rate and cost are different numbers.
A developer unfamiliar with your problem is not slower by a small margin. They are slower by multiples, because much of their time goes into learning rather than building — and the result carries the marks of that learning, in decisions that will need revisiting.
The pattern shows up most sharply on things with unforgiving details: payments, permissions, data migration. On genuinely routine work, a lower rate is often exactly right.
An agency rate funds the engineer plus sales, management, and the periods between contracts. On a large programme with several workstreams, that coordination is real value and worth its cost.
On the work most clients actually have — one feature, one integration, one repair — you are funding a structure you do not use. Going direct removes it, and the same output typically lands well below agency pricing.
The trade is that you carry the coordination yourself. For a single piece of work with one person that is a couple of emails; for five people across three months it is a job, and then the agency structure starts to earn its money again.
If you need someone available rather than someone building, a retainer is usually cheaper and always more reliable than calling around when something breaks.
A small monthly commitment buys priority and, more importantly, buys someone who already knows your system. During an incident that familiarity is worth more than the rate difference several times over.
Not inherently. Location changes cost base, not competence. The risks that matter are time zones, communication, and whether anyone verified the work — and those are manageable if you plan for them.
Fixed price for well-defined work, hourly for exploration and maintenance. A fixed price on vague requirements gets padded, and then argued about.