Skip to content

GEO Optimizer — Install & First Audit

Get the toolkit installed and run your first GEO audit in under 5 minutes.


Requirement Version Notes
Python 3.9+ python.org
git any git-scm.com
Website Must be publicly accessible via HTTPS

Check your Python version:

Terminal window
python3 --version

One-liner (recommended):

Terminal window
curl -sSL https://raw.githubusercontent.com/auriti-labs/geo-optimizer-skill/main/install.sh | bash

This script:

  1. Clones the repo to ~/geo-optimizer-skill
  2. Creates a Python virtual environment at ~/geo-optimizer-skill/.venv
  3. Installs dependencies (requests, beautifulsoup4, lxml) into the venv
  4. Creates a ./geo wrapper script that activates the venv automatically before running any script

You never need to activate the venv manually — ./geo handles it.

Custom install path? The --dir flag cannot be used with curl | bash (the flag is intercepted by bash, not the script). Download first, then pass the flag:

Terminal window
curl -sSL https://raw.githubusercontent.com/auriti-labs/geo-optimizer-skill/main/install.sh -o install.sh
bash install.sh --dir /custom/path

Manual alternative (if you prefer to inspect first):

Terminal window
git clone https://github.com/auriti-labs/geo-optimizer-skill.git ~/geo-optimizer-skill
cd ~/geo-optimizer-skill
bash install.sh

Update anytime:

Terminal window
bash ~/geo-optimizer-skill/update.sh

Terminal window
cd ~/geo-optimizer-skill
geo audit --url https://yoursite.com

That’s it. The script fetches your homepage, robots.txt, and checks for /llms.txt, JSON-LD schema, meta tags, and content signals.


The audit output is divided into 8 scored categories plus bonus checks and a final score.

The 8 categories are: Robots.txt (18pt), llms.txt (18pt), Schema JSON-LD (16pt), Meta Tags (14pt), Content Quality (12pt), Brand & Entity (10pt), Signals (6pt), AI Discovery (6pt).

Each section shows what passed and what’s missing:

▸ ROBOTS.TXT ─────────────────────────── 5 / 18
✅ robots.txt found
❌ OAI-SearchBot MISSING ← critical
❌ ClaudeBot MISSING ← critical
▸ LLMS.TXT ───────────────────────────── 0 / 18
❌ Not found at https://yoursite.com/llms.txt
▸ SCHEMA JSON-LD ─────────────────────── 4 / 16
✅ WebSite schema
❌ FAQPage schema missing
❌ Organization schema missing
▸ META TAGS ──────────────────────────── 14 / 14
✅ Title · Meta description · Canonical · OG tags
▸ CONTENT QUALITY ────────────────────── 5 / 12
✅ 12 headings · H2+H3 hierarchy
❌ 1 statistic (target: 5+) · 0 external citations
▸ BRAND & ENTITY ─────────────────────── 3 / 10
✅ Brand name coherent
❌ No sameAs Knowledge Graph links
▸ SIGNALS ────────────────────────────── 3 / 6
✅ <html lang="en">
❌ No RSS/Atom feed
▸ AI DISCOVERY ───────────────────────── 0 / 6
❌ No AI discovery endpoints
──────────────────────────────────────────────────────────
GEO SCORE [████████░░░░░░░░░░░░] 34 / 100 ❌ CRITICAL
──────────────────────────────────────────────────────────

Score bands: 0–35 Critical · 36–67 Foundation · 68–85 Good · 86–100 Excellent


Follow this priority order — each step has the highest ROI before moving to the next:

  1. robots.txt — Add all 27 AI bots. Takes 5 minutes. Affects whether bots can crawl you at all. → AI Bots Reference
  2. llms.txt — Generate it from your sitemap. Takes 2 minutes. → Generating llms.txt
  3. Schema — Add WebSite, Organization, FAQPage, Article. → Schema Injector
  4. Brand & Entity — Add sameAs KG links, about/contact pages. → Scoring Rubric
  5. AI Discovery — Generate ai.txt and /ai/*.json endpoints. Use geo fix to auto-generate.
  6. Content — Add statistics, external citations, expert quotes. → 47 GEO Methods

Terminal window
bash ~/geo-optimizer-skill/update.sh

Pulls the latest commits, updates dependencies, and keeps your ./geo wrapper intact.