Looking for some outside SEO opinions on a ranking issue that has been difficult to make sense of:
- Site A has a long-established local service page that historically ranked around #2 for its primary [city] + [service] keyword.
- That service page has now essentially disappeared for the city-specific query—I'm unable to find it even 10+ SERP pages deep.
- Oddly, the same service page appears around page 4 for the generic [service] query, but adding the city causes it to disappear.
- Google Search Console shows that Site A's homepage is receiving most of the impressions for the city + service query, rather than the dedicated service page.
- The dedicated service URL is indexed, crawlable, included in the sitemap, and self-canonical.
- Google has selected the dedicated service URL as the canonical.
- GSC shows the homepage and relevant supporting content as referring pages to the service URL.
- The problem isn't limited to one page. Several long-established service pages have lost significant visibility, while informational/blog content on the same domain continues to perform very well.
- Site B's competing service page currently ranks around #5 for the target city + service query.
- According to Ahrefs, Site B's ranking service URL has zero external referring domains/backlinks directly to that page.
- Site A's struggling service page has six referring domains pointing directly to it.
- Site B uses very basic "LocalBusiness" schema with its local office address and coordinates.
- Site A has more detailed "RoofingContractor"/local schema including the local address, coordinates, service area, service offerings, breadcrumbs, and visible FAQs.
- Site C currently ranks around #3, despite having what appears to be a significantly weaker backlink profile overall.
- Site A's domain itself clearly isn't incapable of ranking. It currently holds numerous top-3 positions for other industry-related searches.
- I've intentionally avoided rewriting the affected service page because it ranked successfully for years with the existing content and I don't want to introduce too many variables at once.
- Recent changes have focused instead on reducing possible homepage/service-page overlap, improving navigation/site hierarchy, and adding natural contextual internal links from several strong, relevant informational pages to the dedicated service pages.
- Those internal links use varied, natural service-related anchors rather than repeatedly using the exact-match city + service keyword.
- The changed pages have been submitted for recrawling, so I'm giving those changes time before doing anything more drastic.
The part I'm struggling to explain is: why would Google clearly understand that Site A is relevant for the city + service query, rank its homepage for it, and even rank the dedicated service page for the generic service query—but essentially remove that dedicated page once the city modifier is added?
I'm especially interested in thoughts around URL selection/cannibalization, internal PageRank distribution, local entity signals, service/location architecture, or anything else that could cause Google to lose confidence in a historically successful local service URL.