WordPress Development
How Agencies Price White Label WordPress Work (and Protect Margin)
How agencies should price WordPress projects: calculate real delivery cost, pick the right pricing model, and use scope and change-order terms that keep the margin you quoted.
You quoted a WordPress build at $12,000, it took 40 per cent longer than planned, and the profit disappeared somewhere between the third round of design revisions and the migration nobody scoped. Most agencies do not have a sales problem. They have an agency WordPress project pricing problem: prices set by gut feel, no delivery cost baseline, and no mechanism to stop scope creep eating the margin.
This post covers how to work out what delivery actually costs you, the four pricing models agencies use and when each one works, the margin maths behind white label delivery, and the contract clauses that keep a profitable quote profitable.
Start with your delivery cost, not the market rate
Pricing conversations usually begin with “what do others charge?” That is the wrong end of the problem. You cannot know whether $12,000 is a good price until you know what it costs you to deliver the thing.
Build a simple delivery cost per hour. Take the fully loaded cost of everyone who touches client work in a month — salaries plus employer taxes, contractor invoices, software, the share of rent and admin you are willing to attribute — and divide it by the number of hours that team realistically bills. Not the hours they are paid for. The hours they bill. Most agencies discover their real utilisation sits between 55 and 70 per cent once you subtract sales calls, internal meetings, admin, holidays and rework.
That single number changes how quotes feel. If your loaded delivery cost is $65 an hour and you quote a 120-hour build at $9,000, you have a gross margin of about 13 per cent before a single revision request. One awkward client wipes it out.
Four agency WordPress project pricing models, and where each one leaks
| Model | Works best when | Where margin leaks |
|---|---|---|
| Hourly | Discovery work, retainers, genuinely unknowable scope | Clients police your timesheet instead of your outcomes; efficiency is punished |
| Fixed price | Repeatable builds you have delivered before | Estimation error and unbounded revisions land entirely on you |
| Value-based | Revenue-linked work: ecommerce, lead-gen, conversion rebuilds | Hard to defend without evidence; long sales cycle |
| Productised | Standardised scopes — landing pages, migrations, speed work | Only profitable if you refuse to customise the package |
Most healthy agencies run two or three of these at once. Fixed price for builds, hourly or monthly retainer for maintenance, productised pricing for the narrow services they deliver dozens of times a year. Choosing one model for everything is what causes trouble, because a discovery-heavy build and a Figma-to-WordPress conversion have completely different risk profiles.
A note on hourly billing
Hourly is not evil, but it caps you. Every improvement you make to your build process reduces your own revenue. If you have templates, a component library and a tight QA routine, fixed or productised pricing lets you keep the upside of that efficiency. Save hourly for work where the scope genuinely cannot be defined in advance.
How to price a fixed-scope WordPress build
- Break the build into deliverables, not phases. “Design” is not a deliverable. “Homepage, five inner page templates, blog index, single post, WooCommerce product and cart templates” is.
- Estimate each deliverable in hours, by role. Design, front-end, back-end, content migration, QA, project management. PM is real work — budget 10–15 per cent of the build.
- Add a contingency line you can see. 15 per cent for work you have done before, 25–30 per cent for anything involving a legacy site, an unfamiliar API or a client-supplied theme.
- Multiply by your loaded delivery cost. This is your floor, not your price.
- Apply your target margin. Agencies that survive downturns tend to hold 45–60 per cent gross margin on project work. Below 30 per cent, you are working for the client’s benefit.
- Sanity check against the market. Now, and only now, compare to what similar work sells for in your region. If your number is wildly higher, your delivery process is the problem, not your pricing.
Present the result as a single price with a defined scope, not as an hourly rate multiplied by an estimate. The moment a client sees “80 hours at $150”, the negotiation becomes about hours.
Where white label delivery changes the maths
Outsourcing production changes one variable: your delivery cost per hour becomes something you can actually predict and control. Published pricing at the time of writing puts hourly white label WordPress development at roughly $50–$99 per hour, dedicated-developer retainers from about $2,900 a month for a junior, and monthly hour blocks from around $749 for 15–20 hours up to about $3,999 for 100–120 hours.
Monthly hour blocks are the easiest to price against, because the cost per hour is fixed before you quote. Our own dedicated monthly plans run from $699 for 15–20 hours on Starter, through $1,199 for 30–35 hours and $1,899 for 50–60 hours, up to $3,599 for 100–120 hours with a dedicated lead developer. At the Pro tier that is an effective cost somewhere in the low $30s per hour — a very different floor to a salaried in-house team.
Two practical implications. First, your margin on a build becomes a straightforward calculation rather than a hope. Second, you stop carrying idle capacity in slow months, which is where a lot of agency profit quietly dies. If you are weighing that trade-off properly, the breakdown in our post on white label versus in-house WordPress developers works through the numbers on both sides.
What outsourcing does not do is let you cut your price. If you drop your rate because your costs fell, you have handed your margin to the client and gained nothing. Price on the value of the delivered outcome; let the cost side be your business.
The clauses that actually protect margin
Scope creep is rarely one big demand. It is eleven small ones, each individually reasonable. Your proposal needs mechanics that make the eleventh one a conversation rather than an assumption.
- Revision limits. Two rounds per deliverable, defined as consolidated feedback from one named person. Additional rounds billed at a stated rate.
- Content deadline. Client content due on a fixed date. Late content pauses the schedule and may re-price the project. This one clause prevents more overruns than any other.
- Exclusions, written plainly. Third-party licences, stock imagery, hosting, copywriting, translations, accessibility remediation beyond the agreed standard.
- Change orders in writing. Any addition gets a short written change note with hours and price before work starts. No exceptions, including for clients you like.
- Payment schedule. 40–50 per cent up front, a milestone payment, balance before launch — not after. Cash-flow risk is a margin risk.
- Support boundary. 30 days of bug fixes post-launch, then a maintenance agreement. “Bug” means the build does not do what was specified, not “we changed our minds”.
Enforcement matters more than wording. A change-order clause you never invoke is a clause the client has learned to ignore.
Track margin per project, not just revenue
Agencies that price well share one unglamorous habit: they run a post-mortem on every project of any size. Estimated hours versus actual hours, by deliverable. Which client behaviours cost you time. Which types of work were consistently under-scoped.
After ten or fifteen projects you will have a real estimating model instead of a feeling. You will also find your worst-margin work clusters into recognisable shapes — legacy site rescues, ecommerce builds with unclear tax and shipping rules, and anything where the client’s brand team has approval rights but no deadline. Price those higher or decline them. Our guides on WooCommerce build scoping and maintenance retainer pricing go deeper on the two categories that most often go wrong.
It also helps to be honest about which services you should be selling at all. If a category is consistently unprofitable and you cannot fix the delivery, either raise the price until it is worth doing or take it off the menu. Looking across our own WordPress development services, the categories agencies most often mis-price are migrations, malware cleanups and speed optimisation — all three are diagnostic work sold as if it were production work.
Frequently asked questions
What margin should an agency target on WordPress projects?
Aim for 45–60 per cent gross margin on project work, before overhead and owner salary. Below 30 per cent you have almost no room for estimation error, and a single difficult project can take the year’s profit with it.
Should I tell clients I use a white label development partner?
That is your call and it depends on your contracts. Most agencies present a single delivery team, which is exactly what a white label arrangement is designed to support: no partner branding in deliverables, no contact with your client, full code ownership transferred to you. If your client contract requires disclosure of subcontractors, disclose.
How do I raise prices with existing clients?
Give 60–90 days notice, apply the change at a natural boundary such as a renewal or a new project, and pair it with something concrete — faster turnaround, broader scope, better reporting. Expect to lose one or two of the lowest-margin relationships. That is usually a net gain in capacity.
Is value-based pricing realistic for WordPress work?
It is realistic where you can point at a revenue mechanism: a checkout, a booking flow, a lead form driving qualified enquiries. It is not realistic for a brochure rebuild with no measurable commercial outcome. Do not force it — a well-constructed fixed price with a proper contingency beats a value argument you cannot evidence.
How much contingency should I build into a quote?
15 per cent for familiar work, 25–30 per cent when there is a legacy codebase, a third-party integration or a client with multiple approvers. Keep it as a visible internal line so you can measure how often you use it and adjust future estimates.
Where to go next
Pricing well is mostly bookkeeping and nerve: know your delivery cost, quote a scope rather than a timesheet, and hold the line on change orders. Getting the cost side predictable is the part outsourcing can help with, and our guide to white label WordPress development for agencies covers how that arrangement works in practice.
If you want a fixed hourly cost to quote against next quarter, have a look at the monthly plan tiers and pick the one that matches your current pipeline. They are month-to-month, so you can change tier when the pipeline does.
// related