Skip to main content
    SEO & Marketing

    Topic clusters in your blog: how to build SEO content without cannibalisation

    How we plan topic clusters, divide them into individual blog posts, link them properly and check for cannibalisation in Search Console, with real examples from client projects.

    of Josef KujawskiUpdated: 17 September 202610 min read2.514 Words
    Topic clusters in your blog: how to build SEO content without cannibalisation
    Short answer
    A topic cluster consists of an overview article (hub) plus four to eight detailed articles (spokes), each covering exactly one search intent. You avoid cannibalisation by assigning each URL exactly one focus keyword and ensuring intents never overlap. Hubs and spokes are consistently linked in both directions, and every article is server-side rendered and delivered with a short answer, an FAQ and structured data. Finally, every new article must be added to the sitemap and submitted for indexing through Google Search Console.
    Topic islands as an isometric map with a hub and satellites for SEO content clusters
    Three clearly separated topic islands: each has a centre and its own subtopics.

    What is a topic cluster, and why is a single article not enough?

    A topic cluster is a clearly defined subject area that you cover comprehensively through several pieces of content: a central overview article (hub) plus several detailed articles (spokes), each answering exactly one specific question. Google has long stopped assessing individual pages in isolation and instead considers how well a domain covers a topic as a whole.

    The classic mistake: you write five articles that all cover “something to do with web design". Each addresses 70 per cent of the same search needs. Google has to decide which article is the best match for the query, finds no clear answer and gives all five mediocre rankings. This is keyword cannibalisation: your own pages compete with each other instead of complementing one another.

    ApproachStructureResult after 6 months
    Standalone articles without a plan10 posts, all broadMany pages in positions 20 to 50
    Topic cluster1 hub + 6 spokes, each with 1 search intentHub ranks for the head keyword, spokes for long-tail queries
    Long-tail only, without a hub8 detailed posts, no centreTraffic, yes, but no topical authority

    Kernaussage
    A topic cluster is not about content volume, but a division of responsibilities: each article gets exactly one search intent that no other article serves.

    How do you divide a topic cluster into individual blog posts?

    At Maluure, we always follow four steps.

    1. Define the subject area. A subject linked to a service. For example: “having a website built". Not “marketing", which is not a subject area but a continent.
    2. Gather search intents. Keyword research plus the actual questions raised in client conversations. What matters is the intent behind the keyword, not search volume alone: finding information, comparing options, asking about prices, intending to buy.
    3. Group the intents. Everything that calls for the same answer belongs in ONE article. “How much does a website cost" and “website prices" do not warrant a second post. They are the same post with two keywords.
    4. Define the hub and spokes. The hub answers the broad question and links to the details. Each spoke explores exactly one aspect in depth that the hub only touches on.
    Hub-and-spoke diagram of a topic island with one overview article and six in-depth articles
    A hub in the centre, six spokes around it, plus cross-links between articles on related topics.

    How many articles belong in a topic cluster?

    In our experience: one hub and four to eight spokes. Fewer than four feels thin and does not build authority. More than eight almost always means you have packed two clusters into one, or that intents overlap.

    We do not write an article unless we can say in one sentence which question it answers and which other article does NOT answer that question. If we cannot do that, it is not a new article, but a missing paragraph in an existing one.
    Josef Kujawski, Geschäftsführer Maluure GmbH

    How do you prevent keyword cannibalisation in practice?

    Cannibalisation does not arise from similar topics, but from identical search intents on two URLs. These are the rules we follow:

    • One focus keyword per URL. Secondary keywords are fine, but only those that call for the same answer.
    • Clearly differentiated titles and H1s. If two titles sound interchangeable, you have one article too many.
    • Regular checks. Use site:deinedomain.de keyword to check which URL Google selects for a keyword. If the URL keeps changing, you have a cannibalisation problem.
    • Consolidate overlaps rather than deleting. Incorporate the weaker article into the stronger one and set up a 301 redirect. Link equity is preserved.
    • Do not let category or tag pages be indexed if they show the same content in a different order.
    Comparison of overlapping articles and clearly separated articles with a shared hub
    Left: four articles with overlapping search intent. Right: the same four articles, clearly separated and aligned with a single hub.

    How do we structure each blog post?

    In short: a brief answer at the top, clear H2 questions, tables and lists for featured snippets, genuine quotes and practical examples as trust signals, and sources for figures. We deliberately do not cover this here, but in a separate article, because it fills an entire chapter on its own: E-E-A-T, quotes, evidence, structure and tone. It will be the next spoke in this topic cluster.

    For this article, one rule is enough: the post answers its own question completely, but does not answer another article’s question along the way.

    What is the best way to present articles on your website?

    Content alone is not enough. How it is delivered matters too. Our standard approach:

    • Server-side rendering. The full article text is in the HTML before JavaScript loads. Crawlers and AI systems see the content immediately.
    • One H1 per page, taken from the article title. All subheadings are H2 or H3.
    • A short answer block right at the top. LLMs such as ChatGPT or Perplexity tend to cite compact answer blocks at the start of a text.
    • Structured data: Article, FAQPage and BreadcrumbList as JSON-LD, generated automatically from the article data.
    • A table of contents with anchor links, which Google can display as sitelinks.
    • WebP images with meaningful alt text and fixed dimensions to prevent layout shifts.
    • An author box with the person’s name, role and subject expertise as an E-E-A-T signal.
    • A correct canonical tag and a sitemap containing only published articles.

    Kernaussage
    An excellent article delivered poorly on a technical level ranks worse than a solid article that is properly rendered, structured and fast.

    Internal linking is the glue that holds a topic cluster together. Without it, you have a collection, not a cluster.

    LinkDirectionPurpose
    Hub to spokeDownwardsDistributes authority to the detailed articles
    Spoke to hubUpwardsTells Google which URL leads the topic
    Spoke to spokeSidewaysOnly where the topics are genuinely related
    Article to serviceCommercialGuides readers to the next step

    Practical rules: two to five internal links per article, anchor text that describes the destination and contains its focus keyword, never “click here". Every new spoke immediately gets at least one link from an existing, already indexed article. Otherwise, it remains an orphan that Google finds late or not at all.

    Practical example: our own “having a website built" topic cluster

    We tested this structure on our own blog. The hub is How much does a website really cost. It connects to spokes such as A fixed-price website, Website leasing and website subscriptions, Web designers for small businesses and Having a website built in Cologne. Each of these articles serves a distinct intent: pricing model, financing, target audience, region. All link back to the hub and onwards to our Maluure-Page™ service.

    The effect is exactly as described: the hub attracts the broad pricing query, the spokes capture long-tail searches, and none of the articles displaces another because the questions do not overlap.

    Which SEO practices should be part of every post?

    • A meta title under 60 characters with the focus keyword at the start, a meta description under 160 characters with a specific benefit.
    • A short, descriptive slug, without a date or filler words, which you never change afterwards.
    • Update rather than write from scratch. A revised article with an updated modification date almost always gains traction faster than a new one.
    • An FAQ at the end with six to ten genuine questions, also output as FAQ schema.
    • Keep an eye on Core Web Vitals: load time, layout stability and response time are measurable ranking factors [1].
    • Take accessibility seriously: contrast, alt text, focus states. What works well for screen readers also works well for crawlers.
    • Do not publish thin articles just to maintain a publishing frequency. Google assesses helpful content, not publishing schedules [2].

    How do you make sure the articles get indexed?

    The most commonly overlooked step: a published article is not automatically an indexed article. We work through this list after every publication.

    1. Check the sitemap. The new article must appear in sitemap.xml, with the correct absolute URL.
    2. Use URL Inspection in Google Search Console. Enter the specific article URL in the search field at the top and run the live test.
    3. Request indexing. If you see “URL is not on Google", click “Request indexing". This is no guarantee, but it significantly speeds up discovery.
    4. Add internal links before requesting indexing. Google follows links, not intentions.
    5. Check again after seven to fourteen days. If the URL still shows “Discovered, currently not indexed", this is almost always a quality or duplicate-content signal, not a technical error.
    6. Monitor the performance report. As soon as impressions appear, you can see which queries Google associates with the article. If they do not match the planned intent, the article’s scope is not clearly defined.

    How do you check for cannibalisation in Google Search Console?

    Cannibalisation is not guesswork. It is measurable. The process takes ten minutes, and we run it once a quarter for every client blog.

    1. Open the performance report and set the date range to the last three months.
    2. Filter by a search query that belongs to your topic cluster.
    3. Switch to the “Pages" tab. You can now see which URLs appear for that exact query.
    4. Two or more URLs with impressions? Your pages are competing. One URL with impressions is the norm; anything above that is a signal.
    5. Review positions over time. If the ranking URL switches back and forth over the weeks, Google is unsure which page provides the best answer.
    6. Make a decision and document it so that nobody writes the same article again in six months.
    Decision tree for keyword cannibalisation with three options: merge, split and 301 redirect
    Three ways out of cannibalisation. The right one depends on whether the two articles genuinely serve two distinct search intents.
    FindingDecisionImplementation
    Two articles, one search intent, one significantly strongerMergeIncorporate the content into the stronger article and 301-redirect the weaker one
    Two articles, two clearly different intents, poorly separatedSplitSharpen the scope of both articles, remove overlaps, clearly differentiate titles and H1s
    Old URL with no purpose of its own, little content301Redirect to the appropriate hub or spoke without creating a replacement
    Both articles weak, neither ranksRedefine scopeReplan the topic cluster and turn two thin articles into one substantial piece

    Kernaussage
    Not every duplication is a mistake. Only intervene when two URLs receive impressions for the same query and their positions fluctuate.

    What does a topic cluster look like in practice?

    Two examples from our ongoing work: one from content operations, one from technical implementation.

    Practical example: ZOO Event, local visibility for event venues in Cologne

    For our client ZOO Event, the catering and events partner at Kölner Zoo, we continually expand the blog around pillar topics. The cluster is not called “blog", but “events in Cologne". The hub covers the broad question of event planning in Cologne, while the spokes break it down into the exact searches people actually enter: planning a Christmas party in Cologne, a team event at the zoo, a corporate event in Cologne.

    Each of these articles has its own intent and target audience. The Christmas party is seasonal and emotional, the team event is HR-driven, and the corporate event is a question of budget and capacity. That is precisely why they do not cannibalise each other, even though all three contain the word “Cologne". What connects them is internal linking: each spoke links back to the hub and onwards to the specific venue or enquiry page.

    The difference from a conventional company blog is the order of work. We first plan the cluster with all its spokes, then publish on a fixed schedule, rather than looking for a new topic every month. This makes editorial work predictable and ensures internal links are planned from the outset, because even before an article is written, we know where it will link and which articles will link to it.

    The most expensive mistake in content marketing is not a bad article, but a good article with no place in a structure. It ranks briefly, then loses out to your next post, and nobody understands why the figures are falling.
    Josef Kujawski, Geschäftsführer Maluure GmbH

    Practical example: Korbmacher Stiftung, sound technical delivery as the foundation

    Content needs a website that can deliver it. For Korbmacher Stiftung, which supports Kölner Zoo, we rebuilt the entire website with server-side rendering, a clear page hierarchy and structured data. Only then can the signals a topic cluster sends have their full effect: one H1 per page, proper breadcrumbs, a sitemap containing only published content.

    Website for Korbmacher Stiftung supporting Kölner Zoo, delivered by Maluure GmbH
    Korbmacher Stiftung: website relaunch with server-side rendering and a clean site structure, delivered by Maluure GmbH.

    Read the full case study: Korbmacher Stiftung →

    How do you keep a topic cluster healthy over the years?

    A cluster is not a one-off project, but an ongoing content asset. Here is what we include in the editorial plan:

    • A quarterly cannibalisation check following the process above, documented in a simple table with URL, focus keyword and position.
    • Two updates for every new article. If you only write new content, your existing content suffers. An updated article usually gains traction faster than a new one.
    • An annual intent review. Search intents shift. If Google suddenly shows comparison pages rather than guides for your keyword, the article needs to adapt.
    • Consolidate rather than expand. Articles with no impressions after twelve months are merged or redirected, not left untouched.
    • One person responsible for each cluster, who knows which questions are already assigned. This prevents duplication more reliably than any tool.

    Conclusion: structure beats volume

    Topic clusters work because they force a decision: for every question, there is exactly one best page on your domain. That makes planning harder and results more stable. Plan the cluster before writing the first article, link every new post into the existing structure immediately, and actively check indexing rather than hoping for the best.

    We plan topic clusters, write the articles and deliver them on a sound technical foundation. Let’s take a quick look at your subject area.
    Content-Strategie besprechen

    Prefer to leave it to us?

    If you do not want to plan and write topic clusters yourself, that is exactly what we do every day. As an SEO agency in Cologne, we handle cluster planning, copy, internal linking and technical delivery. For a detailed guide to structuring an individual article within a cluster, read How to structure an SEO-optimised blog post.

    Frequently asked questions

    What is a topic cluster in SEO?+
    A clearly defined subject area that you cover comprehensively with an overview article and several detailed articles. The articles link to each other and signal topical authority to Google.
    What does keyword cannibalisation mean?+
    Two or more pages on your domain target the same search intent. Google distributes the signals across several URLs instead of giving one a strong ranking, and all the pages remain mediocre.
    How do I identify cannibalisation in Google Search Console?+
    If several URLs receive impressions for the same query in the performance report and the ranking URL keeps changing, your pages are competing with each other.
    How many articles does a topic cluster need?+
    One hub and four to eight spokes. Fewer feels thin; more usually means two subject areas have been mixed together.
    How many internal links should a blog post contain?+
    Two to five, with descriptive anchor text. At least one links to the cluster’s hub, and at least one to the relevant service page.
    What should I do with two overlapping articles?+
    Incorporate the weaker article into the stronger one and set up a 301 redirect. This preserves content and link equity rather than losing them through deletion.
    Do I need to submit every new blog post for indexing in Search Console?+
    It is not mandatory, but it is worthwhile. The live test reveals problems immediately, and a manual request significantly speeds up the discovery of new URLs.
    How long does it take for a topic cluster to deliver results?+
    Usually three to six months, depending on domain strength and competition. Long-tail spokes generally rank much earlier than the hub.

    Sources

    1. Understanding page experience in Google Search results, Google Search Central (2025)
    2. Creating helpful, reliable, people-first content, Google Search Central (2025)
    #Topic Hubs#Content Cluster#Keyword Cannibalization#SEO#Content Strategy
    Josef Kujawski
    Author
    Josef Kujawski
    Managing Director & Creative Director at Maluure

    Josef leads the strategic and creative development of brands at Maluure. For over a decade, he has guided medium-sized businesses from brand positioning to digital delivery.

    Managing Director of Maluure GmbH, Cologne. Specialising in corporate design, brand strategy and digital brand experiences.

    Newsletter

    New articles straight to your inbox.

    A newsletter when we genuinely have something new to share. No noise.

    Weiterlesen

    Explore more blog topics