open-navigator / website /docs /guides /seo-optimization.md
jcbowyer's picture
Clean HuggingFace deployment without binary files
61d29fc
---
sidebar_position: 10
---
# SEO Optimization Guide
This guide explains the SEO improvements implemented for Open Navigator and provides recommendations for ongoing optimization.
## βœ… Implemented Improvements
### 1. Table of Contents Enhancement
**Changed:** Increased TOC depth from H2 to H2-H4
```typescript
// website/docusaurus.config.ts
tableOfContents: {
minHeadingLevel: 2,
maxHeadingLevel: 4, // Now shows h2, h3, and h4 headings
}
```
**Impact:** Better page navigation and improved user experience, which helps with SEO rankings.
### 2. Google Analytics Enabled
**Changed:** Enabled Google Analytics tracking
```typescript
gtag: {
trackingID: 'G-5EQV815915',
anonymizeIP: true,
}
```
**Impact:**
- Track user behavior and page performance
- Measure bounce rates and engagement
- Essential data for Search Console integration
### 3. Robots.txt Created
**File:** `website/static/robots.txt`
```txt
User-agent: *
Allow: /
Sitemap: https://www.communityone.com/sitemap.xml
Crawl-delay: 1
```
**Impact:**
- Tells search engines to crawl all pages
- Points to sitemap for efficient indexing
- Polite crawl delay prevents server overload
### 4. Sitemap Configuration
**Added:** Automated sitemap generation
```typescript
sitemap: {
changefreq: 'weekly',
priority: 0.5,
ignorePatterns: ['/tags/**'],
filename: 'sitemap.xml',
}
```
**Impact:**
- Auto-generated at `https://www.communityone.com/sitemap.xml`
- Helps search engines discover all pages
- Updates weekly to reflect new content
### 5. Enhanced Meta Tags (React App)
**File:** `frontend/index.html`
**Added:**
- Primary meta tags (title, description, keywords, author)
- Robots directives (index, follow)
- Language and revisit-after tags
- Canonical URL for duplicate content prevention
**Impact:** Better search engine understanding of page content.
### 6. Open Graph Tags
**Added:** Social sharing metadata
```html
<meta property="og:type" content="website" />
<meta property="og:title" content="Open Navigator - AI-Powered Civic Engagement Platform" />
<meta property="og:description" content="..." />
<meta property="og:image" content="..." />
```
**Impact:**
- Better appearance when shared on Facebook, LinkedIn
- Increased click-through rates from social media
- Professional brand presentation
### 7. Twitter Card Tags
**Added:** Twitter-specific metadata
```html
<meta name="twitter:card" content="summary_large_image" />
<meta name="twitter:title" content="..." />
<meta name="twitter:image" content="..." />
```
**Impact:**
- Rich previews when shared on Twitter/X
- Larger image display
- Better engagement from social traffic
### 8. Structured Data (JSON-LD)
**Added:** Schema.org WebApplication structured data
```json
{
"@context": "https://schema.org",
"@type": "WebApplication",
"name": "Open Navigator",
"featureList": [...],
"audience": {...}
}
```
**Impact:**
- Rich snippets in Google search results
- Better understanding by search engines
- Potential for enhanced search appearance
- Voice search optimization
### 9. Docusaurus SEO Metadata
**Added:** Global metadata for documentation site
```typescript
metadata: [
{name: 'keywords', content: '...'},
{property: 'og:type', content: 'website'},
{name: 'twitter:card', content: 'summary_large_image'},
]
```
**Impact:** Consistent SEO across all documentation pages.
### 10. Google Search Console Verification File
**Added:** HTML verification file for domain ownership
**Locations:**
- `frontend/public/google6934fc6e3618949f.html`
- `website/static/google6934fc6e3618949f.html`
**Impact:**
- Enables Google Search Console setup
- Allows monitoring of search performance
- Required for sitemap submission
- Tracks indexing status and errors
## πŸ” Additional SEO Recommendations
### Content Optimization
1. **Improve Page Headings**
- Use clear H1 tags on every page (one per page)
- Create hierarchical heading structure (H1 β†’ H2 β†’ H3 β†’ H4)
- Include target keywords in headings naturally
2. **Add Alt Text to Images**
```markdown
![Clear description of image for accessibility and SEO](image.png)
```
3. **Internal Linking**
- Link related documentation pages together
- Use descriptive anchor text (not "click here")
- Create a logical site structure
4. **Content Length**
- Aim for 1000+ words on key pages
- Comprehensive guides rank better
- Answer user questions thoroughly
### Technical SEO
5. **Create a Social Card Image**
- Design a 1200x630px image for `og:image`
- Place in `website/static/img/` or `frontend/public/`
- Update meta tags to use it:
```html
<meta property="og:image" content="https://www.communityone.com/social-card.png" />
```
6. **Add Breadcrumbs**
- Docusaurus supports breadcrumbs by default
- Enable in docs frontmatter:
```yaml
---
hide_breadcrumbs: false
---
```
7. **Improve URL Structure**
- Use kebab-case filenames
- Keep URLs short and descriptive
- Include target keywords
8. **Page Speed Optimization**
- Test with [Google PageSpeed Insights](https://pagespeed.web.dev/)
- Optimize images (WebP format)
- Enable compression
- Minimize JavaScript bundles
- Use lazy loading for images
9. **Mobile Responsiveness**
- Already configured with viewport meta tag
- Test on multiple devices
- Use Chrome DevTools mobile emulation
### Search Console Integration
10. **Submit Sitemap to Google**
1. Go to [Google Search Console](https://search.google.com/search-console)
2. Add property: `https://www.communityone.com`
3. Verify ownership (HTML file verification already deployed):
- Verification file: `google6934fc6e3618949f.html`
- Located in: `frontend/public/` and `website/static/`
- Accessible at: `https://www.communityone.com/google6934fc6e3618949f.html`
4. Submit sitemap: `https://www.communityone.com/sitemap.xml`
5. Monitor indexing status
11. **Submit to Bing Webmaster Tools**
1. Visit [Bing Webmaster Tools](https://www.bing.com/webmasters)
2. Add site and verify ownership
3. Submit sitemap
### Content Strategy
12. **Blog Regularly**
- Use the blog at `website/blog/`
- Target long-tail keywords
- Share updates about features, case studies
- Example topics:
- "How to Track Your City Council Meetings"
- "Understanding Nonprofit Financial Data"
- "Case Study: Using Open Navigator for Advocacy"
13. **Create FAQ Pages**
- Answer common questions
- Use schema.org FAQPage structured data
- Target "question" keywords
14. **Add Testimonials/Case Studies**
- Social proof improves conversions
- Can use Review schema markup
- Showcase real-world usage
### Documentation SEO
15. **Optimize Frontmatter**
- Add `description` to every doc page:
```yaml
---
sidebar_position: 1
description: "Learn how to install and configure Open Navigator for tracking municipal meetings and policy opportunities."
---
```
16. **Use Admonitions**
- Already using `:::tip` blocks
- Also use `:::info`, `:::warning`, `:::danger`
- Makes content more scannable
17. **Add Last Updated Dates**
- Shows content is fresh
- Enable in Docusaurus:
```typescript
docs: {
showLastUpdateTime: true,
showLastUpdateAuthor: true,
}
```
## πŸ“Š Monitoring SEO Performance
### Key Metrics to Track
1. **Google Search Console**
- Total clicks and impressions
- Average position for keywords
- Click-through rate (CTR)
- Pages with indexing issues
2. **Google Analytics**
- Organic search traffic
- Bounce rate by page
- Average session duration
- Top landing pages
3. **Page Speed**
- Core Web Vitals (LCP, FID, CLS)
- Mobile vs. Desktop performance
- Page load times
### Tools to Use
- **[Google Search Console](https://search.google.com/search-console)** - Monitor search performance
- **[Google PageSpeed Insights](https://pagespeed.web.dev/)** - Test page speed
- **[Ahrefs](https://ahrefs.com/)** or **[SEMrush](https://www.semrush.com/)** - Keyword research
- **[Schema.org Validator](https://validator.schema.org/)** - Test structured data
- **[Facebook Sharing Debugger](https://developers.facebook.com/tools/debug/)** - Test Open Graph tags
- **[Twitter Card Validator](https://cards-dev.twitter.com/validator)** - Test Twitter cards
## 🎯 Quick Wins (Do These First)
1. **Submit sitemap to Google Search Console** (5 minutes)
- Add property: `https://www.communityone.com`
- Submit sitemap: `https://www.communityone.com/sitemap.xml`
2. **Create social card image** (30 minutes)
3. **Add alt text to all images** (1 hour)
4. **Add description frontmatter to top 10 pages** (1 hour)
5. **Write first blog post** (2 hours)
6. **Set up Google Search Console alerts** (10 minutes)
## πŸš€ Long-Term SEO Strategy
### Month 1-2: Foundation
- Set up monitoring tools
- Fix technical SEO issues
- Optimize existing content
- Submit sitemaps
### Month 3-4: Content Expansion
- Publish 2-4 blog posts per month
- Create comprehensive guides
- Add case studies
- Build internal linking
### Month 5-6: Authority Building
- Get backlinks from civic tech sites
- Guest post on related blogs
- Engage with community
- Share on social media
### Month 7-12: Refinement
- Analyze top-performing content
- Update old content
- Target competitive keywords
- Expand feature documentation
## πŸ“ Content Checklist Template
Use this for every new documentation page:
- [ ] Clear H1 heading with target keyword
- [ ] Meta description in frontmatter (150-160 chars)
- [ ] Hierarchical heading structure (H1 β†’ H2 β†’ H3)
- [ ] Alt text on all images
- [ ] Internal links to related pages (3-5 minimum)
- [ ] External authoritative references
- [ ] Code examples with syntax highlighting
- [ ] Call-to-action or next steps
- [ ] Minimum 500 words (1000+ for guides)
- [ ] Proofread and spell-checked
## πŸ”§ Testing Your Changes
After deploying SEO improvements:
1. **Validate Structured Data**
```bash
# Test locally
npm run build
npm run serve
# Then visit: https://validator.schema.org/
```
2. **Test Social Sharing**
- Use Facebook Sharing Debugger
- Use Twitter Card Validator
- Share internally to verify appearance
3. **Check Mobile Friendliness**
- Google Mobile-Friendly Test
- Test on real devices
4. **Monitor Search Console**
- Check for crawl errors weekly
- Track keyword rankings
- Monitor click-through rates
## πŸ“š Resources
- [Google SEO Starter Guide](https://developers.google.com/search/docs/fundamentals/seo-starter-guide)
- [Docusaurus SEO](https://docusaurus.io/docs/seo)
- [Schema.org Documentation](https://schema.org/)
- [Open Graph Protocol](https://ogp.me/)
- [Moz Beginner's Guide to SEO](https://moz.com/beginners-guide-to-seo)
---
**Last Updated:** May 1, 2026
For questions about SEO implementation, visit the [Developer Documentation](/docs/for-developers) or open an issue on GitHub.