url.uppercase
The page's URL path has uppercase letters. Google treats /Page and /page as two URLs, so links that differ in case split signals or end in a 404.
What to change
Use lowercase paths for new pages, and redirect (301) other spellings of the path to the one you keep. Do not rename URLs that are already indexed or linked to only for this: a rename needs a 301 redirect from every old URL and resets what search engines know about the page. Apply it to new URLs.
The documentation on developers.google.comA finding of this rule on a page carries the exact edits for that page: the markup it quotes, and what to write instead.
When it runs
Runs on every SEO audit: of a page, a crawl, a build directory or HTML. Info is a best practice: worth doing, rarely urgent, and --no-info leaves it out. Each finding takes 1 point off the page's score.
The severity here is the rule's usual one: a finding can be raised or lowered when the page gives a reason.
Run it, or skip it
Check a page for this rule alone, after a fix for instance:
npx @rivi-software/agentic-seo-check audit https://example.com --rule url.uppercase
Or from an assistant, with the MCP tool seo_audit_page:
{
"url": "https://example.com",
"rules": [
"url.uppercase"
]
}
To leave it out of an audit, pass --disable url.uppercase on the command, or disableRules: ["url.uppercase"] to a tool.
More in Links
All 13 rules- Info
links.uncrawlable-hrefAnchors whose href is "#", empty, or a javascript: URL. Crawlers cannot follow them. - Warning
links.hash-routeInternal links whose fragment is a route ("#/products", "#!/products"). Google ignores the fragment, so it cannot reach these views as pages of their own. - Warning
links.insecure-internalInternal links use http:// while the page is served over https://. - Info
links.nofollow-internalInternal links carry rel="nofollow". - Info
url.underscoresThe page's URL path separates words with underscores; Google recommends hyphens. - Warning
url.session-idThe page's URL or its internal links carry a session id (jsessionid, PHPSESSID, sid), so every visit creates new URLs for the same content. - Info
links.tracking-parametersInternal links carry campaign tracking parameters (utm_*, gclid, fbclid), which make crawlers fetch duplicate URLs and overwrite the visit's real traffic source in analytics. - Error
links.local-hostA public page's canonical, og:url, og:image, hreflang, images or scripts point to localhost, a .local or .test host, or a private network address, which work only on the developer's machine (error). Only <a> links there is info: a setup guide may mean them.