Appearance
Setting Up Your AI Subdomain Fresh
How to create ai.yoursite.com -- mirror your content, inject Schema.org markup, and set up the AI-optimized version of every page.
Layer 1 -- Advanced
What Is the AI Subdomain?
The AI subdomain (ai.yoursite.com) is an optional but powerful part of Layer 1. It's a parallel version of your website that's optimized specifically for AI crawlers and agents -- stripped of visual design, navigation clutter, and JavaScript complexity, leaving just pure structured content.
Think of it as "reader mode" for your website -- but built for machines instead of humans.
When an AI crawler hits ai.yoursite.com, it finds:
- Clean HTML with semantic structure
- Rich Schema.org JSON-LD on every page
- No ads, popups, cookie banners, or navigation menus
- Fast load times (no heavy JavaScript frameworks)
- Consistent, predictable page structure
Is This Required?
No. You can achieve Layer 1 compliance by adding Schema.org markup to your main site. The AI subdomain is for those who want maximum AI readability without changing their main site's design or architecture.
Main Site vs. AI Subdomain
yoursite.com/about (human-facing):
html
<!DOCTYPE html>
<html>
<head>
<title>About Us | Acme Dental</title>
<link rel="stylesheet" href="/css/main.css">
<script src="/js/analytics.js"></script>
<script src="/js/chat-widget.js"></script>
</head>
<body>
<nav>...50 lines of navigation...</nav>
<div class="hero-banner">...</div>
<main>
<h1>About Acme Dental</h1>
<p>Content buried here...</p>
</main>
<footer>...100 lines of footer...</footer>
<div class="cookie-banner">...</div>
</body>
</html>ai.yoursite.com/about (AI-facing):
html
<!DOCTYPE html>
<html>
<head>
<title>About Us | Acme Dental</title>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "AboutPage",
"mainEntity": {
"@type": "Dentist",
"name": "Acme Dental"
}
}
</script>
</head>
<body>
<main>
<h1>About Acme Dental</h1>
<p>Clear, structured content...</p>
</main>
</body>
</html>Same content, dramatically different signal-to-noise ratio.
Architecture Options
Reverse Proxy (Recommended)
Use Nginx, Cloudflare Workers, or similar to intercept requests to ai.yoursite.com, fetch content from your main site, strip unnecessary elements, and inject Schema.org.
- No duplicate content to maintain
- Requires server/edge configuration
Static Generation
Build a static site generator that pulls content from your CMS/main site and generates AI-optimized HTML files. Deploy to any static host.
- Fast, cheap hosting (Netlify, Vercel, S3)
- Needs rebuild when content changes
CMS Plugin/Theme
If you use WordPress, Webflow, or similar -- create a separate theme or use a plugin that renders AI-optimized versions at the ai. subdomain.
- Integrated with existing workflow
- Platform-specific implementation
Separate Application
Build a lightweight app that shares your database/API but renders AI-optimized templates.
- Full control over output
- Most development effort
Step-by-Step Setup
Step 1: Configure DNS
Add a CNAME or A record for the ai subdomain:
# If using same server as main site:
ai.yoursite.com. CNAME yoursite.com.
# If using separate hosting (e.g., Netlify):
ai.yoursite.com. CNAME your-ai-site.netlify.app.DNS changes can take up to 48 hours to propagate.
Step 2: Create the Page Template
Design a minimal HTML template for all AI subdomain pages:
html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>{{page.title}} -- {{site.name}}</title>
<meta name="description" content="{{page.description}}">
<!-- Canonical points to main site -->
<link rel="canonical" href="https://yoursite.com{{page.path}}">
<!-- Schema.org JSON-LD -->
<script type="application/ld+json">
{{page.schema_json}}
</script>
<!-- Minimal styling for readability -->
<style>
body {
font-family: system-ui, sans-serif;
max-width: 800px;
margin: 0 auto;
padding: 20px;
line-height: 1.6;
}
</style>
</head>
<body>
<main>
<article>
<h1>{{page.title}}</h1>
{{page.content}}
</article>
</main>
<footer>
<p>View this page on our main site: <a href="https://yoursite.com{{page.path}}">yoursite.com{{page.path}}</a></p>
</footer>
</body>
</html>Key elements:
- Canonical tag -- Points to the main site to avoid duplicate content issues
- Schema.org JSON-LD -- The structured data, injected per page
- Minimal styling -- Just enough CSS for human readability
- Semantic HTML --
<main>,<article>, proper headings
Step 3: Generate Schema.org for Each Page
Homepage:
json
{
"@context": "https://schema.org",
"@type": "LocalBusiness",
"name": "Your Business Name",
"description": "What you do",
"url": "https://yoursite.com",
"telephone": "+1-555-123-4567",
"address": { ... },
"potentialAction": {
"@type": "ReadAction",
"target": "https://yoursite.com/ai-discovery"
}
}Service Page:
json
{
"@context": "https://schema.org",
"@type": "Service",
"name": "Teeth Whitening",
"description": "Professional teeth whitening service...",
"provider": {"@type": "LocalBusiness", "name": "Acme Dental"},
"areaServed": "Springfield, IL",
"offers": {"@type": "Offer", "price": "299", "priceCurrency": "USD"}
}Team/Person Page:
json
{
"@context": "https://schema.org",
"@type": "Person",
"name": "Dr. Jane Smith",
"jobTitle": "Lead Dentist",
"description": "Pediatric dentistry specialist with 15 years...",
"worksFor": {"@type": "LocalBusiness", "name": "Acme Dental"},
"hasCredential": [{"@type": "EducationalOccupationalCredential", "name": "DDS"}]
}Step 4: Build Your Site Structure
Mirror your main site's URL structure:
ai.yoursite.com/
├── index.html # Homepage
├── about/
│ └── index.html # About page
├── services/
│ ├── index.html # Services listing
│ ├── whitening.html # Individual service
│ └── implants.html
├── team/
│ ├── index.html # Team listing
│ └── dr-smith.html
├── contact.html
├── robots.txt # AI-friendly robots.txt
├── .well-known/
│ └── llm-index.json # If using Layer 3
└── sitemap.xmlNote
Your AI Discovery Page (/ai-discovery) lives on your main site, not the AI subdomain. It's the bridge that connects your human-facing site to the LLM Disco Network.
Step 5: Configure robots.txt
See the robots.txt guide for the complete configuration for both sites.
Quick summary:
- Main site: block AI crawlers, allow
/ai-discovery - AI subdomain: allow AI crawlers, block search engines
Step 6: Deploy and Verify
- Visit
ai.yoursite.com-- pages should load with minimal styling - Check page source -- Schema.org JSON-LD should be in
<head> - Test that canonical tags point correctly to your main site
- Verify
yoursite.com/robots.txtblocks AI crawlers - Verify
ai.yoursite.com/robots.txtwelcomes AI crawlers - Ensure your AI Discovery Page links to llmdisco.com
Common Mistakes to Avoid
- Forgetting the canonical tag -- Without it, search engines may see duplicate content
- Inconsistent URLs -- Keep URL structure identical between main site and AI subdomain
- Missing pages -- If a page exists on main site, it should exist on AI subdomain
- Stale content -- Set up automated syncing so AI subdomain doesn't fall behind
- Swapped robots.txt -- Double-check that main site blocks AI and AI subdomain welcomes AI
- No AI Discovery Page -- The ADP is the bridge that connects everything
Maintenance
Your AI subdomain needs to stay in sync with your main site:
- Reverse proxy: Automatic -- changes flow through in real-time
- Static generation: Set up a build trigger when content changes
- CMS plugin: Usually automatic with the same content database