Search measurement guide
Write a WordPress SEO Client Report That Connects Changes to Evidence
A client report template with five sections: completed work, verified output, search observations, business feedback, and next actions, with partial work and uncertainty shown.
On this page
A useful SEO client report has five sections, kept separate: the work you completed, evidence that it reached the live site, what search data shows for the period, what the business itself observed, and what happens next, including open questions. Each item points to its evidence. Partial work and uncertain results are stated as such, not smoothed into a single score or a ranking screenshot.
Keeping the sections apart is the point. A list of edits is not proof of an outcome, and a traffic chart is not proof that your edits caused it. When the report keeps them apart, the client can see both clearly.
Record changes and verification evidence
Start with what you did. For each change, record enough that someone else could find it and check it.
| Field | Example content |
|---|---|
| Change | “Rewrote the title and description on /delivery/” |
| Date live | The date it reached the production site |
| Pages | URLs, or a count with a linked list |
| Approved by | The client contact who agreed the wording |
| Verification | How you confirmed it: view source, a tested redirect, a sitemap check |
| Status | Done, partial, or reverted |
Verification is a separate column because “applied” and “live” are different states. A page cache, a second SEO plugin, or a template override can stop a saved change from reaching visitors. Viewing the source of the live page in a logged-out browser takes a minute and settles it.
If you use a connected assistant with WP Visibility, two records help here. The review queue shows the before and after values for each supported change while it waits for review, as described in approving or rejecting a proposal. After the queue reloads, an applied proposal’s card no longer shows that diff, but the proposal keeps the values it replaced and a timestamped record of who approved it, which the get-proposal ability returns. The activity log records completed calls made through the plugin’s abilities, with the user, client label, target, and outcome. It does not include edits made in the WordPress editor or through other routes. Opening the queue removes resolved proposals created more than 90 days ago, and viewing the log removes entries older than 90 days, so save what you need for the report, for example with wp visibility agent log --limit=500 --format=csv. Neither record replaces your own change table; together they support it.
Present comparable search observations
Search data belongs in its own section, described as an observation for a stated period, not as a result of the work.
- Use the same view as last time. Same Search Console property, search type, date range length, and filters. Note them under the table.
- Compare equal periods. The previous period, and the same period last year if the business is seasonal.
- Report clicks and impressions together, by page group. Service pages, articles, and brand pages behave differently; a sitewide total hides that.
- State the data limits once. Search Console omits anonymized queries from the query table and labels daily data in Pacific Time. Google’s help on troubleshooting Performance report data, checked September 27, 2026.
Avoid a single ranking as the headline. Search Console’s average position is an average of the topmost position of your site’s results, and Google’s help recommends focusing more on trends in impressions and clicks than on position alone. Google’s Performance report common tasks, checked September 27, 2026.
If you also show GA4 sessions, label them as a different measure. Why Search Console clicks and GA4 sessions do not match explains the definitions to include.
When a search change lines up with your work, say what you can support. Google notes that other events, such as news, periodic changes in user sentiment, or improvements to a competing site, can also contribute to performance changes, and suggests checking whether the timing maps closely to your change compared with similar past periods. Same source. “Clicks to the delivery page rose after the title change; we will compare another four weeks before drawing a conclusion” is a sentence you can defend.
Add the business feedback the client supplies
The client knows things search data does not: calls, inquiries, bookings, sales, and what customers said. Ask for them before writing the report, and label them by source:
- “Client reported 14 delivery inquiries in September, up from 9 in August (client’s own count).”
- “Client noted customers asking about same-day delivery, which the site does not mention.”
Do not convert this into a claimed return on the SEO work. Present it beside the search data and let the pattern, if there is one, speak for itself over several months.
Assign next actions and unresolved questions
End with what happens next and what is still unknown. This section is often the most useful to the client, because it shows the decisions they need to make.
| Type | Example |
|---|---|
| Next action | “Add same-day delivery policy to /delivery/ once confirmed” |
| Waiting on client | “Confirm whether the lawn care service has ended before we redirect its page” |
| Open question | “Impressions on the compost guide rose for broader queries; watching for another month” |
| Declined or deferred | “Category descriptions deferred to November at client’s request” |
Google’s list of questions to ask an SEO provider includes whether they will share all the changes they make to your site and provide detailed information about their recommendations. Google’s “Do you need an SEO?” page, checked September 27, 2026. A report built this way answers that question every month.
A template with fictional data
The report below uses fictional data for garden.example. Every figure and event is invented to show the format.
SEO REPORT: garden.example, September 2026
1. COMPLETED WORK
- Title and description rewrite, 3 service pages
Live Sep 4. Approved by J. (client). Verified: view source, 3 of 3. Done.
- Redirect /services/lawn-care/ to /services/
Live Sep 10. Approved by J. (client). Verified: 301 tested, 1 hop. Done.
- Category descriptions, 0 of 8 pages
Deferred to November at the client's request.
2. VERIFIED OUTPUT
- Site-level checks run Sep 30: all five pass (saved output attached).
- One title tag and one canonical on 5 sampled URLs.
- Sitemap loads; submitted address unchanged.
3. SEARCH OBSERVATIONS (Search Console, Web, Sep 1 to 28 vs Aug 4 to 31)
Page group Clicks Prev Impressions Prev
Service pages 410 380 12,300 12,100
Articles 620 640 31,000 27,500
Brand 900 910 4,200 4,300
Notes: anonymized queries omitted from the query table; dates in Pacific Time.
Reading: service page clicks up slightly after the Sep 4 title change;
too early to attribute. Article impressions up from broader queries.
4. BUSINESS FEEDBACK (from client)
- 14 delivery inquiries in September, 9 in August (client's count).
- Customers asking about same-day delivery.
5. NEXT ACTIONS AND OPEN QUESTIONS
- Next: add same-day policy to /delivery/ once confirmed.
- Waiting on client: confirm same-day policy.
- Watching: article impression growth, another 4 weeks.
- Deferred: category descriptions, November.
Adjust the sections to the plan the client bought; defining SEO maintenance inside a care plan covers matching deliverables to evidence.
Report checklist
- Completed work, verified output, search data, business feedback, and next actions in separate sections.
- Every change has a live date, approver, and verification method.
- Partial and deferred items are listed, not omitted.
- Search data uses the same view as last month, with filters and limits stated.
- No single ranking or score presented as the result.
- Business figures labeled with their source.
- Open questions and client decisions listed at the end.
