mirror of
https://github.com/MODSetter/SurfSense.git
synced 2026-04-25 00:36:31 +02:00
Some checks failed
Build and Push Docker Images / tag_release (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-24.04-arm, linux/arm64, arm64) (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-latest, linux/amd64, amd64) (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-24.04-arm, linux/arm64, arm64) (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-latest, linux/amd64, amd64) (push) Has been cancelled
Build and Push Docker Images / create_manifest (backend, surfsense-backend) (push) Has been cancelled
Build and Push Docker Images / create_manifest (web, surfsense-web) (push) Has been cancelled
- Added multiple new skills to skills-lock.json from the repository `aaron-he-zhu/seo-geo-claude-skills`. - Introduced `fuzzy-search` dependency in package.json for improved search functionality. - Updated pnpm-lock.yaml to include the new `fuzzy-search` package. - Enhanced SEO metadata across various pages, including canonical links and descriptions for better search visibility. - Improved layout and structure of several components, including the homepage and changelog, to enhance user experience.
362 lines
15 KiB
Markdown
362 lines
15 KiB
Markdown
# Link Architecture Patterns
|
||
|
||
Detailed architecture models with implementation guides, migration strategies, and measurement frameworks for internal linking optimization.
|
||
|
||
## Architecture Model Deep Dives
|
||
|
||
### 1. Hub-and-Spoke (Topic Cluster) Model
|
||
|
||
#### Overview
|
||
|
||
The hub-and-spoke model organizes content around central "pillar" pages (hubs) that link to and from related "cluster" articles (spokes). This is the most widely recommended architecture for content-driven sites targeting topical authority.
|
||
|
||
#### Structure Diagram
|
||
|
||
```
|
||
┌──────────────┐
|
||
│ Homepage │
|
||
└──────┬───────┘
|
||
│
|
||
┌──────────────┼──────────────┐
|
||
│ │ │
|
||
┌──────▼──────┐ ┌────▼────┐ ┌──────▼──────┐
|
||
│ Hub A │ │ Hub B │ │ Hub C │
|
||
│ (Pillar) │ │(Pillar) │ │ (Pillar) │
|
||
└──┬───┬───┬──┘ └────┬────┘ └──┬───┬───┬──┘
|
||
│ │ │ │ │ │ │
|
||
A1 A2 A3 B1 B2 C1 C2 C3
|
||
└───┼───┘ └───┼───┘
|
||
cross-links cross-links
|
||
```
|
||
|
||
#### Implementation Steps
|
||
|
||
1. **Identify 3-7 core topics** that define your business expertise
|
||
2. **Create pillar pages** (2,000-5,000 words) that broadly cover each core topic
|
||
3. **Map cluster articles** (800-2,000 words) that dive deep into subtopics
|
||
4. **Implement bidirectional links**: every cluster article links to its pillar, every pillar links to all its clusters
|
||
5. **Add cross-links** between related cluster articles within the same hub
|
||
6. **Add bridge links** between hubs where subtopics overlap
|
||
|
||
#### Link Rules
|
||
|
||
| Link Type | Direction | Anchor Text Strategy |
|
||
|-----------|-----------|---------------------|
|
||
| Pillar → Cluster | Pillar links to each cluster | Descriptive: "learn about [subtopic]" |
|
||
| Cluster → Pillar | Every cluster links back to pillar | Partial match: "our complete [topic] guide" |
|
||
| Cluster ↔ Cluster | Between related clusters in same hub | Natural: "as we covered in [related article]" |
|
||
| Hub ↔ Hub (bridge) | Between related pillar pages | Branded/natural: "see also our [topic] resource" |
|
||
|
||
#### When to Use
|
||
- Content marketing sites and blogs
|
||
- SaaS companies building topical authority
|
||
- Publishers covering defined topic areas
|
||
- Any site with 50-500 content pages
|
||
|
||
#### Measurement
|
||
|
||
| Metric | Target | Tool |
|
||
|--------|--------|------|
|
||
| Pillar page rankings for head terms | Top 10 | Rank tracker |
|
||
| Cluster article rankings for long-tail | Top 20 | Rank tracker |
|
||
| Internal links per cluster article | 3-5 minimum | Crawl report |
|
||
| Click depth from homepage to cluster | ≤3 clicks | Crawl report |
|
||
| Organic traffic to hub pages | Month-over-month growth | Analytics |
|
||
|
||
---
|
||
|
||
### 2. Silo Structure
|
||
|
||
#### Overview
|
||
|
||
The silo model creates strict vertical hierarchies where content is organized into isolated "silos" (categories). Links flow vertically within a silo but rarely cross between silos. This concentrates topical relevance within each silo.
|
||
|
||
#### Structure Diagram
|
||
|
||
```
|
||
┌──────────────┐
|
||
│ Homepage │
|
||
└──────┬───────┘
|
||
│
|
||
┌─────────────────┼─────────────────┐
|
||
│ │ │
|
||
┌────▼─────┐ ┌────▼─────┐ ┌────▼─────┐
|
||
│ Silo A │ │ Silo B │ │ Silo C │
|
||
│ Category │ │ Category │ │ Category │
|
||
└────┬─────┘ └────┬─────┘ └────┬─────┘
|
||
│ │ │
|
||
┌────▼─────┐ ┌────▼─────┐ ┌────▼─────┐
|
||
│ Sub-cat │ │ Sub-cat │ │ Sub-cat │
|
||
└────┬─────┘ └────┬─────┘ └────┬─────┘
|
||
│ │ │
|
||
┌────▼────┐ ┌────▼────┐ ┌────▼────┐
|
||
│ Pages │ │ Pages │ │ Pages │
|
||
└─────────┘ └─────────┘ └─────────┘
|
||
|
||
No horizontal links between silos (strict model)
|
||
```
|
||
|
||
#### Implementation Steps
|
||
|
||
1. **Define 5-15 top-level categories** (silos) based on your product/service taxonomy
|
||
2. **Create category landing pages** with overview content and links to subcategories
|
||
3. **Build subcategory pages** linking down to individual product/content pages
|
||
4. **Enforce vertical linking**: pages link up to their parent and down to their children
|
||
5. **Use breadcrumbs** to reinforce the hierarchy visually and structurally
|
||
6. **Limit cross-silo links** to only the most relevant connections (strict model) or allow them strategically (modified model)
|
||
|
||
#### Link Rules
|
||
|
||
| Link Type | Direction | Allowed? |
|
||
|-----------|-----------|----------|
|
||
| Parent → Child | Downward within silo | Always |
|
||
| Child → Parent | Upward within silo | Always |
|
||
| Sibling ↔ Sibling | Horizontal within same parent | Yes |
|
||
| Cross-silo | Between different silos | Strict: No. Modified: Sparingly |
|
||
| All pages → Homepage | Upward to root | Yes (via navigation) |
|
||
|
||
#### When to Use
|
||
- Large e-commerce sites (100+ product categories)
|
||
- Directory sites with clear taxonomy
|
||
- Sites where categories are truly distinct topics
|
||
- Enterprises with separate business lines
|
||
|
||
#### Limitations
|
||
- Overly strict silos can trap link equity in one branch
|
||
- Cross-topic content becomes difficult to place
|
||
- Users may need to navigate up and over to find related content
|
||
- Modified silo (allowing some cross-links) often works better in practice
|
||
|
||
---
|
||
|
||
### 3. Flat Architecture
|
||
|
||
#### Overview
|
||
|
||
A flat architecture keeps all pages within 2-3 clicks of the homepage. There is minimal hierarchy; instead, pages are broadly interlinked. This maximizes crawlability and distributes link equity evenly.
|
||
|
||
#### Structure Diagram
|
||
|
||
```
|
||
┌──────────┐
|
||
│ Homepage │
|
||
└────┬─────┘
|
||
│
|
||
┌──────────────┼──────────────┐
|
||
│ │ │ │ │ │ │
|
||
P1 P2 P3 P4 P5 P6 P7
|
||
└────┼────┼────┼────┼────┼────┘
|
||
└────┴────┴────┘
|
||
(cross-linked freely)
|
||
```
|
||
|
||
#### Implementation Steps
|
||
|
||
1. **Link all key pages from the homepage** (directly or via a comprehensive sitemap page)
|
||
2. **Keep URL structure shallow**: /category/page, not /category/subcategory/year/page
|
||
3. **Cross-link freely** between related pages at the same level
|
||
4. **Use comprehensive navigation** menus, footer links, or HTML sitemaps
|
||
5. **Limit total pages** to keep the architecture manageable
|
||
|
||
#### When to Use
|
||
- Small sites with fewer than 100 pages
|
||
- Portfolio sites
|
||
- Small business brochure sites
|
||
- Startups with limited content
|
||
|
||
#### Scaling Limits
|
||
|
||
| Site Size | Flat Architecture Feasibility |
|
||
|-----------|------------------------------|
|
||
| <50 pages | Ideal |
|
||
| 50-100 pages | Manageable with good navigation |
|
||
| 100-500 pages | Difficult; consider hub-and-spoke |
|
||
| 500+ pages | Not recommended; switch to hierarchical model |
|
||
|
||
---
|
||
|
||
### 4. Pyramid Architecture
|
||
|
||
#### Overview
|
||
|
||
The pyramid model mirrors traditional website hierarchies: a single homepage at the top, branching into categories, subcategories, and finally individual pages. Authority flows from top to bottom, concentrating at higher levels.
|
||
|
||
#### Structure Diagram
|
||
|
||
```
|
||
Level 0: Homepage
|
||
/ \
|
||
Level 1: Category A Category B
|
||
/ \ / \
|
||
Level 2: Sub A1 Sub A2 Sub B1 Sub B2
|
||
/ \ / \ / \ / \
|
||
Level 3: P1 P2 P3 P4 P5 P6 P7 P8
|
||
```
|
||
|
||
#### Implementation Steps
|
||
|
||
1. **Design a clear hierarchy** with 3-4 levels maximum
|
||
2. **Homepage links to all top-level categories** prominently
|
||
3. **Category pages link to all subcategories** within them
|
||
4. **Subcategory pages link to all child pages**
|
||
5. **Implement breadcrumbs** to support the hierarchy
|
||
6. **Add "related content" cross-links** at the page level to offset authority concentration
|
||
|
||
#### Authority Flow Considerations
|
||
|
||
| Level | Typical Authority | Action to Improve |
|
||
|-------|-------------------|-------------------|
|
||
| Homepage | Highest | Ensure links to priority categories are prominent |
|
||
| Categories | High | Link from blog content, not just navigation |
|
||
| Subcategories | Medium | Add contextual links from other sections |
|
||
| Individual pages | Lowest | Cross-link, feature in "popular posts" widgets |
|
||
|
||
#### When to Use
|
||
- News and media sites
|
||
- Large blogs (500+ posts)
|
||
- Corporate sites with many divisions
|
||
- Government/educational sites
|
||
|
||
---
|
||
|
||
### 5. Mesh/Matrix Architecture
|
||
|
||
#### Overview
|
||
|
||
The mesh model allows free-form linking between any related pages, regardless of hierarchy. Every page can link to any other relevant page. This creates a dense web of connections, similar to Wikipedia's link structure.
|
||
|
||
#### Structure Diagram
|
||
|
||
```
|
||
P1 ←──→ P2 ←──→ P3
|
||
↕ ╲ ↕ ╱ ↕
|
||
P4 ←──→ P5 ←──→ P6
|
||
↕ ╱ ↕ ╲ ↕
|
||
P7 ←──→ P8 ←──→ P9
|
||
```
|
||
|
||
#### Implementation Steps
|
||
|
||
1. **Set linking rules** to prevent chaos: link only when topically relevant
|
||
2. **Use contextual anchors** that describe the destination page
|
||
3. **Set a link budget** per page (5-15 contextual links per 1,000 words)
|
||
4. **Review link density regularly** to prune irrelevant connections
|
||
5. **Maintain a link map** (spreadsheet or tool) to track the network
|
||
|
||
#### Governance Rules
|
||
|
||
| Rule | Purpose |
|
||
|------|---------|
|
||
| Every link must have topical relevance | Prevents link dilution |
|
||
| Maximum 15 contextual links per 1,000 words | Prevents link farms |
|
||
| Review links quarterly | Prunes outdated connections |
|
||
| Use descriptive anchor text only | Maintains semantic value |
|
||
| No reciprocal link trading between unrelated pages | Prevents manipulation patterns |
|
||
|
||
#### When to Use
|
||
- Knowledge bases and documentation sites
|
||
- Wikis and encyclopedias
|
||
- Research repositories
|
||
- FAQ/help center sites
|
||
|
||
---
|
||
|
||
## Migration Between Models
|
||
|
||
### Common Migration Paths
|
||
|
||
| From | To | Reason | Difficulty |
|
||
|------|----|--------|-----------|
|
||
| Flat → Hub-and-Spoke | Site grew beyond 100 pages | Medium |
|
||
| Silo → Hub-and-Spoke | Silos too rigid, need cross-topic links | Medium |
|
||
| Pyramid → Hub-and-Spoke | Want to build topical clusters | High |
|
||
| No structure → Any model | Starting from disorganized state | High |
|
||
| Hub-and-Spoke → Hybrid | Need both clusters and strict categories | Medium |
|
||
|
||
### Migration Steps (General)
|
||
|
||
1. **Audit current state**: Map all existing internal links using a crawler
|
||
2. **Design target architecture**: Choose model, map pages to their new positions
|
||
3. **Create a link change plan**: Document every link addition, removal, and anchor text change
|
||
4. **Implement in phases**: Start with highest-priority cluster/silo, then expand
|
||
5. **Preserve existing equity**: Do not remove links that pass significant value without replacement
|
||
6. **Monitor impact**: Track rankings and traffic for 4-8 weeks after each phase
|
||
7. **Iterate**: Adjust the plan based on measured results
|
||
|
||
### Migration Risk Mitigation
|
||
|
||
| Risk | Mitigation |
|
||
|------|-----------|
|
||
| Temporary ranking drops | Migrate one section at a time, not all at once |
|
||
| Broken internal links | Run crawl after each phase to verify |
|
||
| Lost link equity | Ensure no orphan pages created during migration |
|
||
| Anchor text disruption | Change anchors gradually, not all at once |
|
||
|
||
---
|
||
|
||
## Measurement Framework
|
||
|
||
### Key Metrics by Architecture Model
|
||
|
||
| Metric | Hub-and-Spoke | Silo | Flat | Pyramid | Mesh |
|
||
|--------|---------------|------|------|---------|------|
|
||
| Avg click depth | ≤3 | ≤4 | ≤2 | ≤4 | ≤3 |
|
||
| Orphan pages | 0 | 0 | 0 | 0 | 0 |
|
||
| Avg internal links per page | 5-10 | 3-7 | 8-15 | 3-5 | 8-15 |
|
||
| Cross-section links | Many | Few | N/A | Some | Many |
|
||
| Authority concentration | Distributed to hubs | Concentrated in silo tops | Even | Top-heavy | Even |
|
||
|
||
### Monthly Monitoring Checklist
|
||
|
||
| Check | Tool | Action if Failing |
|
||
|-------|------|-------------------|
|
||
| Orphan pages count | Crawl report | Add internal links immediately |
|
||
| Average click depth | Crawl report | Add shortcuts to deep pages |
|
||
| Crawl depth distribution | Crawl report | Flatten deep branches |
|
||
| Internal link count per page | Crawl report | Add links to under-linked pages |
|
||
| Anchor text diversity | Manual audit | Vary anchors for over-optimized pages |
|
||
| Broken internal links | Crawl report | Fix or remove broken links |
|
||
| New content linked within 48 hours | Editorial process | Add to related pages upon publishing |
|
||
|
||
### ROI Estimation
|
||
|
||
| Architecture Change | Typical Impact | Timeline to See Results |
|
||
|--------------------|---------------|----------------------|
|
||
| Fix orphan pages | +15-30% traffic to those pages | 2-4 weeks |
|
||
| Build first topic cluster | +10-25% traffic to cluster pages | 4-8 weeks |
|
||
| Reduce click depth by 1 level | +5-15% crawl efficiency | 2-6 weeks |
|
||
| Anchor text optimization | +5-10% ranking improvement for target terms | 4-12 weeks |
|
||
| Full architecture migration | +20-50% overall organic traffic | 3-6 months |
|
||
|
||
---
|
||
|
||
## Hybrid Architecture Strategies
|
||
|
||
Most real-world sites combine elements from multiple models. Common hybrid patterns:
|
||
|
||
### Hub-and-Spoke + Silo (Recommended for Medium-Large Sites)
|
||
|
||
```
|
||
Homepage
|
||
├── Category Silo A
|
||
│ ├── Hub A1 (pillar) ←→ Cluster articles
|
||
│ └── Hub A2 (pillar) ←→ Cluster articles
|
||
├── Category Silo B
|
||
│ ├── Hub B1 (pillar) ←→ Cluster articles
|
||
│ └── Hub B2 (pillar) ←→ Cluster articles
|
||
└── Cross-category bridge links (A1 ↔ B2 where relevant)
|
||
```
|
||
|
||
- **Silos** provide category organization for navigation and URL structure
|
||
- **Hubs** within each silo build topical authority for specific keyword clusters
|
||
- **Bridge links** connect related content across silos where user intent overlaps
|
||
|
||
### Implementation Priority Order
|
||
|
||
1. Fix structural issues first (orphan pages, broken links)
|
||
2. Implement primary architecture model
|
||
3. Add cross-linking strategy
|
||
4. Optimize anchor text
|
||
5. Monitor and iterate
|
||
|
||
This order ensures each phase builds on a solid foundation rather than optimizing details on a broken structure.
|