Start in Search Console’s Crawl Stats to identify which URL patterns Google actually requests most — that shows where crawler time is going and whether action is likely to help. For true duplicates use rel=canonical or a 301 redirect; use a meta robots tag or an X‑Robots‑Tag noindex when you want pages crawled but not indexed; and reserve robots.txt blocking for non‑user resources. Apply changes first to a small set of patterns and verify the effect with URL Inspection and Crawl Stats rather than editing robots.txt immediately.
Contents
Decide whether crawl‑budget work is needed
Most small shops never need bespoke crawl‑budget changes. Only invest time on this when Search Console Crawl Stats or your server logs show repeated crawling of low‑value URLs that coincides with observable problems (eg. high host CPU, slow responses, or a business impact). Read Google’s crawl‑budget overview to understand when it matters: Google: Crawl budget. We also cover practical fixes for faceted navigation and filters that commonly produce low‑value duplicate URLs in this guide: seenscope.com/faceted-navigation-canonical-and-indexing/.
Find the frequently crawled URL patterns
- Open Search Console → Settings → Crawl stats. The report lists example URLs and which Googlebot types requested them; look for repeated patterns (query‑string filters, session parameters, internal search URLs). Crawl Stats report.
- Use the Coverage/Pages report to check whether those patterns are indexed, excluded or show errors; from Coverage you can open URL Inspection for representative URLs to learn why a page is indexed or not. Coverage and URL Inspection.
- Export or copy a short list of representative URLs (10–30 rows is usually enough) so you can classify them without hunting through logs each time.
Classify patterns and pick the least‑risky control
For each repeated URL pattern record its business value (high, medium, low):
- High value: product pages, category landing pages, important content/landing pages.
- Medium: filtered category views you sometimes want indexed (shared links, curated subsets).
- Low value: internal search results, cart/session URLs, faceted combinations that add little beyond the parent page.
Choose controls in this order of safety and intent:
- rel=canonical or 301 redirect for true duplicates — point search engines to the canonical resource. Use WordPress helpers or your SEO plugin rather than ad‑hoc tags where possible: WordPress rel_canonical and wp_get_canonical_url().
- Meta robots noindex (or X‑Robots‑Tag header) when the page should be reachable and crawlable but not indexed. Follow Google’s syntax and header examples when adding X‑Robots‑Tag server headers. Robots meta tag and X‑Robots‑Tag.
- Robots.txt blocking only for resources that must never be crawled (internal admin endpoints, staging assets). Remember: if you block a URL in robots.txt Google can’t read its meta tags, so don’t use robots.txt on pages you plan to noindex. Robots.txt and noindex interaction.
Implement conservatively and verify
Implement changes incrementally and verify each change via Search Console and your logs:
- Apply the least‑risky fix first to a small set of patterns (for example, add rel=canonical on faceted URLs that are true duplicates).
- If you use noindex, add it to the page head or send an
X‑Robots‑Tag: noindexheader for non‑HTML resources; prefer an SEO plugin or your platform’s filter to editing every template. Google’s docs show header examples. Robots meta tag. - Avoid blocking in robots.txt pages you will noindex — crawlers blocked by robots.txt cannot see the meta noindex directive. Robots.txt interaction.
- After changes, use Search Console → URL Inspection on representative URLs and request a re‑test (or use the “Test Live URL” option) to confirm the new signal is visible to Google. URL Inspection.
- Monitor Search Console Crawl Stats and Coverage over the next 7–30 days for reduced crawl frequency on the low‑value patterns and expected indexation signals; also check host logs if you have access to confirm fewer Googlebot requests.
Quick decision table
Use this as a shorthand when you already know the pattern’s business value.
rel=canonical / 301 redirect
When to use: True duplicate URLs that should resolve to one canonical page.
Key caution: Ensure the canonical target is correct; redirects change user experience and require testing.
meta robots noindex / X‑Robots‑Tag
When to use: Pages you want discoverable (so links still work) or crawled but not indexed.
Key caution: Do not block these URLs in robots.txt; Google must be able to crawl to see a noindex. See Google’s robots meta tag docs: Robots meta tag.
robots.txt blocking
When to use: Non‑public or admin resources you never want crawled.
Key caution: Blocked pages can’t be inspected for meta tags; use robots.txt sparingly and only for non‑user resources. See: Robots.txt interaction.
Quick copyable examples
Sample meta tag for an HTML page (add to <head>):
<meta name="robots" content="noindex,follow">
Sample X‑Robots‑Tag header (Apache):
Header set X-Robots-Tag "noindex, follow"
Sample X‑Robots‑Tag header (Nginx):
add_header X-Robots-Tag "noindex, follow";
Note: when applying headers for specific file types or paths you will usually add conditional rules. Prefer your platform’s documented method (plugin, middleware or host UI) over hand-editing server configs unless you control the environment and can test safely.
Imagined example and how to check results
Here is a short, hypothetical example to make the steps concrete (this is an illustrative scenario, not an observed test):
- Find the pattern. In Search Console → Crawl Stats you see many requests for URLs like
/category/shoes?color=red&size=10&sort=priceand similar combinations. Export several representative examples. - Classify the pattern. Decide these faceted combinations are low value — the parent category page already contains the canonical product listings and these parameter combos add little for discovery.
- Choose the least‑risky control. If the faceted pages are near‑duplicates of the category page, add a
rel="canonical"to point to the category URL. If instead you want the pages crawled for link equity but not appear in search, add a meta robotsnoindex,followto just those templates. - Apply to a small set. Implement the canonical or meta tag on a subset (for example, faceted pages that include a ‘session’ parameter or specific sort parameters) and deploy to a staging copy first.
- Verify the signal. Use URL Inspection on a representative URL: the tool should show the live test reading the page and report the current directive (for canonical it shows the canonical picked; for noindex it shows the meta tag). Then request indexing of that URL (or Test Live URL) to ensure Google can see the change. Keep a record of the inspected URLs and their previous/expected state.
- Monitor Crawl Stats and host logs. Over the next 7–30 days watch for a reduction in requests for the low‑value patterns in Search Console and your server logs. If you control the host logs, compare Googlebot request counts for the affected patterns before and after the change. Expect changes to be gradual—do not assume an immediate disappearance.
What to look for in Search Console and URL Inspection (your own checks):
- URL Inspection (live test) shows the page and the new meta or canonical directive.
- Coverage shows an updated status for the inspected URL after Google re‑crawls (if you applied noindex you may see it moved to an excluded state over time).
- Crawl Stats shows fewer example requests for the previously noisy patterns; host logs (if available) corroborate this.
Don’t expect exact timing guarantees. If you need stricter control over what Google never sees (staging assets, admin endpoints), use robots.txt blocking but only for resources that must never be crawled.
Related guides
Further reading that helps with the implementation and verification steps (titles and short paths shown):
- Faceted navigation & filters — seenscope.com/faceted-navigation-canonical-and-indexing/
- rel=canonical vs 301 — seenscope.com/canonical-on-product-migrations/
- Product structured-data checks — seenscope.com/validate-product-markup-rich-results-test/
- WordPress backup & restore — seenscope.com/wordpress-backup-restore-checklist/
Immediate action: Pick one noisy URL pattern you found in Crawl Stats (export 10–30 examples). On a staging site, apply the least‑risky control to a small sample — for true duplicates add rel="canonical" to point to the parent page, or add a meta robots tag for ephemeral URLs (for example <meta name="robots" content="noindex,follow">). Use Search Console → URL Inspection → Test Live URL to confirm Google sees the directive, then monitor Search Console Crawl Stats and your host logs for 7–30 days to verify fewer Googlebot requests. See related guides: Faceted navigation & filters and rel=canonical vs 301.

