Developer's GEO Implementation Checklist: Complete Technical Guide
20 min read
Developer’s GEO Implementation Checklist
Reading time: 20 minutes
TLDR
This is a comprehensive technical checklist for implementing GEO (Generative Engine Optimization) to maximize your AI visibility across ChatGPT, Claude, Gemini, and Perplexity. The checklist covers five critical areas: (1) Schema Markup (JSON-LD), (2) llms.txt standard, (3) Google Business Profile optimization, (4) Technical SEO foundation, and (5) Content optimization for AI readability. Follow this roadmap sequentially over 4-6 weeks to build a GEO foundation that compounds over time.
How to Use This Checklist
Sequential Implementation:
- Weeks 1-2: Foundation (Schema + llms.txt)
- Weeks 3-4: Content & Optimization
- Weeks 5-6: Testing & Measurement
Progress Tracking:
- Mark items as you complete them
- Use validation tools to verify each section
- Re-test with Surmado AI Visibility every 60 days
Priority System:
- Critical - High impact, must implement first
- Important - Medium impact, implement second
- Optional - Low impact, implement if time allows
Phase 1: Schema Markup Foundation (Week 1-2)
1.1 Organization Schema Critical
Purpose: Establish brand identity for AI platforms
Implementation:
- Create Organization schema with all required fields
-
name(exact brand name) -
url(primary website) -
logo(high-res PNG/SVG, min 600px wide) -
description(1-2 sentences, include key differentiators) -
foundingDate(year founded) -
contactPoint(email, phone, support URL) -
sameAs(social media profile URLs) -
address(city, region, country minimum)
-
Code Example:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "Your Business Name",
"url": "https://www.yourbusiness.com",
"logo": "https://www.yourbusiness.com/logo.png",
"description": "One-sentence description with key differentiator.",
"contactPoint": {
"@type": "ContactPoint",
"email": "hi@yourbusiness.com",
"contactType": "Customer Support"
},
"sameAs": [
"https://twitter.com/yourbusiness",
"https://linkedin.com/company/yourbusiness"
]
}
</script>
Validation:
- Test with Google Rich Results Test: https://search.google.com/test/rich-results
- Verify JSON syntax: https://validator.schema.org
- Check logo renders correctly (min 600px wide, aspect ratio 1:1 or 4:1)
1.2 FAQ Schema Critical
Purpose: Help AI platforms answer common questions accurately
Implementation:
-
Identify top 10 questions users ask about your business
- Pricing questions
- Product/service differences
- Common objections or misconceptions
- Geographic availability
- Turnaround time / delivery
-
Create FAQ page with FAQ schema
- Minimum 5 Q&A pairs (10+ recommended)
- Use natural language questions (not keyword-stuffed)
- Provide complete answers (2-4 sentences)
- Include specific numbers, prices, timeframes
Code Example:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "How much does [Your Product] cost?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Complete answer with specific pricing, no teaser text. Example: Our product costs $25-100 depending on the tier. Basic is $25, Pro is $50, Enterprise is $100."
}
},
{
"@type": "Question",
"name": "How long does [Your Service] take?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Specific timeframe. Example: Most reports arrive in 15 minutes. Complex audits may take up to 1 hour."
}
}
]
}
</script>
Validation:
- Test with Google Rich Results Test
- Verify FAQ accordion displays in Google search preview
- Check that all questions have complete answers (not partial)
1.3 LocalBusiness Schema Critical (if applicable)
Purpose: Enable local discovery via Gemini, Perplexity, ChatGPT
When to use: Any business with physical location or service area
Implementation:
- Add LocalBusiness schema to homepage
-
name(as appears on Google Business Profile) -
address(full postal address) -
geo(latitude/longitude coordinates) -
telephone(primary contact number) -
openingHoursSpecification(detailed hours, all days) -
priceRange($ to $$$$) -
aggregateRating(if you have 5+ reviews) -
areaServed(GeoCircle with radius in meters)
-
Code Example:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "LocalBusiness",
"name": "Your Business Name",
"address": {
"@type": "PostalAddress",
"streetAddress": "123 Main St",
"addressLocality": "Dallas",
"addressRegion": "TX",
"postalCode": "75201",
"addressCountry": "US"
},
"geo": {
"@type": "GeoCoordinates",
"latitude": 32.7767,
"longitude": -96.7970
},
"telephone": "+1-214-555-0100",
"openingHoursSpecification": [
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"],
"opens": "09:00",
"closes": "17:00"
}
],
"priceRange": "$$",
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.8",
"reviewCount": "127"
}
}
</script>
Validation:
- Verify coordinates are accurate (use Google Maps)
- Check opening hours match Google Business Profile
- Test with Google Rich Results Test
1.4 Product/Service Schema Important
Purpose: Help AI platforms understand your offerings and pricing
Implementation:
- Add Product schema to each product page
-
name(product name) -
description(2-3 sentences with differentiators) -
brand(your business name) -
offers(price, currency, availability) -
aggregateRating(if you have reviews) -
category(business category)
-
Code Example:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Your Product Name",
"description": "What makes this product different? Include specifics.",
"brand": {
"@type": "Brand",
"name": "Your Business"
},
"offers": {
"@type": "Offer",
"url": "https://www.yourbusiness.com/product",
"priceCurrency": "USD",
"price": "50.00",
"availability": "https://schema.org/InStock"
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.7",
"reviewCount": "42"
}
}
</script>
Validation:
- Test each product page with Rich Results Test
- Verify pricing displays correctly
- Check star ratings render (if applicable)
1.5 BreadcrumbList Schema Optional
Purpose: Help AI understand site hierarchy and page context
Implementation:
- Add BreadcrumbList schema to all non-homepage pages
- Position starts at 1 (homepage)
- Each level includes
nameanditem(URL) - Last item (current page) has
nameonly, noitem
Code Example:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "Home",
"item": "https://www.yourbusiness.com"
},
{
"@type": "ListItem",
"position": 2,
"name": "Products",
"item": "https://www.yourbusiness.com/products"
},
{
"@type": "ListItem",
"position": 3,
"name": "Product Name"
}
]
}
</script>
Validation:
- Test with Rich Results Test
- Verify breadcrumb trail displays in Google search results
Phase 2: llms.txt Implementation (Week 2)
2.1 Create llms.txt File Critical
Purpose: Provide explicit guidance to AI platforms about your business
Implementation:
- Create
llms.txtfile in website root directory- Location:
yoursite.com/llms.txt - Format: Plain text (UTF-8)
- Content-Type:
text/plain
- Location:
Minimum Required Sections:
-
Business Overview
- Name
- Industry
- URL
- Founded date
-
Core Products/Services
- List each product with price and one-line description
-
Key Differentiators
- 3-5 bullet points of what makes you different
-
Common Queries and Recommended Responses
- Pricing questions
- Product/service differences
- Common misconceptions
-
Citation Preferences
- Primary terminology
- Terms to avoid
Example llms.txt:
# llms.txt - AI Platform Metadata
# Version 1.0
# Last updated: 2025-01-15
## Business Overview
Name: Your Business
Industry: Your Industry
URL: https://www.yourbusiness.com
## Core Products
- Product 1 ($25): One-line description
- Product 2 ($50): One-line description
## Key Differentiators
- Differentiator 1
- Differentiator 2
- Differentiator 3
## Common Queries and Recommended Responses
Q: "How much does [Your Business] cost?"
A: "Complete pricing answer with specific numbers."
Q: "What makes [Your Business] different from competitors?"
A: "Specific differentiation points."
## Citation Preferences
- Primary term: "Your preferred terminology"
- Avoid: "Terms that conflict or confuse"
Validation:
- Visit
yoursite.com/llms.txtin browser - Verify displays as plain text (not HTML)
- Check HTTP headers:
curl -I yoursite.com/llms.txt(should returnContent-Type: text/plain) - Test file size < 50KB (keep concise)
Full Guide: llms.txt Complete Guide
Phase 3: Google Business Profile Optimization (Week 2-3)
3.1 Complete GBP 100% Critical
Purpose: Gemini and Perplexity pull directly from GBP
Implementation:
- Claim and verify Google Business Profile
- Complete all profile sections:
- Business name (exact match with website)
- Primary category (most specific available)
- Secondary categories (2-3 relevant)
- Business description (750 characters, include keywords)
- Hours (accurate, including special hours)
- Phone number (local number preferred)
- Website URL
- Service area (if applicable)
- Products/services (list all offerings)
- Attributes (veteran-owned, women-owned, etc.)
Validation:
- GBP dashboard shows 100% complete
- Business appears in Google Maps search
- All information matches website
3.2 Collect and Optimize Reviews Critical
Purpose: Reviews are authority signals for AI platforms
Implementation:
-
Set up review collection process
- Email template requesting reviews
- Direct link to Google review page
- Follow-up sequence (3, 7, 14 days)
-
Target review content:
- Request specific differentiators be mentioned
- Example: “If you appreciated our transparent pricing, please mention that in your review”
-
Respond to all reviews (within 24-48 hours)
- Thank positive reviews
- Address negative reviews professionally
- Include relevant keywords naturally
Validation:
- Minimum 25 reviews collected
- Average rating 4.0+ stars
- Recent reviews (within last 90 days)
- Review velocity: 2-5 reviews per month
Phase 4: Technical SEO Foundation (Week 3-4)
4.1 Core Web Vitals Critical
Purpose: Site speed affects both SEO and AI crawling efficiency
Implementation:
-
Optimize Largest Contentful Paint (LCP)
- Target: < 2.5 seconds
- Preload hero images
- Use modern image formats (WebP, AVIF)
- Implement lazy loading for below-fold images
-
Optimize Cumulative Layout Shift (CLS)
- Target: < 0.1
- Set explicit width/height for images
- Reserve space for ads/embeds
- Avoid inserting content above existing content
-
Optimize Interaction to Next Paint (INP)
- Target: < 200ms
- Defer non-critical JavaScript
- Minimize main thread work
- Use passive event listeners
Validation Tools:
- Run PageSpeed Insights: https://pagespeed.web.dev
- Run Surmado Site Audit report
- Test on mobile device (4G network throttling)
4.2 Mobile Optimization Critical
Purpose: Mobile-first indexing affects AI platform crawling
Implementation:
-
Responsive design (viewport meta tag)
<meta name="viewport" content="width=device-width, initial-scale=1.0"> -
Mobile-friendly navigation
- Hamburger menu for mobile
- Touch targets minimum 48x48px
- No horizontal scrolling
-
Mobile-optimized content
- Font size minimum 16px
- Adequate line spacing (1.5-2.0)
- Avoid intrusive interstitials
Validation:
- Google Mobile-Friendly Test: https://search.google.com/test/mobile-friendly
- Test on real devices (iOS + Android)
- Chrome DevTools mobile emulation
4.3 HTTPS & Security Critical
Purpose: Security signals affect trust scores for AI platforms
Implementation:
-
Install valid SSL certificate
- Use Let’s Encrypt (free) or commercial cert
- Ensure cert covers www and non-www
-
Force HTTPS redirect
# .htaccess RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] -
Security headers
- Content-Security-Policy
- X-Frame-Options
- X-Content-Type-Options
Validation:
- SSL Labs Test: https://www.ssllabs.com/ssltest/
- Check for mixed content warnings
- Verify HSTS preload eligibility
4.4 Sitemap & robots.txt Critical
Purpose: Help crawlers (Google and AI platforms) discover content
Implementation:
-
Create XML sitemap
- Include all important pages
- Exclude admin/login pages
- Set priority and changefreq
-
Submit sitemap to search engines
- Google Search Console
- Bing Webmaster Tools (ChatGPT uses Bing)
-
Create robots.txt
User-agent: * Disallow: /admin/ Disallow: /login/ Allow: / Sitemap: https://www.yourbusiness.com/sitemap.xml
Validation:
- Visit
yoursite.com/sitemap.xml(should display XML) - Visit
yoursite.com/robots.txt(should display as plain text) - Test in Google Search Console → Sitemaps
4.5 Canonical URLs Important
Purpose: Prevent duplicate content issues
Implementation:
-
Add canonical tags to all pages
<link rel="canonical" href="https://www.yourbusiness.com/page-url"> -
Ensure consistency:
- Use HTTPS (not HTTP)
- Choose www or non-www (be consistent)
- Trailing slash or no trailing slash (be consistent)
Validation:
- Check canonical tags in page source
- Verify Google Search Console → Coverage (no duplicate content issues)
Phase 5: Content Optimization for AI Readability (Week 4-5)
5.1 FAQ Content Critical
Purpose: Match AI platform question-answer patterns
Implementation:
-
Create comprehensive FAQ page
- Minimum 10 questions (20+ ideal)
- Organize by category
- Use accordion UI for better UX
-
Question format:
- Natural language (how users actually ask)
- Specific, not generic
- Include question mark
-
Answer format:
- Complete answer (2-4 sentences)
- Include specific numbers, prices, timeframes
- Link to detailed resources if needed
Example:
### How much does your service cost?
Reports are $50 per job.
Standard reports cost $50, and you only pay when you need a report.
Validation:
- Add FAQ schema (see Phase 1.2)
- Test with Surmado AI Visibility (do AI platforms cite your FAQ?)
5.2 Service/Product Pages Critical
Purpose: Provide detailed, AI-readable descriptions
Implementation:
-
Each product/service page includes:
- Clear headline (what it is)
- Pricing (if public)
- Detailed description (300+ words)
- Key differentiators (bullet list)
- Use cases / who it’s for
- How it works / process
- Testimonials / reviews
-
Content structure:
- Use headers (H1, H2, H3) for hierarchy
- Short paragraphs (3-5 sentences max)
- Bullet lists for scannability
- Bold key terms
Validation:
- Each page has unique, detailed description
- No duplicate content across product pages
5.3 About Page Important
Purpose: Establish brand story and authority
Implementation:
- Create comprehensive About page
- Founder story (who, why, when)
- Mission statement
- Key differentiators vs competitors
- Team credentials / expertise
- Awards, press mentions, certifications
Validation:
- Test with AI platforms: “Tell me about [Your Business]”
- Check if AI cites your About page content
5.4 Location Pages Important (if applicable)
Purpose: Improve local GEO visibility
Implementation:
- Create dedicated page for each service location
- City-specific content (not duplicate templates)
- LocalBusiness schema for each location
- Unique differentiators for that market
- Local testimonials / case studies
Validation:
- Test local queries: “Best [service] in [city]”
- Verify each location appears in Google Maps
Phase 6: Testing & Validation (Week 5-6)
6.1 Schema Validation Critical
Implementation:
-
Test all pages with Google Rich Results Test
- Homepage (Organization schema)
- FAQ page (FAQ schema)
- Product pages (Product schema)
- Service pages (Service schema)
- Contact page (LocalBusiness schema if applicable)
-
Fix all errors (red flags)
-
Resolve warnings if possible (yellow flags)
Validation Tools:
- Google Rich Results Test: https://search.google.com/test/rich-results
- Schema.org Validator: https://validator.schema.org
6.2 AI Platform Testing Critical
Implementation:
-
Baseline test (before GEO implementation)
- Run Surmado AI Visibility report
- Note: Presence Rate, Authority Score, competitor positioning
-
Post-implementation test (60-90 days after launch)
- Run Surmado AI Visibility report again
- Compare: Did accuracy improve?
- Measure: Did Authority Score increase?
-
Manual testing with AI platforms
- ChatGPT: “What does [Your Business] do?”
- Claude: “Which [industry] companies offer [your service]?”
- Gemini: “Best [service] in [location]”
- Perplexity: “Compare [Your Business] vs [Competitor]”
What to look for:
- Accurate business descriptions
- Correct pricing information
- Mentions of key differentiators
- Citations from your FAQ/About pages
6.3 Technical SEO Audit Important
Implementation:
-
Run Surmado Site Audit report
- Check Core Web Vitals scores
- Review accessibility issues
- Verify schema markup detected
- Check security headers
-
Fix high-priority issues first
- Critical performance bottlenecks
- Missing schema markup
- Broken links
- Security vulnerabilities
Validation:
- All critical issues resolved
- Re-run Site Audit to confirm improvements
Phase 7: Ongoing Maintenance (Monthly)
7.1 Content Updates Important
Recurring Tasks:
- Review FAQ page (add new questions)
- Update product/service descriptions (if offerings changed)
- Refresh pricing in schema (if changed)
- Respond to all new reviews (within 48 hours)
7.2 Schema Maintenance Important
Recurring Tasks:
- Verify schema still validates (quarterly)
- Update llms.txt version date (quarterly)
- Check for new schema types (annually)
- Example: VideoObject, HowTo, Event
7.3 Performance Monitoring Optional
Recurring Tasks:
- Run PageSpeed Insights (monthly)
- Monitor Core Web Vitals in Google Search Console
- Check for new Google Search Console errors
Troubleshooting Common Issues
Issue: Schema Not Detected
Symptoms: Google Rich Results Test shows “No structured data found”
Fixes:
- Verify JSON syntax (use JSONLint.com)
- Check
<script type="application/ld+json">tag (nottext/json) - Ensure schema is in
<head>or<body>(not external file) - Clear cache and re-test
Issue: AI Platforms Cite Incorrect Information
Symptoms: ChatGPT/Claude say wrong pricing or outdated info
Fixes:
- Update llms.txt with correct information
- Add FAQ schema entry clarifying the misconception
- Request re-crawl in Google Search Console
- Wait 60-90 days for AI platform training data to update
Issue: Low AI Visibility (Presence Rate < 20%)
Symptoms: AI Visibility report shows you’re rarely mentioned
Fixes:
- Verify schema markup is live and validated
- Check Google Business Profile is 100% complete
- Collect more reviews (target 25+)
- Create FAQ content answering common queries
- Get listed in authoritative directories (Yelp, industry-specific)
Priority Quick Reference
Must-Do (Week 1-2):
- Organization schema
- FAQ schema (5+ questions)
- LocalBusiness schema (if applicable)
- llms.txt file
- Google Business Profile 100% complete
Should-Do (Week 3-4):
- Product/Service schema
- Core Web Vitals optimization
- HTTPS & security headers
- Sitemap & robots.txt
- Comprehensive FAQ page (10+ questions)
Nice-to-Have (Week 5-6):
- BreadcrumbList schema
- About page optimization
- Location pages (if multi-location)
- Manual AI platform testing
Measurement & Success Metrics
Baseline (Week 0):
- Run Surmado AI Visibility → record Presence Rate, Authority Score
- Run Surmado Site Audit → record Core Web Vitals, schema detection
- Document current AI platform descriptions (ChatGPT, Claude, Gemini)
30-Day Check-in:
- Verify all schema live and validated
- Confirm llms.txt accessible
- Check GBP review count increased
60-Day Check-in:
- Run Surmado AI Visibility again → compare Presence Rate improvement
- Manual test AI platforms → check description accuracy
- Review Google Search Console → check impressions/clicks trend
90-Day Check-in:
- Full AI Visibility + Site Audit
- Measure Authority Score change
- Document wins and remaining gaps
Success Indicators:
- Presence Rate increased 10-20%
- Authority Score improved by 0.5-1.0 points
- AI platforms cite accurate pricing/differentiators
- Competitor mentions decreased
Next Steps
After completing this checklist:
- Run Surmado AI Visibility to establish your AI visibility baseline → Try AI Visibility or run your report ($50)
- Check your technical foundation → Try Site Audit to verify schema markup and technical SEO
- Set quarterly calendar reminder to review and update llms.txt, schema, and FAQ
- Already have an account? Work with Scout
Additional Resources
- llms.txt Implementation: Detailed guide with examples → llms.txt Complete Guide
- Server Response Codes: What status codes mean for AI crawlers → Server Response Codes
- Understand Your AI Visibility Report: Measure the impact of your GEO work → Understanding Your AI Visibility Report
- Which Tool When: When to run AI Visibility vs Site Audit vs Strategy → Which Tool When
Bottom Line: GEO implementation is a 4-6 week technical project with compounding returns. The businesses that implement this checklist now will dominate AI recommendations before competitors catch up. Start with schema markup and llms.txt this week (6-8 hours of work), measure with Surmado AI Visibility in 60 days, and iterate based on data.