ARTICLE
The client was already established. Ten years in business, a strong reputation locally, good client retention, and a steady referral stream. The business was not struggling. But something was off with new client acquisition.
When we pulled up their Google Search Console data, the answer was immediate. Their website was effectively invisible outside their home city. Competitors with weaker portfolios were showing up for the exact services this agency offered, in cities 40 minutes away. The problem wasn't the quality of their work.
It was geography.
The Agency Served 26 Cities. Their Website Mentioned 1.
Their homepage said something like: "we work with businesses across the region." A single line. Accurate, but useless for search.
Google doesn't rank territories. It ranks pages. If you want to appear when someone in Nîmes searches for "web agency Nîmes," you need a page specifically about web agency services in Nîmes. A homepage that vaguely covers the south of France won't compete with a smaller competitor who has a dedicated page for that exact query.
This sounds obvious when written out. In practice, most agencies and local businesses have never done it, because it requires producing a significant amount of content that isn't quite a blog post and isn't quite a service page. It's something in between: pages that are genuinely useful to someone searching from a specific location.
The Approach: City × Service = Dedicated Page
For each city the client served and each core service they offered, we built a dedicated page. Each one answered the same basic questions a potential client would have: What exactly is this service? How does it work here? Why choose this agency over a local alternative? What does the process look like?
The content was not a template with a city name swapped in. Google has been explicit about filtering pages that offer no additional value beyond name substitution. Each page needed to earn its place: a mention of local context, a reference to actual work in that area, or a service angle relevant to businesses in that specific city.
The internal linking was built intentionally. The homepage linked to a hub page for each major city. Each hub linked to the service-specific pages beneath it. This gives Google a coherent map of the site's geographic and topical coverage, rather than a flat list of unrelated pages.
What the Data Looked Like After 90 Days
The domain was under 1 year old, which means Google approached it with standard caution. Indexation doesn't happen overnight.
But it happened steadily.
Over 90 days, Google indexed 74 pages across the city-and-service structure we built. Total crawl requests reached 1,160, with a clear upward trend across the period. The most significant signal came as a spike at the end of the third month: over 120 crawl requests in a single day, immediately following an update to the site's internal linking structure. That's Googlebot responding to changes, which is exactly what you want to see.
Pages indexed when we started: 0.
Pages indexed after 90 days: 74, still growing.
Why This Takes Longer Than It Should
The honest answer: Google indexes new pages slowly on domains it doesn't yet fully trust. Three months in, this client still has pages in the crawl queue that haven't been evaluated. The trajectory is positive, but patience is required.
This is the trade-off versus paid ads, where the same geographic coverage can be activated in an afternoon. SEO is slower to build and slower to maintain. But for this type of business, the long-term economics still favor it. Once a page ranks, the lead it generates costs nothing. Once the ads stop, so do the leads.
We've seen the same pattern in other sectors. A home services company we worked with went from €1,000 to €10,000 a month over 24 months using the same underlying logic: dedicated service pages, local targeting, zero dependency on referrals or ad spend. The geography problem isn't unique to web agencies. Any local business with a service area has it.
Three Takeaways
1. Google ranks pages, not territories. Saying your business covers a region on your homepage doesn't help you rank in that region. You need a page per location, or close to it. The search engine isn't going to infer coverage from a sentence.
2. The content has to add real value per page. Swapping a city name into a template is a shortcut, not a strategy. Google is increasingly effective at identifying pages that exist for SEO reasons rather than user reasons. Each page needs a genuine reason to be there.
3. Internal linking is the multiplier. City pages that exist in isolation underperform compared to pages connected to a logical hub structure that Google can navigate. The architecture matters as much as the content on each individual page.
Key Facts
- 74 pages indexed in the first 90 days, starting from zero on a sub-1-year-old domain
- 1,160 crawl requests over that period, with an accelerating trend toward the end
- 26 cities targeted across the site structure, versus 1 that Google previously recognized
- 0 paid ads used — all organic, all driven by page structure and internal linking
- Timeline: results are visible in 3 months but typically stabilize over 6 months
FAQ
Does this only work for web agencies?
No. Any local service business with a geographic coverage area benefits from this approach: law firms, accountants, tradespeople, clinics, consultants. The model is the same. People search from their location, so your pages need to speak to their location.
How many pages do you actually need?
It depends on how many cities and services you're targeting. If you serve 10 cities with 5 core services, that's potentially 50 pages to build and maintain. Not all of them will be worth the investment. Prioritize cities where you already have clients or strong local demand, and expand from there.
Isn't this just SEO?
Yes. But "local SEO" is a term that often gets reduced to optimizing a Google Business Profile. The city-and-service page structure sits above that, and most small businesses and agencies have never implemented it properly.
How long before results appear in Google?
On a newer domain, expect 3 to 6 months before meaningful rankings. An established domain with existing authority would move faster. The 74-page indexation above came from a domain under 1 year old.
What's the risk?
The main risk is producing low-quality pages at scale. If the content per page isn't genuinely useful, Google will eventually filter it out. The pages need to earn their place in the index, not just occupy it. Quality over volume is the only version of this that works long term.
Enzo Marcelle is the founder of Celestia Studio, a Webflow agency based in the south of France. We build local service businesses a Google presence that covers every city and service they should be ranking for, not just the one on their homepage. Free local visibility audit.
Top comments (0)