Foundgrove
← All posts

SEO · 11 min read

How to Build a Topical Map for a Service Business

Summary

A topical map is 30-50 pages, not 400. Here is a complete worked map for one roofing company: every node, the grouping rule, and the publish order.

By Hyder Shah, Founder & CEO · Published July 13, 2026 · Updated July 13, 2026

Most topical-authority advice is unusable if you own a service business. It is either theory written for other SEOs, or a SaaS blog post that ends with 'now build your clusters!' and no number attached. Neither one tells you which pages to write, in what order, or when to stop.

So this post builds one. A complete topical map, on the page, for a single business: a residential roofing company in Columbus, Ohio, selling three services, with an assumed average replacement job of $6,000. Forty pages. You will see every node, the rule for merging two keywords into one page, the publish order, and the stopping rule.

Swap roofing for HVAC, med spa, or personal injury and the shape barely changes. The trade changes the words. It does not change the architecture.

What is a topical map, and why is it not a keyword list?

A topical map is a finite, ordered list of the pages your site needs to own one subject, where each page has a job, a parent, and a publish slot. A keyword list is 4,000 rows in a spreadsheet with no decisions in it.

The difference is that a map already made the hard calls. It says: these nine keywords are one page. This node is a money page, not a blog post. This one gets written in month one; this one waits for month five. This one gets cut entirely.

Ahrefs defines topical authority as search engines recognizing your site as the expert source on a subject, not for individual keywords but for the full range of related queries within a topic — built by covering a subject comprehensively and connecting the content so search engines can see how it relates (Ahrefs, 2026). A keyword list gives you coverage with no connection. The map is the connection.

It also gives you something a spreadsheet cannot: a finish line. Without one, agencies bill you for content forever, because there is always another keyword.

How many pages does a service business actually need?

There is no fixed number, but the honest range is small: Ahrefs puts it at 15-20 well-connected pieces for a specialized niche and 50 or more for a broader subject (Ahrefs, 2026). One local trade in one metro sits at the low end of that. Our worked roofing map comes to 40 nodes.

Forty. Not 400. If someone quoted you a 200-page content plan for a single-city roofing company, they were selling you volume, not authority.

Here is the whole map, by branch:

BranchNodesPage typeExample node
Core services4Money pages + hubRoof replacement, roof repair, storm damage, plus one roofing hub
Money intent (BOFU)9Money pages + postsRoof replacement cost in Columbus; best roofing contractors in Columbus
Problems and symptoms12PostsWater stain on ceiling after rain: what it means
Cost and pricing5PostsWhat a 2,000 sq ft roof costs, line by line
Comparisons6PostsAsphalt shingles vs metal roof for an Ohio winter
Local4Money pagesColumbus, Dublin, Westerville, Hilliard service pages

Notice the ratio. Thirteen of the 40 nodes (the core services plus the money-intent branch) sit within one click of a quote request. That is the whole point of the map: the branch that pays gets finished first, and it gets finished completely.

At an assumed $6,000 average replacement job, one extra signed roof per month is $72,000 a year of new revenue. That assumption is yours to check against your own close rate — but it is why we sequence the map around the money branch instead of the traffic branch.

What is deliberately not in the map matters just as much. No general home-improvement posts. No 'top 10 home renovation trends' filler. No seasonal listicles about spring cleaning. Every one of those would pull a search engine's model of your site away from roofing, and none of them would ever produce a quote request. If a node cannot be traced to a person who might one day pay you $6,000, it does not go on the map.

How do you find the branches — services, problems, costs, comparisons, cities?

Five branches cover almost every local service business, and they come from the buyer's path, not from a tool: what they need (services), what is wrong (problems), what it costs (cost), what to pick (comparisons), and where they are (local).

Fill them from four inputs, in this order of value:

  • Your own sales calls. The questions people ask before they book are the branch. Nobody else has this data.
  • Google autocomplete and People Also Ask for each service term, in your metro.
  • Competitor pages that already rank — not their whole site, just the pages pulling traffic for your services.
  • Search Console queries, once you have any impressions at all, for the questions you already show up for and answer badly.

Do the tool part properly — our keyword research process for service businesses covers the intent filtering, and pulling a competitor's keyword list is the fastest way to find branches you missed. But a branch that shows up in your intake notes and nowhere in a keyword tool is still a real branch. Search volume tools undercount long-tail local questions badly.

Which six page shapes make up the money-intent branch?

Six shapes, and they are the same six for every local service business. If your site is missing three of them, that is your next 90 days of work.

ShapeExample queryNode typeWhat it does
Costroof replacement cost columbusPost linking to the service pageFilters out non-buyers before they call
Best X in citybest roofing contractors columbusPostPuts you in the consideration set you are being compared inside
X vs Ymetal roof vs asphalt shinglesPostCatches the buyer mid-decision, before the quote
How to choosehow to choose a roofing contractorPostSets the criteria you happen to win on (licensed, insured, warranty terms)
Is X worth itis a metal roof worth it in ohioPostHandles the objection that kills the deal
Alternatives to competitoralternatives to [competitor]PostThe highest-intent traffic on the internet, and almost nobody writes it

Here is the part almost no one tells you: this branch is the branch AI search is least likely to eat. Ahrefs analyzed 146 million search results pages and found AI Overviews trigger on just 4.3% of commercial-intent and 2.1% of transactional-intent keywords, versus 21.4% of informational keywords (Ahrefs, September 2025 data). Question-shaped queries trigger one 57.9% of the time.

Read that as an operator. Your informational branch — the blog posts — is where the AI answer box sits between you and the click. Your money branch mostly still gets a plain blue link. So the money branch is where clicks are, and the informational branch is where citations are. Both are worth building. They are not worth building in the same order.

This is exactly why we treat SEO, GEO, and AEO as one program rather than three invoices. The map is one map; the branches just get judged on different scoreboards.

How do you know when two keywords need one page instead of two?

Use the SERP-overlap rule: open the top 10 results for both keywords, and if three or more of the same URLs appear in both, Google is already treating them as one question — so one page serves both. If the top 10s barely overlap, they are two pages.

It takes 90 seconds per pair and it settles arguments that would otherwise burn a week. 'Roof repair cost' and 'roof replacement cost' look like siblings; check the results and they usually are not, because one is a $600 decision and the other is a $6,000 one. Meanwhile 'roof leak repair' and 'fix a leaking roof' are the same page wearing two hats.

Ahrefs gives the same instruction from the quality side: if two subtopics are closely related and neither has enough depth to stand alone, combine them into one piece rather than publishing thin content that weakens the cluster (Ahrefs, 2026).

The rule also protects you from the most common self-inflicted ranking problem in service-business SEO: two of your own pages competing for the same query, splitting the links and the relevance signals between them, and neither one winning. Merging them into a single stronger page is almost always the fix, and it is free.

Two more merge triggers worth knowing:

  • Same intent, different words. Synonyms, plurals, and 'near me' variants are one page. They are not a content plan.
  • Not enough to say. If you cannot write 800 non-padded words that a customer would actually find useful, it is a section, not a page.
  • One exception: a keyword that maps to a distinct service you actually sell always gets its own page, even if the results overlap. Google's clustering is not your pricing sheet.

In what order should you publish the map?

Finish the money-intent branch to completeness before you widen — in the roofing map, that is 13 of the 40 nodes, and it should be your first two to three months of publishing. Depth in the branch that converts beats breadth across the branches that do not.

The sequence we would run:

  • Phase 1 (weeks 1-4): the hub plus three service money pages. These are the pages every other node will link into. Get them right first — see our on-page playbook for service and location pages.
  • Phase 2 (weeks 4-12): all nine money-intent nodes. Every one of the six shapes, no gaps.
  • Phase 3 (months 3-5): the 12 problem and symptom posts. This is your AI-citation branch and your top-of-funnel.
  • Phase 4 (months 5-6): cost deep-dives and comparisons — 11 nodes.
  • Phase 5 (month 6+): the four local pages, only after the service pages are indexed and ranking for something.

On timing, be realistic. Ahrefs' own guidance is 6-12 months before significant movement: roughly three months to establish coverage, months four to six for initial ranking improvements, and six to twelve for compounding gains (Ahrefs, 2026). Anyone promising you a completed map ranking in 60 days is guessing, and anyone guaranteeing the ranking itself is lying.

What you should demand instead is a kill switch. If a channel produces no qualified leads in 90 days, it gets cut and the budget moves. A map is a plan, not a religion.

When is a topical map finished — and why does publishing past it hurt?

A map is finished when every question a buyer asks between 'my ceiling is stained' and 'I signed a contract' has exactly one page — for our roofing example, all 40 nodes published and interlinked. After that, the next post is not neutral. It can cost you.

Google's own helpful-content guidance lists this as a warning sign, in plain words: 'Are you producing lots of content on many different topics in hopes that some of it might perform well in search results?' It also asks whether your site has a primary purpose or focus (Google Search Central, 2025).

Ahrefs points at the mechanism. Signals surfaced in Google's 2024 API leak include a site focus score (how concentrated your content is around a core subject) and a site radius (how far it strays) — and publishing content outside your core topic may actively dilute your authority signal rather than just fail to strengthen it (Ahrefs, 2026).

Translated: a roofing company blogging about home office design is not building authority. It is smearing the site's topical center away from roofing. The test is simple — would a first-time visitor landing on that page immediately understand what your business is?

Once the map is complete, the work changes shape. You refresh instead of publish. Ahrefs' refresh triggers are the right checklist: traffic drops from its peak, a stat you cite gets superseded, a product you reference changes, a competitor ships a better version of your page, or you fall out of an AI Overview you used to appear in.

How do you link the map together so it behaves like one entity?

Three link rules, and they cover every node: every cluster page links up to its hub, the hub links down to every cluster page, and sibling pages covering adjacent subtopics cross-link. A page with zero internal links pointing at it is invisible, no matter how good it is.

Anchor text does real work here. 'Click here' tells Google nothing; 'roof replacement cost in Columbus' tells it exactly what the target page is about. Descriptive anchors are free relevance, and most service-business sites throw them away. The full mechanics are in our guide to internal linking for service-business sites.

Link direction matters as much as link count. Informational nodes link down into money pages; money pages link across to each other; the hub links to everything. Traffic arrives at a problem post and gets walked toward a quote request. That is the funnel, built out of internal links instead of pop-ups.

There is an AI-search reason too. Google confirms that AI Overviews and AI Mode use a query fan-out technique — issuing multiple related searches across subtopics to build a single answer (Google Search Central, 2025). The more subtopics your cluster covers and connects, the more of those fan-out sub-queries you can turn up in. Completeness is the GEO play, not a keyword trick.

If you want the map built for your trade rather than a roofer's, that is the first thing we do inside our SEO engagement — and for roofing specifically, SEO for roofing contractors shows what the finished branch looks like. Month to month, no lock-in, and you keep the map either way. Get my free audit.

Where does this fit in your stack?

If you're running a US service business, the playbook in this post pairs with our full services lineup and applies cleanly across our supported industries and US locations. If you want help implementing it, book a free strategy call — we'll review your current setup and prioritize the next three moves.

For the deeper engagement details, see our SEO service. New to the terminology here? Our SEO & marketing glossary defines every acronym in this post.

What are the most common questions about this topic?

Common questions readers send us about this topic.

What is the difference between a topical map and a content calendar?

A topical map defines what pages must exist and how they connect. A content calendar defines when each one gets written. The map comes first and is finite — for a single-trade local business it is usually 30 to 50 nodes. The calendar is just the map dropped onto dates. Most agencies sell you a calendar with no map behind it, which is how you end up publishing forever with no finish line.

How many pages do I need to build topical authority?

There is no fixed number. Ahrefs puts the working range at 15 to 20 well-connected pieces for a specialized niche and 50 or more for a broader subject. A single trade in a single metro sits near the low end — our worked roofing map is 40 nodes, including money pages. The better question is whether your coverage of the topic is more complete than the competitor currently outranking you.

Should I write the pillar page first or the cluster posts first?

Pillar and service pages first. They are the pages every cluster post will link into, so building them last means retrofitting links across dozens of posts. Publish the hub and your core service money pages in the first month, then work outward into the money-intent branch. The one exception is if a service page already ranks and converts — then leave it alone and build the cluster around it.

How do I know if two keywords should share one page?

Open the top 10 results for both keywords and count the overlapping URLs. If three or more of the same pages rank for both, Google is treating them as one question and one page should serve both. If the results barely overlap, write two pages. Ahrefs makes the same call from the quality side: if neither subtopic has enough depth to stand alone, combine them rather than shipping thin content.

Does a bigger topical map always mean more authority?

No, and past a point it goes the other way. Google's helpful-content guidance flags producing lots of content on many topics in the hope some of it performs as a warning sign. Ahrefs notes that signals from Google's 2024 API leak include a site focus score and a site radius, and that publishing outside your core topic may actively dilute your authority rather than add to it. Complete the cluster, then stop and refresh.

Where do city pages fit into a topical map?

Last, and fewer than you think. Build the service pages and the money-intent branch first, get them indexed and ranking for something, then add city or suburb pages for the areas you actually serve. Four real service-area pages with distinct content beat 40 templated ones with the town name swapped — those get treated as thin duplicates and drag the whole site's quality signal down with them.

How long does it take to see results from completing a cluster?

Ahrefs' guidance is 6 to 12 months before significant movement: roughly three months to establish coverage, months four to six for initial ranking improvements, and months six to twelve for compounding gains. On a brand-new domain, assume the slower end. We would not promise a ranking on any timeline — but we would cut a channel that has produced no qualified leads in 90 days rather than let it coast.

Do topical map generator tools work?

They are fine for the first draft and useless for the last one. A generator can cluster keywords and propose branches in minutes. What it cannot do is know that you stopped selling metal roofing, that your best jobs come from one suburb, or which objection kills half your quotes. Take the generated list, apply the SERP-overlap rule, cut anything outside your core topic, and re-order it around the money branch.

About the author

Hyder Shah

Founder & CEO, Foundgrove

Hyder Shah is the founder of Foundgrove, an SEO and GEO agency for US service businesses. See our editorial policy for how these guides are researched and reviewed.

Related reading

Other tactical pieces from the Foundgrove blog.

Want help applying this to your business?

Book a free 30-minute call. We'll review your current acquisition stack and show you the three highest-leverage moves for your industry and state. Or read how our SEO service works.

Free SEO & AI visibility auditGet my free audit