> ## Documentation Index
> Fetch the complete documentation index at: https://docs.hadoseo.com/llms.txt
> Use this file to discover all available pages before exploring further.

# How Prerendering Works for Lovable SEO

> Learn how Hado SEO uses prerendering, bot detection, and smart caching to make JavaScript apps visible to Google, AI search engines, and social media crawlers.

## Why JavaScript Apps Struggle with SEO

Modern web apps built with React, Vue, or AI builders render content dynamically in the browser. When a search engine bot visits your site, here's what happens:

```
User visits → Browser runs JavaScript → Content appears ✅
Bot visits  → No JavaScript execution → Empty page seen ❌
```

This means your carefully crafted content, meta tags, and product pages may never get indexed by Google or other search engines.

## Prerendering: The Google-Recommended Solution

Hado SEO implements **prerendering** at the edge. We serve different content based on who's visiting:

```
Human visitor → Your original app (unchanged, zero latency)
Search bot    → Pre-rendered static HTML (SEO-optimized)
```

This is the approach [recommended by Google](https://developers.google.com/search/docs/crawling-indexing/javascript/dynamic-rendering) for JavaScript-heavy applications.

## Bot Detection: Search Engines, AI Crawlers & Social Media

Our edge network analyzes incoming requests to identify different types of visitors:

<AccordionGroup>
  <Accordion title="Search Engine Crawlers" icon="magnifying-glass">
    * **Googlebot** - Google's main crawler
    * **Bingbot** - Microsoft Bing
    * **DuckDuckBot** - DuckDuckGo
    * **YandexBot** - Yandex search
    * **Baiduspider** - Baidu (China)
    * **Applebot** - Apple search
    * **Amazonbot** - Amazon/Alexa
    * **Slurp** - Yahoo search
  </Accordion>

  <Accordion title="AI Search & LLM Crawlers" icon="robot">
    * **GPTBot** - OpenAI's crawler for ChatGPT
    * **OAI-SearchBot** - OpenAI Search
    * **ChatGPT-User** - ChatGPT browsing
    * **ClaudeBot** - Anthropic's crawler
    * **PerplexityBot** - Perplexity AI search
    * **Google-Extended** - Google Gemini/Bard training
    * **Applebot-Extended** - Apple AI features
    * **Bytespider** - ByteDance/TikTok AI
    * **YouBot** - You.com AI search
    * **CCBot** - Common Crawl
    * **Cohere** - Cohere AI
    * **Diffbot** - Knowledge graph extraction
  </Accordion>

  <Accordion title="Social Media & Messaging" icon="share-nodes">
    * **Twitterbot** - X/Twitter link previews
    * **facebookexternalhit** - Facebook/Meta sharing
    * **Meta-ExternalAgent** - Meta AI
    * **LinkedInBot** - LinkedIn sharing
    * **Slackbot** - Slack link unfurling
    * **Discordbot** - Discord embeds
    * **WhatsApp** - WhatsApp link previews
    * **TelegramBot** - Telegram link previews
    * **Pinterest** - Pinterest pins
    * **Redditbot** - Reddit link previews
  </Accordion>

  <Accordion title="SEO Tools" icon="chart-line">
    * **AhrefsBot** - Ahrefs crawler
    * **SemrushBot** - Semrush crawler
    * **MJ12bot** - Majestic SEO
    * **DotBot** - Moz/SEOmoz
    * **Rogerbot** - Moz crawler
    * **Screaming Frog** - SEO spider
    * **DataForSEOBot** - DataForSEO crawler
  </Accordion>
</AccordionGroup>

Don't see a bot you need? [Contact support](mailto:support@hadoseo.com) and we'll add it.

## What Gets Pre-rendered for Search Engines

When a bot visits your site through Hado SEO, we render and serve:

| Content Type      | Example                                  | SEO Impact             |
| ----------------- | ---------------------------------------- | ---------------------- |
| Full HTML content | Your page text, headings, paragraphs     | Core indexable content |
| Meta tags         | `<title>`, `<meta name="description">`   | Search result snippets |
| Open Graph tags   | `og:title`, `og:image`, `og:description` | Social media previews  |
| Structured data   | JSON-LD schema markup                    | Rich search results    |
| Dynamic content   | Data fetched from APIs                   | Complete page content  |
| HTTP status codes | 200, 301, 404                            | Proper crawl handling  |

## Smart Caching & Automatic Page Refresh

Pre-rendered pages are cached at our global edge network for fast delivery. Hado SEO automatically monitors your sitemap and intelligently decides what to render:

### Smart Refresh Cycle

Each cycle runs a smart diff against your sitemap to minimize unnecessary work:

| What's detected   | How                                                 | Action                                           |
| ----------------- | --------------------------------------------------- | ------------------------------------------------ |
| **New pages**     | URLs in your sitemap that we haven't seen before    | Always rendered immediately                      |
| **Updated pages** | Sitemap `lastmod` date is newer than our last crawl | Always re-rendered                               |
| **Stale pages**   | Pages not updated but due for a refresh             | Rotated \~1% per cycle for a full 30-day refresh |

Pages with a higher `priority` value in your sitemap are refreshed more frequently during the stale rotation, so your most important pages stay freshest.

### Full Manual Refresh

You can trigger a full manual recrawl once per month from **Domain Settings** in your dashboard. This is designed for:

* Full site redesigns
* Major content or layout updates
* Significant structural changes

Manual recrawls run at the highest priority and process your entire sitemap.

### Bulk Refresh

Need to refresh specific pages without a full recrawl? Use **Bulk Refresh** from your dashboard to re-render up to **100 pages** at a time. This is ideal for:

* Updating a batch of product pages after a price change
* Refreshing blog posts after edits
* Re-rendering key landing pages after A/B test changes

## How Traffic Flows Through Hado SEO

```mermaid theme={null}
graph TD
    A[Visitor] -->|Request| B[Hado Edge Network]
    B -->|Proxy to| C[Your App]
    B --> D{Is it a bot?}
    D -->|Yes| E[Pre-render & Cache]
    D -->|No: Human| F[Direct Passthrough<br/>zero added latency]
    E --> G[Serve Static HTML]
    F --> H[Serve Original App]
```

**How it works:**

1. **All traffic** flows through Hado's edge network via DNS
2. **Bot detection** analyzes the User-Agent header
3. **Search bots** get pre-rendered, cached HTML
4. **Human visitors** pass through with zero added latency

## Why Choose Prerendering over SSR

<CardGroup cols={2}>
  <Card title="No Latency for Users" icon="bolt">
    Human visitors bypass prerendering entirely. Your app loads exactly as
    before with zero added latency.
  </Card>

  <Card title="Global Edge Network" icon="globe">
    Our infrastructure spans multiple global points of presence for sub-250ms
    response times worldwide.
  </Card>

  <Card title="Always Fresh Content" icon="arrows-rotate">
    Smart refresh cycle detects new and updated pages automatically.
    Bulk refresh and monthly manual recrawl available when you need them.
  </Card>

  <Card title="Complete Control" icon="sliders">
    Serves static HTML to search engines and AI crawlers to boost technical
    on-page SEO
  </Card>
</CardGroup>

## Hado SEO vs Prerender.io vs SSR Migration

| Feature      | Hado SEO     | Prerender.io        | SSR Migration    |
| ------------ | ------------ | ------------------- | ---------------- |
| Setup time   | 5 minutes    | Hours               | Days/Weeks       |
| Code changes | None         | Middleware required | Complete rewrite |
| Maintenance  | Zero         | SDK updates         | Ongoing          |
| Cost         | From \$19/mo | From \$49/mo        | Developer time   |

<Card title="Ready to get started?" icon="rocket" href="/quickstart">
  Set up Hado SEO in 5 minutes with our quickstart guide
</Card>
