You are currently viewing How to Price a Web Maintenance Retainer (Without Losing Money)

How to Price a Web Maintenance Retainer (Without Losing Money)

Every web designer I know has the same two conversations. The first is with a client who wants a new site: scope, quote, deposit, build, launch, invoice, done. The second is six weeks after launch, when something breaks and the client emails to ask whether this is covered. In the first conversation you are a professional with a price. In the second you are doing $200 of work for free because nobody wrote down who owns what after handover.

A web maintenance retainer fixes that in both directions. It gives the client a predictable number to budget for, and it gives you a predictable number to forecast from — which is the difference between a practice that depends on winning the next project and one that can plan past next month.

But retainers are also the fastest way to sell yourself into a loss. I have seen $150-a-month plans that consumed six hours a month, and $900-a-month plans that consumed two. The difference was never the client. It was whether the scope was written around tasks or around risk, and whether the person selling it had priced the invisible labour that every maintenance contract hides.

Here is how I structure a web maintenance retainer in 2026: the three service tiers and what each one actually costs to deliver, how to price the risk instead of the hours, the exact inclusions and exclusions that shut down scope creep, the onboarding sequence that prevents the first invoice being a fight, and the numbers I would use to decide whether a plan is worth keeping.

web maintenance retainer pricing discussed over a client contract and laptop

If you are still building the business side of your practice, the same logic applies to every engagement you sell, not just maintenance. A website audit proposal that prices risk rather than hours is the fastest way to learn how to price a retainer, because an audit is the product version of the same instinct.

Why web maintenance retainers beat project work

Project work has a structural problem that is easy to miss while you are busy: revenue resets to zero at every delivery. You finish a $9,000 build, you feel good for a week, and then you are back in the pipeline. The work was real, the money was real, but none of it connects to next quarter.

Retainers compound for three reasons.

They convert support labour you already give away. If a client emails twice a month and you spend 40 minutes each time, that is roughly eight hours a year of unpaid work, and it is invisible because it never appears on an invoice. A retainer does not create new labour. It puts a price on labour that exists.

They de-risk the client’s side of the decision. The single most common objection to hiring a developer is not price, it is abandonment: “who fixes this when it breaks and I cannot reach you?” A maintenance plan answers that question with a document instead of a promise, and it wins work from people who would otherwise pick a bigger agency purely for the safety net.

Retained clients renew projects. In my experience the conversion rate on a redesign pitch is dramatically higher to a client you already speak to monthly than to a prospect. Retainers are not just recurring revenue; they are a warm pipeline for the work that actually pays the bills.

The three tiers of web maintenance, and what each costs to deliver

Most plans fall into one of three shapes. The tiers are not really about effort, they are about the kind of risk the client is buying protection from. Pricing them as if they were interchangeable is where the losses come from.

Tier 1 — Monitoring and small fixes

Uptime monitoring, plugin and core updates, backups, security patching, and a monthly report. It is mostly automated work with a real human review pass, plus a small hour allowance for small fixes.

What it actually costs to deliver: two to four hours a month per site for a competent operator, most of it batched. The variable part is not the updating, it is the failure investigation when an update breaks a page — and that happens at a rate clients never believe until it happens to them.

Market range in 2026: $75 to $250 per month for a single small WordPress site. Below $75 you are subsidising the client. Above $250 you are usually bundling in more than monitoring.

If you want a structured list of what to check in that review pass, this 8-point WordPress site audit checklist covers the order I run it in, and what is worth fixing automatically versus by hand.

Tier 2 — Managed maintenance with a service window

Everything in Tier 1 plus a guaranteed response time, a defined monthly hour bank for content and design changes, staging-before-production workflow, and a quarterly health review. This is where most small agencies and solo developers should live, because the client is buying access and predictability rather than just insurance.

What it actually costs to deliver: five to ten hours a month, of which three to six are billed against the hour bank. The margin is not in the hours — it is in the discipline of the queue. Clients who send ten small requests and expect ten separate replies can burn the month in admin. Batching requests into one weekly pass is the single biggest lever on profitability at this tier.

Market range in 2026: $300 to $900 per month, and the hour bank is the variable that decides whether you are profitable.

Tier 3 — Retained technical partner

Tier 2 plus performance and SEO maintenance, accessibility checks, a monthly roadmap call, priority on new features, and a standing allocation of development hours. It is effectively a part-time technical lead for a client who cannot justify a hire.

What it actually costs to deliver: 10 to 25 hours a month, with the hours formally committed. At this level you are not selling availability, you are selling capacity, and capacity has to be reserved in your calendar or it does not exist.

Market range in 2026: $1,200 to $3,500 per month, or a flat commitment of $120 to $200 per hour with a monthly minimum.

The mistake that shows up across all three tiers: quoting the number the client wants to hear rather than the number the work costs, then trying to make it back with volume. A cheap web maintenance retainer is not a customer acquisition tactic, it is a slow-motion loss leader that also trains the client to expect free work.

Price the risk, not the hours

Hourly pricing is honest and almost always wrong for maintenance. Here is why: two sites with identical page counts can have wildly different risk profiles. One is a five-page brochure site with three plugins. The other is a WooCommerce store with 40 plugins, a payment gateway, and a membership system. Monitoring both takes the same ten minutes. The probability that one of them breaks this month is an order of magnitude apart.

So price the profile. The factors that should move a quote:

  • Plugin count and update velocity. Under ten plugins that rarely update is low risk. Fifty plugins, three of them abandoned, is a standing incident.
  • Checkout or booking flows. Anything that takes money or holds a booked slot carries revenue risk. When it breaks, the client is losing money by the hour, and your response time is worth more.
  • Integrations. Third-party APIs break without warning and often without a changelog. Every integration is a part of your contract you do not control.
  • Custom themes and plugins. Code nobody else maintains means you cannot hand the job to a junior or an automated tool.
  • Traffic concentration. A campaign launch on a site that has never been load-tested is a predictable emergency.
  • The tooling question comes up here because it changes the arithmetic: what you pay a monitoring or audit service per month is a direct cost of delivering Tier 1, and it is the cheapest line item to remove.
  • Client technical literacy. Not a judgment, a risk factor. A client who edits the theme files between calls generates work.

Score each site on those six factors, then apply a multiplier of 1.0 to 1.6 on top of a base rate. You are not inventing a number, you are documenting why one client pays $450 and another pays $720 for what looks like the same plan on the invoice.

The second pricing lever is the response window, and it is the one worth charging properly for. “Response within one business day” and “response within two hours, seven days a week” are different products with different consequences for how you organise your week. Charge for the second one or do not offer it.

What to include, and what to exclude in writing

A retainer is defined by its exclusions more than its inclusions. Clients do not read inclusions as limits, they read them as a floor. If the plan says “up to three hours of content changes per month,” a client will read the three hours and ignore the word content.

The exclusions that should appear in every contract, in plain language:

  • New pages, new features, and redesigns are quoted separately. Say it plainly: the retainer keeps the site healthy, it does not build new things.
  • Content writing is not included. Editing text the client provides is different from writing text. If you want both, price both.
  • Unused hours do not roll over. This one causes the most conflict and prevents the most loss. Offer a reasonable monthly carry of one hour if you want, but a permanent bank of 30 accumulated hours is a liability you invented.
  • Third-party costs are passed through. Hosting, licences, premium plugins, and payment processing fees are billed at cost plus a stated admin percentage, or paid by the client directly.
  • Emergencies have a definition. “Site down” and “I would like the header bigger” are not the same, and only the first one is covered by the response guarantee.
  • Maintenance excludes liability for a site compromised before onboarding. Run a baseline audit and record it before you take responsibility for someone else’s history.

Two structural options for the allowance itself, and they behave very differently:

Hours included: simplest to sell, hardest to protect. The client sees a number of hours and treats it as a right.

Fixed number of requests: cleaner in practice. “Up to six change requests per month, batched into one weekly pass.” It moves the conversation from time to outcomes, and a request of one line or twenty lines costs the same, which is exactly the incentive you want.

Whichever you use, state the overage rate in the contract before the first overage happens. Discovering the overage rate at invoice time is how retainers end.

The onboarding sequence that protects the first invoice

The first month of a retainer is where the relationship is either set or lost. Two things must happen before you accept responsibility: a baseline audit, and a written list of what is already broken.

The baseline audit is not bureaucracy, it is evidence. Photograph the site’s state — page speed, broken links, missing alt text, plugin versions, H1 structure, forms that already do not work — and store the report as the appendix to the contract. Without it, month two becomes a debate about whether a problem existed before you arrived, and you cannot win that debate with words.

The onboarding sequence I use:

  1. Day 0 — Baseline audit and report. Deliver a written snapshot with screenshots and a prioritised fix list. Frame the list as “known issues at handover,” not as work included in the fee.
  2. Day 1 — Access and environment. Admin credentials, hosting panel, DNS where relevant, and the client’s list of people who need site access — collected on day one, not in month two.
  3. Day 2 — Establish the request channel. One channel, one format. Not email plus WhatsApp plus a phone call on Friday. Every channel you accept is a scheduling cost you agreed to pay.
  4. Day 3 — First update cycle. Staging first, test, then production, documented in a short log. The first cycle teaches the client what “done” looks like.
  5. Day 30 — First report and a 15-minute call. Numbers, what was fixed, what was declined and why. The call is when the retainer becomes a relationship rather than a bill.

That first report does more for retention than anything else in the contract, because it is the moment the client sees what they are paying for when nothing has visibly broken. Maintenance is invisible by design; the report is the only time it becomes visible.

The cost side: what a retainer quietly consumes

This is the part that separates a plan that pays you $400 a month from one that pays you $400 a month and takes eight hours to service.

The tooling layer. Monitoring, backups, staging, security scanning, and a reporting dashboard are the products a managed WordPress host sells for a low monthly fee. Priced individually they add up fast, and the pricing models are designed around exactly that.

The reason this matters for pricing is that a large share of maintenance hours is not skilled work. It is confirming that the site is up, that the backup ran, that the plugin updates did not break the layout, and that no page has sprouted a 404 since last month. That is verification labour, and verification is the first thing worth automating because a machine doing it also produces the audit trail the client’s report needs.

This is the problem I built SiteGuard to solve for my own clients: one scan that walks the whole site, flags broken internal links, images without alt text, orphaned pages, and pages with no meta description, then shows a before-and-after diff for the next month. It runs locally, costs nothing per site, and turns the verification half of a maintenance contract into a ten-minute task.

An audit tool does not replace the judgment — deciding which broken links matter, or whether an orphaned page should be linked or redirected, is still the work you charge for. What it replaces is the hour of clicking. Use the free WordPress audit on any site to see the shape of the report before you decide whether it belongs in your own workflow.

The communication tax. Every client message has a cost far larger than reading it: context switching, remembering what the last thread said, deciding whether this counts against the allowance. Batch requests into a single weekly window and the tax drops by roughly half. It is the most underrated profitability lever in maintenance work.

The emergency that is not an emergency. A client who believes their site is down will message you on a Sunday. A monitoring check that tells you the truth before they wake up converts most of those calls into a one-paragraph reply on Monday. Perception of uptime is the actual product at Tier 1.

Content drift. Sites change slowly and then look wrong all at once — old posts rotating out of relevance, pages nobody links to, headings that stopped matching the page. A maintenance contract that ignores the content side looks fine for a year and then produces a client who says “the site does not work any more” while every technical metric is green. Auditing content in batches is how you catch it before they do.

Documentation debt. Every fix that only exists in your memory is a liability when you take a holiday. A two-line log per change costs nothing at the time and is the difference between a saleable practice and a job you can never hand off.

The numbers that tell you whether a retainer is worth keeping

Track three figures per client, every month. They take five minutes and they are the only defence against accumulating unprofitable contracts.

Effort ratio. Hours delivered divided by hours priced. Above 0.8, the plan is breaking even at best. Above 1.0, you are paying the client for the privilege. Anything above 1.2 for two consecutive months means a scope conversation now, not at renewal.

Revenue per site hour. Total retainer revenue divided by total hours, including admin and calls. This number should be close to your effective project rate. If your retainer revenue per hour is $60 and your project rate is $110, the retainer is teaching you to work cheaply at scale.

Renewal-intent signal. One question in the monthly report: “Anything you expected to happen this month that did not?” Clients who stop answering that question are leaving in three months, and the report tells you before they do.

Set a floor before you sign anything: no plan under $150 a month for a single site, no plan under a 40 percent gross margin against your time, no unlimited requests at any price. Every problematic retainer I have kept began with an exception to one of those three.

How to sell the retainer without discounting it

The retainer conversation should happen during the build, not after it. By the time the site launches, the client is done spending money and every new invoice feels like an add-on.

Three moves that work for me:

Quote it as part of the project. Present the plan with the build proposal as the recommended option, not as a separate upsell. “The build is $9,000. The site, monitored and maintained, is $9,650 for the first year, then $650 a month.” The frame matters — a client choosing per year is not the same decision as a client choosing per month.

Show the risk in their own numbers. If the store does $20,000 a month, an outage of one business day costs more than a year of Tier 2. This is not a scare tactic, it is arithmetic, and it reframes maintenance from a cost to insurance with a measurable premium.

Sell the capacity, not the hours. Clients who understand how freelancers use AI to take on more work without hiring immediately understand why a retained partner is worth more than an on-call hourly rate. Lead with the leverage, not the time.

Offer a trial quarter. Three months at the plan rate with no minimum length if it does not work. Almost nobody cancels, because the value of not thinking about the site again is recognised at the first report. If they do cancel, you learned the price was wrong cheaply.

And be willing to decline. A client who wants unlimited changes for $100 a month is not a bad person; they are a bad fit, and the fit will not improve. The best thing you can do for both of you is quote the price the work costs and let them choose.

Frequently asked questions

How much should I charge for a web maintenance retainer? $75 to $250 a month for monitoring and small fixes on a single small site, $300 to $900 for managed maintenance with a service window and an hour bank, $1,200 and up for a retained technical partner. Price the site’s risk profile on top of a base rate rather than pricing the hours, and never sign a plan you cannot deliver at a 40 percent margin.

Should unused hours roll over? No, or one hour at most. A rollover bank converts a monthly service into an accumulating liability, and it teaches clients to hoard requests and then spend forty accumulated hours in one week. Fixed request counts avoid the problem entirely.

How many clients can one person maintain? On Tier 1, a monitoring setup with batch processing handles a large book, because the work is automated with a review pass. On Tier 2 and above the cap is calendar, not skill: 10 to 15 retained clients is realistic solo before the response windows start colliding, and that is with batching, not without it.

Is a retainer required for clients whose site I built? Legally no, practically it protects both sides. Without one, post-launch requests become a negotiation every time, and the client who feels abandoned after launch rarely returns for the next project. Offer it in the proposal as the recommended option rather than asking after handover.

Do I need special insurance for maintenance work? Check your professional liability policy for whether it covers work on sites you did not build, and put a security baseline in the contract: what you found at handover, and that you are not liable for compromises that predate onboarding. This single clause has saved me from two disputes.

What to do this week

Do not write a new service page first. Do this instead:

Open your last two delivered projects. For each one, list every request that arrived after launch, how long you spent on it, and whether you charged for it. Add that up. Whatever number you get is the annual revenue that a retainer would have converted from invisible labour into a line item on an invoice — and it is usually larger than expected, because free support is invisible by design.

While you are in there, run the same audit you would sell: a seven-point pre-publish SEO audit on the site you are about to maintain tells you within ten minutes whether the previous developer left anything that will become your problem.

Then write one page: three tiers with prices, a list of six exclusions, the request format, and the overage rate. Send it to those two clients with the phrase “I am formalising the support arrangement” rather than “would you like to buy something.” At least one will say yes, and the first yes is what tells you the numbers are right.

The point of a web maintenance retainer is not the monthly revenue, it is the change in what your practice is worth. Project work pays you for what you built. Maintenance pays you for keeping it valuable, which is the more honest description of what clients actually want.

guru Tony

guru Tony is the founder and editor-in-chief of AIXHDD. A content strategist and AI tools enthusiast, he personally tests every product before it ships — from video generation and text-to-speech to image and productivity tools. His hands-on, no-hype reviews help creators and small businesses choose the right local AI tools without paying recurring cloud subscriptions. AIXHDD builds professional-grade AI software that runs 100% on your own hardware: no cloud, no subscriptions, full privacy.

Leave a Reply