You read about “topic clusters” in an SEO guide and built one: a 4,000-word pillar article on “Claude API,” plus 2 supporting articles. Six months later, the pillar ranks at position 32. The two supporting articles rank at 60+. None get meaningful traffic. The cluster strategy isn’t wrong — it’s just that 1 pillar + 2 satellites isn’t a cluster. It’s a stub.
Topical authority is a function of coverage breadth and depth. Real clusters typically have 6-10+ supporting articles per pillar (20+ for competitive topics). Below: how to design the cluster, ship it over 2-3 months, link bidirectionally, and avoid the “treat clustering as a checkbox” failure mode that produces stubs.
Common causes
Ordered by hit rate, highest first.
1. “Pillar / cluster” adopted as a buzzword without committing to volume
You read about clusters; published a pillar + 2 quick satellites; called it done. The strategy assumes ≥6 satellites; you stopped at 2.
How to spot it: Pillar has 2-3 supporting articles, hasn’t grown in 3+ months. Strategy was named but not committed.
2. Editorial calendar moved on before the cluster was complete
You shipped the pillar in January, 2 satellites in February — then March’s editorial calendar moved to a different topic. The cluster never got finished.
How to spot it: Cluster articles cluster around a publish month, then nothing. Editorial calendar drift.
3. Existing articles aren’t internally linked to the pillar
You may already have 8 articles on Claude sub-topics, written before “pillar/cluster” was a strategy. None of them link to the pillar. The cluster is mechanically present but not connected.
How to spot it: Grep articles on related topics for links to the pillar URL. If most don’t reference the pillar, the cluster isn’t wired.
4. Supporting articles target the same sub-intent as the pillar
Pillar is “Claude API guide.” Satellites are “Claude API tutorial,” “Claude API how-to.” All hit the same intent — they cannibalize, don’t complement. (See Cluster overlap cannibalize.)
How to spot it: Pillar and satellites have similar titles + target the same broad query. Designed-overlap, not designed-complement.
5. Satellites don’t link forward to each other
Pillar links to satellite A, which links back to pillar. Pillar links to satellite B, which links back to pillar. A and B don’t link to each other. The cluster is a hub-and-spoke without web.
How to spot it: Crawl satellite-to-satellite link count. If it’s mostly 0, the cluster is undirected on the satellites’ side.
6. The pillar is too broad
Pillar is “Everything about Claude” — covers API, web app, mobile app, enterprise. Each sub-topic deserves its own pillar. The current pillar is too horizontal; satellites can’t all link credibly.
How to spot it: Pillar attempts to cover 4+ distinct user intents. Better to split into 2-3 narrower pillars.
Shortest path to fix
Ordered by ROI. Step 1 designs; Step 2-3 build; Steps 4-6 connect.
Step 1: Brainstorm 15-20 sub-topics that real readers ask
For your pillar topic, list what readers want:
Pillar: Claude API
Real sub-topics (questions readers ask):
1. Authentication / API keys
2. Rate limits + retry logic
3. Streaming responses
4. Tool use / function calling
5. Prompt caching for cost
6. Batch API for bulk jobs
7. Vision / image input
8. Computer use
9. Token counting + cost calculation
10. Comparison with OpenAI API
11. Migrating from OpenAI
12. Error codes + troubleshooting
13. Best practices for production
14. Choosing a model (Sonnet vs Haiku vs Opus)
15. Common pitfalls
16. Webhook integration patterns
17. Building agents on top
18. PDF / document input
19. JSON mode / structured outputs
20. Latency optimization
15-20 candidates. You don’t write all of them; you have a roadmap.
Step 2: Publish 6-10 supporting articles steadily over 2-3 months
Don’t ship 6 articles in a week — they look batch-generated and SEO signals are weaker. Pace:
Week 1: pillar
Week 2-12: 1-2 satellites per week
Steady cadence signals an actively-developed cluster.
Step 3: Each satellite targets a distinct sub-intent
Each satellite article:
- Has a target keyword different from the pillar's
- Answers a sub-question the pillar mentions briefly
- Links back to the pillar via descriptive anchor text
- Links forward to 2-3 other satellites where naturally relevant
Differentiation in intent is critical — overlap causes cannibalization, not reinforcement.
Step 4: Pillar links forward to every satellite
In the pillar article body:
## Authentication
Setting up an API key is the first step (see our [authentication guide](/articles/claude-api-authentication/) for the full process).
[brief content here]
## Rate limits
[brief content; deep dive in [rate limits + retry](/articles/claude-api-rate-limits/)]
Pillar is the hub, satellites are spokes. The pillar should link to every satellite by section.
Step 5: Satellites link to each other
For each satellite, identify 2-3 closely-related satellites and link from body text:
<!-- inside claude-api-streaming.mdx -->
When streaming, you'll want to handle rate limit errors gracefully — see
[Claude API rate limits + retry](/articles/claude-api-rate-limits/).
For batch jobs that don't need streaming, [Batch API](/articles/claude-api-batch/)
is usually cheaper.
A cluster with internal cross-links is a graph; without them it’s a hub-and-spoke. Graph > spoke for topical authority.
Step 6: Wait 3-6 months, then measure
Topical authority compounds slowly. Don’t expect ranking improvements in week 2:
Month 1: cluster shipped
Month 3: pillar starts moving from position 32 → 20
Month 6: pillar reaches position 8-12, satellites stabilize at 15-25
Month 12: pillar holds top 5, satellites are top 10-20 each
If at month 6 there’s no movement, the cluster isn’t the bottleneck — depth, backlinks, or competition may be the real issue.
Prevention
- Plan clusters before publishing the pillar — brainstorm 15-20 sub-topics, commit to ≥6 satellites
- Track cluster completion as a metric; “pillar shipped” without satellites isn’t a cluster yet
- Pillar topic narrow enough to focus; if it spans 4+ intents, split into multiple pillars
- Satellites target distinct sub-intents; designed-complement not designed-overlap
- Bidirectional linking: pillar → every satellite, satellite → 2-3 other satellites
- Compound time: 3-6 months for ranking signals to consolidate; expect slow not instant
Related
Tags: #Content ops #Site quality #Site audit #Troubleshooting #Pillar / Cluster