Agency operations guide
Define SEO Maintenance Inside a WordPress Care Plan
Write the SEO part of a care plan as a list of recurring, capped deliverables, with named exclusions, escalation triggers, and the evidence you hand over each month.
On this page
Write the SEO part of a care plan as a short list of recurring tasks, each with a frequency, a ceiling, and a named piece of evidence that proves it was done. Everything that does not recur, or cannot be capped in advance, goes on a separate list the client can see: content work quoted per batch and growth projects quoted per project.
A line such as “ongoing SEO” tells the client nothing about what the retainer buys and gives you no way to say no. A line such as “review titles and descriptions on up to ten pages changed since the last pass” can be delivered, checked, and invoiced.
Sort every request into three kinds of work
Before writing the scope sheet, sort the SEO requests you expect from this client. Two questions do most of the work: does the task come back every month without anyone asking, and can you state its limit before starting?
| Kind of work | Recurs? | Capped in advance? | Where it goes |
|---|---|---|---|
| Technical upkeep | Yes | Yes, by a fixed checklist | The retainer |
| Content work | Sometimes | Yes, by page count or batch | Quoted per batch, or a capped retainer line |
| Growth projects | No | Not until discovery is done | Quoted separately |
Technical upkeep is the repeatable checking that keeps a site crawlable and its search output correct. Content work is writing and rewriting: new pages, refreshed articles, product descriptions. Growth projects are one-off jobs with a start and an end, such as a URL restructure, a plugin migration, or a new section of service pages.
A request that recurs but has no natural limit, such as “keep our blog optimized,” needs a cap written into the line itself or it will absorb the retainer.
List the recurring deliverables
Each line below has a frequency, a ceiling, and an output. Adjust the numbers to the plan you sell; they are placeholders, not recommendations.
- Site-level configuration check, monthly. Confirm the site is not discouraging search engines, permalinks use a structure other than Plain, the organization or person the site represents is set for structured data, a default social image exists, and the sitemap is served. Ceiling: the same five checks every month.
- Indexing review, monthly. Review Search Console’s Page indexing report (checked September 27, 2026) for pages that should be indexed but are newly listed as not indexed. Ceiling: investigate up to a set number of new issues; anything larger escalates.
- Metadata review on changed pages, monthly. Check the title, description, and canonical on pages published or edited since the last pass. Ceiling: a fixed page count.
- Redirects for changed URLs, as they occur. Add a redirect when a URL changes and test it. Ceiling: a set number per month, with anything beyond a handful treated as a restructure.
- Broken internal link sweep, quarterly. Fix or report broken links. Ceiling: a URL count or a time box.
- Monthly note. What changed, who approved it, what was checked and not changed, and what is waiting on the client.
If the site runs WP Visibility, the first item maps to wp visibility audit, which reports the search engine visibility setting, permalinks, site identity, default social image, and sitemap module as pass, warn, or fail. The sitemap check confirms that the Sitemaps module is on, not that the sitemap loads, so open the sitemap URL as part of the check. The site audit documentation lists each check and why a warning can be correct. A warning is a prompt to look, not an order, so write “reviewed” into the deliverable, not “all green.”
Do not sell the free scan at /scan/ as the monitoring part of a plan. It is a separate hosted check of a public URL, not a scheduled service that watches the site for you, and its grade is its own assessment, not a score search engines use.
Name the exclusions and escalation triggers
The exclusion list protects the retainer as much as the deliverables do. Put it in the same document, in plain words:
- Writing new pages, articles, or product descriptions.
- Changing URL structure beyond individual redirects.
- Migrating between SEO plugins or themes.
- The first full audit of an inherited site (onboarding is its own project; see inventorying an inherited site).
- Recovery work after a security incident, a manual action, or a sitewide traffic drop.
- Any promise about rankings or traffic.
On the last point, Google’s guidance for people hiring SEO help says that if someone guarantees their changes will give you first place in search results, you should find someone else, and that an audit should give realistic estimates of improvement and of the work involved. Google’s “Do you need an SEO?” page, checked September 27, 2026. A care plan that commits to deliverables rather than positions matches that guidance.
Escalation triggers are events that move work out of the retainer and into a quote. Write them as observable conditions:
| Trigger | What you do inside the retainer | What becomes a quote |
|---|---|---|
| A large drop in search clicks across many pages | A time-boxed diagnosis and a written summary | The remediation, once the cause is known |
| The client plans a redesign or URL change | Advise on redirects and timing | The redirect map and post-launch checks |
| A security warning or suspected hack | Notify and pause other work | Cleanup and recovery |
| Request to rank for a new service | Note it in the monthly report | New pages and content |
Splitting a request this way lets you accept the bounded part immediately and quote the rest once you can size it.
Agree on evidence of completion
A client paying for maintenance should be able to see that the work happened. Google’s list of questions to ask an SEO provider includes whether they will share all the changes they make to the site. Google’s “Do you need an SEO?” page, checked September 27, 2026. Build the answer into the plan.
| Deliverable | Evidence you keep |
|---|---|
| Configuration check | The saved check output, for example wp visibility audit --format=json written to a file named with the date (the output itself carries no date) |
| Indexing review | Date range reviewed, issues found, and the decision for each |
| Metadata review | A before and after table for each changed page |
| Redirects | Source, target, status code, and the date you tested a real request |
| Link sweep | The URLs fixed and the ones reported to the client |
| Assistant-assisted edits | The approved proposals and, where relevant, the plugin’s activity log rows |
If you use a connected assistant, the activity log records completed calls made through the plugin’s ability surface. It does not record edits made in the WordPress editor or through other routes, so it supplements your own change record rather than replacing it. Viewing the log deletes rows older than 90 days and the oldest rows above 10,000, and viewing the review queue deletes resolved proposals older than 90 days and the oldest above 500, so copy what you need into the monthly note when you write it.
An illustrative scope sheet
The table below is a synthetic example for a fictional client, garden.example, a garden supply shop with about 60 pages. The figures are placeholders chosen to show the format. They are not typical volumes, times, or prices.
| Line | Frequency | Ceiling | Evidence | Status in this plan |
|---|---|---|---|---|
| Configuration check | Monthly | Five checks | Saved audit output | Included |
| Indexing review | Monthly | Up to 3 new issues investigated | Review note | Included |
| Metadata on changed pages | Monthly | Up to 10 pages | Before and after table | Included |
| Redirects | As needed | Up to 5 per month | Tested request log | Included |
| Internal link sweep | Quarterly | 60 minutes | Fixed and reported list | Included |
| Monthly note | Monthly | One page | The note itself | Included |
| Seasonal category page rewrite | On request | Quoted per page | Approved copy | Excluded, quoted |
| Move to a new SEO plugin | Once | After discovery | Acceptance checklist | Excluded, project |
For the project lines, estimating a migration before a fixed fee explains how to size that work.
Checklist before the client signs
- Every retainer line has a frequency, a ceiling, and a named piece of evidence.
- Content work and projects are listed as excluded, with how they are quoted.
- Escalation triggers are written as observable events.
- No line promises a ranking, traffic level, or search feature.
- The client knows who approves wording and who receives the monthly note.
- You have run the plan once on a real site and timed it before setting the price.
