Multi-Site SEO Management: Running SEO for 20 Client Sites
Multi-site SEO management works when every client site runs on the same setup, the same weekly checks and the same report format, so your team spends its judgement only on what changed. With 20 client sites (the example roster used throughout this guide), standardise access and baselines first, then triage the sites by what moved instead of working through them in alphabetical order.
The approach holds for a smaller or larger roster. What changes with scale is the cost of a missing permission, an inconsistent property or a report built from scratch each month.
What you need
- Full user access to each client's Search Console property, added by the client as owner.
- At least the Marketer role on each client's Google Analytics property if your team will mark key events.
- An access register listing each client, property type, verified owner, your permission level and the date access was granted.
- One report template with the same KPIs in the same order for every client.
Get access right once
Ask each client to own their Search Console property and add your agency as a user. Google's permissions help page defines the roles: owners have full control, full users can view all data and take some actions, and restricted users have view rights on most data. Only owners can add users, and a property can have a maximum of 100 non-owners.
During a pitch audit, restricted access is enough. Google's own advice to site owners hiring an SEO is to grant only read access to Search Console at the audit stage. Ask for full access once you're engaged, since restricted users only have view rights on most data (source).
Pick the property type on purpose. A Domain property covers every subdomain and protocol and needs DNS verification, while a URL-prefix property covers only the exact protocol and prefix you enter (Google). The choice affects reporting too: Google's branded queries filter is only available for top-level properties, not URL path or subdomain properties. One Search Console account can hold up to 1,000 properties (source), so a single agency login can see the whole roster.
Google Analytics needs the same care. Marking key events requires at least the Marketer role at the property level (Google Analytics help), so ask for that rather than viewer access if your team will set them up.
Plan for people leaving, on both sides. Google warns that if all verified owners are removed, the remaining users lose access after a grace period (source). When a relationship ends, removing a verified owner also means deleting their verification tokens, or they can re-verify later. Keep an access register with the client, property type, verified owner, your permission level and the date access was granted.
Standardise the baseline for every site
Run the same onboarding checklist for every new client, in the same order.
- Verify a Domain property where possible and add the agency as a user.
- Mark Google Analytics key events for the client's real outcomes. They count only from the moment they're marked (Google Analytics help), so this can't wait until the first report.
- List the brand terms, and write a query regex for each target topic. Search Console regex uses RE2 syntax and ignores case by default (source).
- Save a baseline export covering the 16 months Google's drops guide uses to separate yearly patterns from real change.
- Submit the sitemap and look through the Page indexing report for anything already broken.
For data you keep yourself, Search Console's bulk data export sends data to BigQuery on a schedule. Two details matter with many sites. Each property exported into the same Cloud project needs its own dataset name, and storage and queries above the free usage level are charged. The export also starts from the day you set it up, so earlier history still has to come from the API or the reports.
Our Search Console API guide shows how to list every property your account can see and query them in a loop, which is a practical way to pull the same baseline for every client.
A weekly triage across all sites
Do one quick pass across the roster instead of a full review of each site. For every site, compare last week with the week before using weekly granularity. Google's comparison help uses "last week vs. the week prior" as an example and allows one comparison at a time.
Sort the Pages tab by Clicks Difference, then classify what you see.
| Signal | First place to look | Typical next step |
|---|---|---|
| Drop across most pages | Page indexing report | Look for a technical fault before anything else |
| Drop on a group of pages | URL Inspection on a few of them | Compare their template and recent changes |
| Impressions steady, clicks down | The titles and snippets of affected pages | Queue title and description rewrites |
| Drop that repeats each year | Google Trends and last year's data | Note it as seasonal and leave the pages alone |
| Small position shifts | Nothing yet | Recheck next week |
These routes follow Google's guide to debugging traffic drops. It gives a move from position 2 to 4 as an example of a small drop and recommends avoiding radical changes to a page that's already performing well. Before calling a client about a broad drop, check Google's list of ranking updates for the same dates.
For a faster first look, Search Console's Insights report has a "Your content" card that lists pages trending up and trending down against the previous period. Google's Insights help page says those lists are ordered by the change in clicks, not the percentage change, so a small page's losses may sit lower in the list than you'd expect.
The output of triage is a queue. In a quiet week a site may need no action at all, and that's a useful result: the time goes to the sites that moved. Keep the queue in one place across clients so the whole team sees the same priorities.
Monthly reports without a bespoke deck per client
Use one report template for every client, with the same KPIs in the same order, and vary only the commentary. Build it around non-branded clicks, organic key events and the pages gained and lost. Leave sitewide average position out; Google's common tasks guide recommends focusing more on trends in impressions and clicks than on position alone.
Search Console annotations help here. Owners and full users can add a note to a date on the Performance chart, up to 200 per property, so each site's chart records when changes shipped. Google asks you to keep names and other personal details out of them, since every user on the property can see them.
XeoRank plans start at $19 a month for Starter, with Pro at $49 and Growth at $109 (pricing). You can generate a Search Console business report for each site, weekly or monthly against the previous period, and export it as a PDF or Google Doc. On Growth you can issue it under your agency's name (white-label reports).
Changes across many sites
Keep a change log per site with the page, the change, who approved it, the date and how to revert it. Google suggests site owners ask an SEO whether they'll share all the changes made to the site along with the reasoning (source), so clients have been told to expect exactly this record.
Judge results on Google's timescale. The SEO Starter Guide says some changes take effect in a few hours and others take several months, and suggests waiting a few weeks before assessing. With many sites, that means a change shipped this month is usually reviewed in next month's report.
Roll out risky changes to one site first. If the same theme or plugin runs across several clients, test a template change on a single site, wait for the review window and then repeat it elsewhere. A mistake on one site is contained. The same mistake on every site at once is much harder to unwind.
Where multi-site setups usually break
- Mixed property types make client-to-client comparisons unreliable, because a URL-prefix property misses other subdomains and protocols (Google).
- Access tied to one employee's personal account disappears when that person leaves.
- Branded and non-branded traffic get reported together, so a client's brand campaign looks like an SEO win.
- Each account manager builds a different report, so nobody can compare clients or cover for a colleague.
- Changes ship without a log, and months later nobody can say why a page title changed.
None of these need new tools to fix. They need the same checklist applied to every site, and someone who owns it.
Related reading
SEO KPIs for Agencies: What to Report and What to Drop
The SEO KPIs an agency should report are the ones a client can act on. A short list to keep, the vanity metrics to drop, and how to set baselines that hold.
Read more →Content Decay in SEO: How to Spot Pages Losing Clicks Early
Content decay is the slow loss of clicks on pages that used to perform. Catch it early in Search Console, rule out other causes, then refresh, merge or wait.
Read more →SEO Audit Checklist: What to Check, and in What Order
An SEO audit checklist that runs in order: indexing, crawl access, status codes, canonicals, sitemaps, titles, content, links, schema and Core Web Vitals.
Read more →Ready to optimize your search rankings?
XeoRank connects to Google Search Console, analyzes content gaps with AI, and gives you actionable fixes — from the terminal or dashboard.