Skip to main content

Help Center SEO: Best Practices for Documentation Sites

14 min read

14 min read

Help Center SEO: Best Practices for Documentation Sites

Reading time: ~14 minutes

Help centers and documentation sites have unique SEO challenges.

Users search with specific questions. They need exact answers fast. They leave immediately if the content is hard to scan.

This guide shows how to optimize help centers for both traditional search engines and AI platforms.


Why Help Center SEO is Different

Most SEO advice focuses on blog posts and product pages.

Help centers are neither.

Key differences:

1. User intent is specific

Users searching “how to reset password” don’t want a blog post about password security best practices.

They want Step 1, Step 2, Step 3.

2. Content structure matters more than keywords

Search engines and AI platforms prioritize clear structure over keyword density.

A well-structured article with H1→H2→H3 hierarchy ranks better than a keyword-stuffed wall of text.

3. Freshness is critical

Outdated docs are worse than no docs.

Search engines downrank stale content. AI platforms cite fresher sources.

4. Schema markup is essential

FAQPage, HowTo, and TechArticle schema help search engines understand what your content is.

Without schema, you’re invisible to AI Overviews.


Technical Foundation

URL Structure

Good patterns:

/docs/category/article-slug
/docs/getting-started/first-scan
/docs/api/authentication
/docs/quick/what-is-core-web-vitals

Why this works:

  • Semantic hierarchy (category visible in URL)
  • Predictable patterns (users can guess URLs)
  • SEO-friendly slugs (keywords in URL)

Bad patterns:

/article?id=12345
/docs/a1b2c3d4
/page/12

Why this fails:

  • No semantic meaning
  • Can’t guess related articles
  • No keyword signals

Heading Hierarchy

Critical rule: One H1 per page. H1 should match the title tag.

Example structure:

# How to Reset Your Password (H1)

## Before You Start (H2)

## Step-by-Step Instructions (H2)

### Using the Web Interface (H3)

### Using the Mobile App (H3)

## Troubleshooting (H2)

### "Reset Link Expired" Error (H3)

### "Email Not Received" Issue (H3)

Why hierarchy matters:

Search engines use headings to understand content structure.

Screen readers let users jump between headings for navigation.

AI platforms use headings to extract sections for answers.

Semantic HTML

Use proper HTML elements, not divs with classes.

Good:

<article>
  <h1>Article Title</h1>
  <p>Introduction...</p>

  <section>
    <h2>Section Title</h2>
    <p>Content...</p>
  </section>

  <aside>
    <h3>Related Articles</h3>
    <ul>
      <li><a href="/docs/related">Related Doc</a></li>
    </ul>
  </aside>
</article>

Bad:

<div class="article">
  <div class="title">Article Title</div>
  <div class="intro">Introduction...</div>
  <div class="section">
    <div class="section-title">Section Title</div>
  </div>
</div>

Why semantic HTML matters:

Search engines understand <article>, <section>, <aside> better than generic <div> tags.

Screen readers announce landmarks, helping visually impaired users navigate.

Core Web Vitals for Docs Sites

Documentation sites often struggle with specific Core Web Vitals issues.

Common problems:

1. Cumulative Layout Shift (CLS)

Cause: Code blocks loading after initial render, pushing content down.

Fix:

  • Reserve space for code blocks with CSS min-height
  • Load syntax highlighting CSS in <head>
  • Use loading="lazy" only for images below the fold

2. Largest Contentful Paint (LCP)

Cause: Large code examples or images in docs.

Fix:

  • Compress images (WebP format)
  • Lazy load images below first screen
  • Inline critical CSS
  • Use CDN for static assets

3. Total Blocking Time (TBT)

Cause: Heavy JavaScript for interactive code examples or search.

Fix:

  • Defer non-critical JavaScript
  • Code-split your JS bundle
  • Use web workers for search indexing
  • Server-side render when possible

Schema Markup for Help Centers

Help centers benefit from four main schema types.

1. FAQPage Schema

Use for Q&A style articles.

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [{
    "@type": "Question",
    "name": "How do I reset my password?",
    "acceptedAnswer": {
      "@type": "Answer",
      "text": "Click 'Forgot Password' on the login page. Enter your email address. Check your inbox for a reset link. Click the link and create a new password."
    }
  }]
}
</script>

When to use: Articles structured as questions and answers.

Benefit: Can trigger FAQ rich results in Google search.

2. HowTo Schema

Use for step-by-step guides.

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "HowTo",
  "name": "How to Install the Surmado CLI",
  "step": [
    {
      "@type": "HowToStep",
      "name": "Install Node.js",
      "text": "Download and install Node.js 18 or later from nodejs.org"
    },
    {
      "@type": "HowToStep",
      "name": "Install via npm",
      "text": "Run 'npm install -g @surmado/cli' in your terminal"
    },
    {
      "@type": "HowToStep",
      "name": "Verify installation",
      "text": "Run 'surmado --version' to confirm installation"
    }
  ]
}
</script>

When to use: Procedural guides with numbered steps.

Benefit: Can trigger HowTo rich results with visual step indicators.

3. TechArticle Schema

Use for technical documentation.

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "TechArticle",
  "headline": "Surmado API Authentication Guide",
  "description": "How to authenticate with the Surmado API using API keys and bearer tokens",
  "author": {
    "@type": "Organization",
    "name": "Surmado"
  },
  "datePublished": "2025-01-15",
  "dateModified": "2025-01-19"
}
</script>

When to use: API docs, technical guides, developer documentation.

Benefit: Signals to search engines that content is technical/authoritative.

4. BreadcrumbList Schema

Use for navigation breadcrumbs.

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "BreadcrumbList",
  "itemListElement": [{
    "@type": "ListItem",
    "position": 1,
    "name": "Docs",
    "item": "https://help.surmado.com/docs"
  },{
    "@type": "ListItem",
    "position": 2,
    "name": "API",
    "item": "https://help.surmado.com/docs/api"
  },{
    "@type": "ListItem",
    "position": 3,
    "name": "Authentication",
    "item": "https://help.surmado.com/docs/api/authentication"
  }]
}
</script>

When to use: Every page with breadcrumb navigation.

Benefit: Breadcrumbs appear in search results, improve CTR.


Content Best Practices

Write Titles as Questions

Good:

  • “How do I reset my password?”
  • “What is Core Web Vitals?”
  • “How to integrate Surmado API with Zapier”

Bad:

  • “Password Reset”
  • “Core Web Vitals”
  • “Zapier Integration”

Why: Users search with questions. AI platforms prioritize Q&A format.

Answer the Question Immediately

Put the direct answer in the first 40-60 words.

Example:

## How do I reset my password?

Click "Forgot Password" on the login page. Enter your email address.
You'll receive a reset link within 5 minutes. Click it and create a
new password.

### Detailed Steps

1. Navigate to the login page
2. Click "Forgot Password"
...

Why: Users need the answer fast. Details come second.

One Topic Per Page

Don’t combine multiple unrelated topics in one article.

Bad: “User Management: Creating, Editing, and Deleting Users, Plus Role Permissions”

Good:

  • “How to Create a New User”
  • “How to Edit User Permissions”
  • “How to Delete a User”
  • “Understanding User Roles and Permissions”

Why:

  • Easier to link to specific topics
  • Better for SEO (one clear topic per page)
  • Better for AI extraction (clear, focused content)

Use Consistent Terminology

Pick one term and stick with it.

Bad: Using “user,” “member,” “account holder,” and “customer” interchangeably.

Good: Pick “user” and use it everywhere.

Why:

  • Reduces cognitive load
  • Better for search (users search for consistent terms)
  • Better for AI (consistent entities are easier to understand)

Create a terminology guide. Link it from your docs homepage.

Add Code Examples

For technical docs, include runnable code examples.

Good:

### Making a Request

```bash
curl -X POST https://api.surmado.com/v1/scan \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com"}'
```

**Expected response:**

```json
{
  "status": "success",
  "scan_id": "scan_abc123",
  "estimated_completion": "2025-01-19T15:30:00Z"
}
```

Why:

  • Users can copy-paste immediately
  • Reduces support questions
  • Better for AI platforms (clear input/output examples)

Syntax Highlighting

Use language-specific syntax highlighting.

Good:

```javascript
const response = await fetch('https://api.surmado.com/v1/scan', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer YOUR_API_KEY'
  }
});
```

Bad:

const response = await fetch...

Why:

  • Easier to read
  • Shows you understand the language
  • Professional appearance

Internal Linking Strategy

If Article A mentions Article B, Article B should mention Article A.

Example:

Article A: “What is Core Web Vitals?” Links to → Article B: “How to Improve LCP”

Article B: “How to Improve LCP” Links back to → Article A: “What is Core Web Vitals?”

Why:

  • Helps users discover related content
  • Distributes link equity
  • Signals to search engines that articles are related

Create Category Pages

Don’t just list articles. Explain what the category covers.

Bad category page:

# API Documentation

- Authentication
- Rate Limits
- Webhooks

Good category page:

# API Documentation

The Surmado API lets you run Scan, Signal, and Solutions reports
programmatically. All endpoints support async execution with webhook
delivery.

## Getting Started

New to the API? Start here:
- [Authentication](/docs/api/authentication) - Get your API key
- [Making Your First Request](/docs/api/first-request) - Run a scan
- [Webhook Setup](/docs/api/webhooks) - Get results delivered

## Reference

- [Scan Endpoint](/docs/api/scan)
- [Signal Endpoint](/docs/api/signal)
- [Solutions Endpoint](/docs/api/solutions)

Why:

  • Category pages rank for broader searches
  • Provides context for the section
  • Improves internal linking structure

Bad: “Click here for more info”

Good: “See the API documentation for authentication details”

Why:

  • Link text is a ranking signal
  • Accessible for screen readers
  • AI platforms use link text for context

Search Functionality

Make Search Prominent

Put the search bar at the top of every page.

Best practices:

  • Visible without scrolling
  • Keyboard shortcut (Ctrl+K or Cmd+K)
  • Search-as-you-type (instant results)
  • Highlights matching terms in results

Index Everything

Your search should cover:

  • Article titles
  • Article content
  • Code examples
  • Glossary terms

Don’t exclude:

  • API reference docs
  • Changelog
  • Release notes

Show Results Hierarchy

Search results should show:

  • Article title
  • Category/section
  • Snippet of matching text
  • Breadcrumb path

Example:

Authentication Guide
Docs > API > Authentication
...get your API key from the dashboard...

Freshness and Updates

Add “Last Updated” Dates

Show when each article was last updated.

Where to show:

  • At the top of the article
  • In search results
  • In article metadata (TechArticle schema)

Why:

  • Users trust recent content
  • Search engines favor fresh content
  • AI platforms cite newer sources

Regular Content Audits

Review all docs quarterly.

What to check:

  • Is information still accurate?
  • Are screenshots current?
  • Are code examples using latest API?
  • Are links still working?
  • Are there newer better practices?

Prioritize:

  • High-traffic pages first
  • Getting started guides
  • API reference docs

Version Documentation

For software products, maintain docs for multiple versions.

URL structure:

/docs/latest/api/authentication
/docs/v2/api/authentication
/docs/v1/api/authentication

Best practices:

  • Default to latest version
  • Show version switcher prominently
  • Canonical tag points to latest
  • Archive old versions (don’t delete)

Accessibility

Keyboard Navigation

Every feature must work with keyboard only.

Test:

  • Tab through the page
  • Can you reach all links?
  • Can you open/close menus?
  • Can you trigger search with keyboard?
  • Can you navigate results with arrow keys?

Common issues:

  • Custom dropdowns not keyboard accessible
  • Modal dialogs can’t be closed with Esc
  • Focus trapped inside components
  • Skip to main content link missing

Screen Reader Testing

Use a screen reader to test your docs.

Free options:

  • NVDA (Windows)
  • VoiceOver (Mac, built-in)

What to test:

  • Can you navigate by headings?
  • Are code blocks announced clearly?
  • Do images have meaningful alt text?
  • Are form fields labeled properly?

Color Contrast

Use sufficient contrast for all text.

WCAG requirements:

  • Normal text: 4.5:1
  • Large text (18pt+): 3:1
  • UI components: 3:1

Common violations in docs:

  • Gray placeholder text (#999 on #FFF = 2.85:1 ❌)
  • Light code comments
  • Disabled button text
  • Link color on light background

Tools:

  • WebAIM Contrast Checker
  • Chrome DevTools (built-in)
  • Stark (Figma plugin)

AI Optimization for Help Centers

Structure for AI Extraction

AI platforms prefer content that’s easy to parse.

Good structure:

## Question

Direct answer in first paragraph (40-60 words).

### Detailed Explanation

Supporting details, examples, edge cases.

### Example

Code example or screenshot.

Why:

  • AI can extract the answer block
  • Users scanning find answer fast
  • Search engines understand structure

Use Tables for Comparisons

AI platforms can read and cite tables.

Example:

FeatureScanSignalSolutions
Cost$25$25$50
Run time~15 min~15-30 min~30-45 min
OutputSEO auditAI visibilityStrategy

Why:

  • Scannable for humans
  • Machine-readable for AI
  • Easy to update

Include Expert Context

AI platforms favor content with expertise signals.

Ways to signal expertise:

  • “Based on analysis of 10,000 help centers…”
  • “In our testing of 500 sites…”
  • “According to W3C guidelines…”
  • “Research from Google shows…”

Why:

  • Builds trust with AI and users
  • Increases citation probability
  • Differentiates from generic content

Measuring Help Center SEO Success

Google Search Console Metrics

What to track:

1. Impressions and CTR by page

  • Which docs get the most visibility?
  • Which have low CTR? (maybe titles are unclear)

2. Query analysis

  • What exact questions are users searching?
  • Are you answering them?
  • Are there gaps in your content?

3. Core Web Vitals

  • Are docs pages passing?
  • Common issue: CLS from code blocks

4. Coverage issues

  • Are all docs pages indexed?
  • Any crawl errors?

AI Visibility Testing

Test how AI platforms cite your docs.

Questions to ask:

“How do I [common task] in [your product]?”

Platforms to test:

  • ChatGPT
  • Claude
  • Perplexity
  • Gemini

What to measure:

  • Do they cite your docs?
  • Is the information accurate?
  • Do they link to your help center?

Use Surmado Signal:

Run Signal with persona prompts like:

  • “New user trying to get started”
  • “Developer integrating API”
  • “Admin troubleshooting issue”

See which docs AI recommends.

Internal Metrics

What to track:

1. Search queries (internal)

  • What are users searching for in your docs?
  • Are they finding answers?
  • High search, low clicks = missing content

2. Top exit pages

  • Where do users leave without converting?
  • Are those docs complete?
  • Are next steps clear?

3. Scroll depth

  • Are users reading to the bottom?
  • Or bouncing after first screen?

4. Support ticket reduction

  • Did new docs reduce tickets?
  • Which topics still generate tickets?

Common Help Center SEO Mistakes

Mistake #1: Using Generic Titles

Bad: “Getting Started”

Good: “How to Get Started with Surmado in 5 Minutes”

Why: Specific titles rank better and set clear expectations.

Mistake #2: No Clear Hierarchy

Bad: Everything is top-level docs, no categories.

Good: Docs → Category → Subcategory → Article

Why: Users and search engines need structure to navigate.

Mistake #3: Outdated Screenshots

Screenshots from 3 years ago confuse users and signal stale content.

Fix: Review and update screenshots quarterly. Add version numbers or timestamps to images.

Mistake #4: No Internal Linking

Each article exists in isolation with no links to related topics.

Fix: Add “Related Articles” section to every page. Link inline where relevant.

Mistake #5: Ignoring Mobile

Docs designed for desktop, broken on mobile.

Common issues:

  • Code blocks overflow screen
  • Tables too wide to read
  • Tiny text in screenshots
  • Buttons too small to tap

Fix: Test every doc on mobile. Use responsive tables. Optimize images for small screens.


Quick Wins This Week

1. Add FAQPage schema to Q&A articles (1-2 hours)

Pick your top 10 most-visited docs. Add FAQPage schema to those with Q&A format.

2. Fix heading hierarchy (1 hour)

Audit top pages. Ensure one H1, logical H2→H3 structure.

3. Add “Last Updated” dates (30 minutes)

Show freshness. Builds trust.

4. Create 3 related article links (1 hour)

Pick your top-traffic page. Add 3 inline links to related articles. Repeat for those articles linking back.

5. Run Core Web Vitals check (15 minutes)

Use PageSpeed Insights on top 5 docs. Fix critical CLS issues from code blocks.


Case Study: How Surmado Optimized help.surmado.com

Baseline (before optimization):

  • 80 docs pages
  • Good technical SEO (92/100)
  • Missing schema on some pages
  • No dedicated contact or pricing pages

Changes made:

  1. Added FAQPage, HowTo, TechArticle schema to 100% of pages
  2. Created dedicated contact and pricing pages
  3. Improved heading hierarchy on all articles
  4. Added breadcrumb navigation and schema
  5. Optimized for Core Web Vitals (98/100 performance)

Results:

Scan score: 96/100 overall

  • Performance: 98/100
  • Accessibility: 100/100 (zero WCAG violations)
  • Technical SEO: 92/100
  • Perfect cross-browser compatibility (9/9)

Key insight:

Help centers don’t need to be perfect. They need to be:

  • Structurally sound
  • Accessible to everyone
  • Fast to load
  • Clear and scannable
  • Fresh and accurate

Tools and Resources

Schema Validators

Performance Testing

Accessibility Testing

SEO Auditing

AI Visibility Testing


Related guides:

Next steps:

Help Us Improve This Article

Know a better way to explain this? Have a real-world example or tip to share?

Contribute and earn credits:

  • Submit: Get $25 credit (Signal, Scan, or Solutions)
  • If accepted: Get an additional $25 credit ($50 total)
  • Plus: Byline credit on this article
Contribute to This Article