Skip to main content

Location-specific landing pages exist for service areas

ab-001775 · marketing-local-seo.local-content.location-landing-pages
Severity: mediumactive

Why it matters

A multi-area business served by a single homepage competes for every [service] in [city] query with one generic page, which loses to competitors who operate a dedicated page per service area. Google's local ranking weighs on-page geographic relevance; without per-city content it has nothing to match against long-tail local queries. The findability taxon applies directly — the pages that do not exist cannot rank, and the homepage cannot rank for cities it never mentions.

Severity rationale

Medium because the business still ranks for its primary city but forfeits organic traffic from every surrounding service area.

Remediation

Create a dynamic route at app/locations/[city]/page.tsx that generates a unique page per service area from a data source. Each page needs genuinely local content — neighborhood names, local projects, area-specific pricing — not a templated page with only the city name swapped. Thin duplicates are treated as doorway pages and demoted.

export async function generateStaticParams() {
  return cities.map((city) => ({ city: city.slug }))
}

Detection

  • ID: marketing-local-seo.local-content.location-landing-pages
  • Severity: medium
  • What to look for: Check the routing structure for location-specific pages. Look for route patterns like /[city], /locations/[city], /service-areas/[region], or static pages like /austin, /dallas, /chicago. Also check for a dynamic route that generates location pages from a data source. Count how many distinct location routes or location-specific pages exist.
  • Pass criteria: Count all location-specific pages or routes found. The project must have at least 1 dedicated location-specific page (beyond the homepage) that targets a specific city or service area, OR it serves only 1 location and the homepage is itself location-specific.
  • Fail criteria: The project serves multiple locations or service areas (inferable from content or config data) but has no dedicated location-specific pages — all areas are handled by a single generic page.
  • Skip (N/A) when: The business has only one location and the homepage is already location-specific (passes the local-keywords-meta check), or whole-audit N/A rule applies.
  • Detail on fail: "Site content references multiple service areas but no dedicated location pages found. All areas share a single generic page with no location-specific content or metadata." or "No location-specific routing found — consider /locations/[city] for each service area"
  • Remediation: Dedicated location pages allow you to rank for "[service] in [specific city]" queries for each city you serve. A single homepage targeting your primary city will not rank well for surrounding areas. Create individual pages for each major service area using a dynamic route (e.g., app/locations/[city]/page.tsx). Each location page needs unique content — do not create thin pages that only swap the city name. Include local details that make each page genuinely useful to someone in that area.

Taxons

History