WordPress Development
WordPress Maintenance Retainers: How Agencies Package and Price Them
Maintenance retainers turn unbilled favours into predictable revenue - but only if the scope, tiers and pricing are built from real delivery cost. Here is how agencies package and price them.
Most agencies sell a WordPress build, hand over the login, and then spend the next two years doing unpaid favours. A plugin update breaks the checkout, a client emails on a Sunday, someone needs a PDF swapped on the careers page. None of it is billed, all of it is expected. A maintenance retainer is how you turn that leakage into predictable revenue, and wordpress maintenance retainer pricing is the part most agencies get wrong.
This post covers what actually belongs in a maintenance plan, three packaging models that hold up commercially, how to price each tier against your real delivery cost, and the operational detail that decides whether the retainer makes money or quietly bleeds it.
Why maintenance retainers fail before they start
The typical first attempt looks like this: $99 a month, “updates and support”, no defined hours, no defined response time. It sells easily because it is cheap and vague. It fails for exactly the same reasons.
Three failure modes repeat across agencies:
- Unbounded scope. “Support” with no hour cap means the loudest client consumes the margin generated by the quiet ones. One WooCommerce site with a temperamental shipping plugin can eat a whole month of retainer revenue.
- No delivery model behind it. The work lands on whoever is free, usually a senior who should be billing project rates. Maintenance done by your most expensive person is a loss-making product.
- No renewal story. If the client never sees evidence of work, the retainer looks like a subscription to nothing. It gets cancelled at the first budget review.
Fix those three and maintenance becomes the most stable line on your P&L. Recurring revenue smooths the lumpy project pipeline, and a portfolio of maintained sites is the cheapest source of new project work you will ever have, because you already know what those sites need next.
What belongs inside the retainer
Split the offer into two buckets and name them explicitly in the contract: proactive work you perform on a schedule, and reactive work the client requests. Clients do not intuitively separate these, and almost every scope argument comes from the blur between them.
Proactive, on a fixed cadence
- Core, plugin and theme updates applied on staging first, then promoted after a visual and functional check.
- Off-site backups with a stated retention window and at least one documented restore test per year.
- Uptime and SSL expiry monitoring, with an alert route that reaches a human.
- Security posture checks: file integrity, admin user audit, failed-login patterns, abandoned plugins with no update in twelve months.
- A monthly performance snapshot — Core Web Vitals field data, page weight, and anything that has regressed since last month.
- A short written report. One page. The client must be able to see what they paid for.
Reactive, drawn from a pooled allowance
- Content edits and small layout changes.
- Bug fixes on existing functionality.
- Form, tracking and integration troubleshooting.
- Emergency response when something breaks.
Everything else is a project. New templates, new integrations, redesigns, migrations, a checkout rebuild — all quoted separately. Write that sentence into the agreement and repeat it in the kickoff call. The clarity is what protects the relationship later.
Three packaging models that work
| Model | How you sell it | Best for | Watch out for |
|---|---|---|---|
| Care plan tiers | Bronze/Silver/Gold with fixed inclusions and an hour allowance per tier | Portfolios of similar brochure and small business sites | Tier creep — clients on Bronze asking for Gold behaviour |
| Hour bank | A block of hours per month, rolled into a flat fee, unused hours expire or partially roll | Clients with irregular but real ongoing demand | Rollover rules; unlimited rollover turns into a liability |
| Percentage of build | Monthly fee set at 8–15% of the original build cost | Larger custom builds and WooCommerce stores | Needs a floor price so small builds are not underpriced |
Care plan tiers are the easiest to sell and the easiest to standardise. The hour bank is the honest choice for clients whose needs vary month to month. The percentage-of-build approach fits complex sites where the risk of a serious incident scales with the complexity you shipped — a store doing real revenue is not a $99-a-month proposition and should never be sold as one.
Setting wordpress maintenance retainer pricing that survives contact with reality
Price from delivery cost upward, not from what feels sellable. The arithmetic is unglamorous but it is the whole game.
- Measure the fixed monthly cost per site. Time the proactive routine on a real site. Updates, checks, report — for a straightforward business site that is usually somewhere between 45 and 90 minutes once the process is documented.
- Add a reactive allowance. Look at the last six months of unbilled support for that client type and take the median, not the average. The average is distorted by one bad month.
- Add tooling. Backups, monitoring, security scanning and any premium plugin licences you carry on the client’s behalf. Per site, per month.
- Add a risk buffer of 15–20%. Something will go wrong. If nothing goes wrong, that buffer is your margin.
- Multiply by your target multiple. Most agencies land on 2.5–3.5x delivery cost to cover account management, sales and profit.
- Sanity-check against the tier above. Each tier should be a visible step up in inclusions, not just more hours. Clients upgrade for outcomes, not for arithmetic.
Two rules that save arguments later. Bill annually or quarterly where you can — it improves cash flow and cuts churn. And put an emergency clause in writing: out-of-hours incident response is either excluded, or included at a defined multiple. “We’ll sort it out” is not a clause.
Who actually does the work
Maintenance is high-frequency, low-glamour, and highly proceduralised. That makes it the single best candidate for outsourced capacity in an agency. The tasks repeat, the quality bar is objective, and the work does not require any relationship with the end client — which is precisely the shape of work a white label WordPress development partner is built to absorb.
The usual structure: your team owns the client relationship, the report narrative and anything strategic. A delivery partner runs the update cycles, the fixes, and the incident response through your project management tool under your brand. Agencies typically route this through ongoing WordPress maintenance and support and then hold a monthly hour block for the reactive queue.
The economics are straightforward. If your portfolio has twenty sites on care plans at an average of $250 a month, that is $5,000 in recurring revenue. A monthly hour-block arrangement — mb3techs’ dedicated monthly plans start at $699/mo for 15–20 hours and $1,199/mo for 30–35 hours — covers a large share of that delivery load at a known cost, month-to-month with no lock-in. The margin becomes something you can forecast rather than something you discover at year end.
Two caveats worth stating plainly. If you only maintain three sites, outsourcing is not worth the coordination overhead — keep it in-house until the volume justifies a process. And if your reactive work is genuinely unpredictable in shape, an hour block will feel wasteful in quiet months. Model it before you commit.
The operational details that decide your margin
- One intake channel. A form or a shared board, never personal inboxes and never text messages. Untracked requests are unbilled requests.
- Staging on every maintained site. Updating straight on production is how a $250 retainer becomes a $4,000 emergency. If you have not standardised this, fix your staging to production deployment workflow before you sell another plan.
- A documented incident path. Who is called, in what order, with what access. Write it before the incident, not during. Our malware response playbook for hacked client sites is the version of this for the worst case.
- Track time even on flat-fee plans. You cannot re-price a tier you have never measured. Time tracking is a pricing input, not a billing mechanism.
- Review every plan annually. Sites accumulate complexity. A retainer priced for a 12-page brochure site in 2023 is underpriced for the 40-page site it became.
- Report performance regressions in plain language. The monthly snapshot is also your upsell surface; a site drifting on Core Web Vitals is a conversation that starts with a Core Web Vitals rescue and often ends in a paid project.
Frequently asked questions
Should maintenance plans include hosting?
Only if you want to own uptime. Reselling hosting adds margin and control, but it also makes you the first call at 2am when the host has an outage you cannot fix. Many agencies specify a required host instead and stay out of the infrastructure business entirely.
What is a reasonable hour allowance per tier?
Common patterns are one hour a month at entry level, two to four in the middle, and eight or more for complex commerce sites. What matters more than the number is that the allowance is stated, that overage has a published rate, and that both are visible on the monthly report.
Do unused hours roll over?
If you allow rollover, cap it — one month’s worth, expiring after 90 days, is a workable rule. Unlimited rollover creates a growing balance the client will eventually try to spend all at once, usually in the month you have no capacity.
How do I move existing clients onto a paid plan?
Do it at a natural boundary — a renewal, a migration, a redesign. Present it as a change in how support is delivered rather than a new charge for something they were getting free, and show the last six months of unbilled work as evidence of the value. Expect to lose one or two clients; those are usually the ones costing you the most.
Can maintenance be white labelled end to end?
Yes, and it is one of the cleaner categories to outsource because the work is procedural and needs no client contact. A serious partner will work inside your PM tool, sign an NDA before seeing any client detail, put no branding in deliverables, and never contact your clients directly.
If you are sizing up a maintenance offer and want to know what the delivery side would cost before you publish your tiers, the monthly plan options lay out the hour bands and inclusions. Happy to sanity-check your numbers if it helps.
// related