# How to Perform a Deep Single-Page GEO Analysis with Claude Code

> Perform a deep single page GEO analysis with Claude Code. Get a composite score and detailed markdown report for your URL using the /geo page command.

- Repository: [Zubair Trabzada/geo-seo-claude](https://github.com/zubair-trabzada/geo-seo-claude)
- Tags: deep-dive
- Published: 2026-09-08

---

**Use the `/geo page <url>` slash command to execute a focused, single-page Generative Engine Optimization audit that outputs a composite score and detailed markdown report.**

Conducting a **deep single-page GEO analysis** allows you to validate individual URLs—such as product landing pages or campaign articles—before rolling out changes across your entire site. The `zubair-trabzada/geo-seo-claude` repository provides a specialized command that orchestrates multiple AI agents to evaluate technical signals, content quality, and AI-search readiness for any specific URL.

## The /geo page Command Entry Point

The analysis pipeline is triggered through a dedicated slash command defined in [[`geo/SKILL.md`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/geo/SKILL.md)](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/geo/SKILL.md).

```bash
/geo page <url>

```

When invoked, this command initiates a six-stage pipeline that mimics a full-site audit but restricts all evaluations to the supplied URL only. Unlike traditional SEO crawlers, this workflow specifically targets **Generative Engine Optimization** signals—factors that influence how AI systems like ChatGPT, Perplexity, and Google AI Overviews cite and represent your content.

## The Six-Stage Analysis Pipeline

### Stage 1: Page Retrieval via fetch_page.py

The foundation of the audit is [[`scripts/fetch_page.py`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/scripts/fetch_page.py)](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/scripts/fetch_page.py), a helper script that retrieves the raw HTML without executing JavaScript. It extracts the initial page payload, including the HTML structure and HTTP headers, which feeds directly into the evaluation agents.

### Stage 2: Content and Signal Extraction

From the raw HTML, the pipeline derives critical on-page elements:

- **Page title** and **meta description**
- **Heading hierarchy** (H1-H6 structure)
- **Word count** and content density
- **JSON-LD schema blocks** (detected via the `geo-schema` sub-skill)
- **AI-crawler accessibility signals** ([`robots.txt`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/robots.txt) status, [`llms.txt`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/llms.txt) presence)

### Stage 3: Parallel Sub-Agent Evaluation

The command invokes five specialized sub-agents simultaneously, each defined in the `agents/` directory. Every agent receives only the single page’s extracted data:

- **AI Visibility** ([[`agents/geo-ai-visibility.md`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/agents/geo-ai-visibility.md)](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/agents/geo-ai-visibility.md)): Calculates citability scoring and checks for brand mention opportunities.
- **Platform Optimization** ([[`agents/geo-platform-analysis.md`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/agents/geo-platform-analysis.md)](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/agents/geo-platform-analysis.md)): Assesses readiness for ChatGPT, Perplexity, Google AI Overviews, and other generative platforms.
- **Technical GEO** ([[`agents/geo-technical.md`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/agents/geo-technical.md)](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/agents/geo-technical.md)): Verifies SSR (Server-Side Rendering) presence, Core Web Vitals potential, and security headers.
- **Content E-E-A-T** ([[`agents/geo-content.md`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/agents/geo-content.md)](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/agents/geo-content.md)): Evaluates Experience, Expertise, Authority, and Trustworthiness signals.
- **Schema & Structured Data** ([[`agents/geo-schema.md`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/agents/geo-schema.md)](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/agents/geo-schema.md)): Validates `application/ld+json` blocks for semantic accuracy.

These agents share the scoring methodology documented in the repository’s `scoring-methodology` document, ensuring consistent evaluation criteria.

### Stage 4: Composite GEO Score Calculation

After individual evaluations, the system aggregates scores using weighted categories:

- **Citability**: 25%
- **Brand**: 20%
- **E-E-A-T**: 20%
- **Technical GEO**: 15%
- **Schema**: 10%
- **Platform Optimization**: 10%

The resulting composite score ranges from 0 to 100 and represents the page’s overall AI-search readiness.

### Stage 5: Report Generation

The pipeline writes **[`GEO-PAGE-ANALYSIS.md`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/GEO-PAGE-ANALYSIS.md)** to the current working directory. This file follows the same structure as full-site audit reports—containing an executive summary, score breakdown, deep-dive sections, and prioritized quick-wins—but remains scoped to the single inspected URL.

For PDF export, the repository uses the HTML template located at [[`templates/geo-report-template.html`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/templates/geo-report-template.html)](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/templates/geo-report-template.html) to render the markdown into a styled document.

### Stage 6: Usage Feedback

Upon completion, Claude Code prints a concise inline summary displaying the overall GEO score, key strengths, and the highest-impact quick win. This allows immediate action without requiring you to open the markdown file first.

## Command Line Examples

Execute a basic single-page analysis:

```bash
claude-code /geo page https://example.com/product/awesome-gadget

```

Pipe the output for terminal viewing:

```bash
claude-code /geo page https://example.com/blog/ai-search-trends | less

```

Generate a PDF version using Pandoc:

```bash
claude-code /geo page https://example.com/blog/ai-search-trends \
  && pandoc GEO-PAGE-ANALYSIS.md -o GEO-PAGE-ANALYSIS.pdf

```

The PDF conversion leverages the same Pandoc-based workflow employed by the `geo-report-pdf` skill, utilizing the HTML template for consistent styling.

## Summary

- The **`/geo page <url>`** command initiates a focused audit defined in [`geo/SKILL.md`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/geo/SKILL.md).
- The **[`scripts/fetch_page.py`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/scripts/fetch_page.py)** script retrieves raw HTML without JavaScript execution to extract structured data.
- Five parallel sub-agents evaluate **AI Visibility**, **Platform Optimization**, **Technical GEO**, **Content E-E-A-T**, and **Schema** signals.
- A **weighted composite score** (0-100) combines Citability (25%), Brand (20%), and E-E-A-T (20%) metrics.
- Output includes both an inline summary and a detailed **[`GEO-PAGE-ANALYSIS.md`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/GEO-PAGE-ANALYSIS.md)** report.
- The **[`templates/geo-report-template.html`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/templates/geo-report-template.html)** file provides the styling scaffold for PDF exports.

## Frequently Asked Questions

### What is the difference between a single-page GEO analysis and a full-site audit?

A single-page GEO analysis utilizes the same five specialized sub-agents and scoring methodology as a full-site audit, but restricts all data inputs to one specific URL. This is ideal for validating new landing pages or campaign content before broader rollout, whereas full-site audits crawl multiple URLs to identify systemic issues across your domain.

### Does the fetch_page.py script execute JavaScript when crawling?

No. According to the source code in [`scripts/fetch_page.py`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/scripts/fetch_page.py), the script retrieves raw HTML only without JavaScript execution. This means dynamically rendered content (such as JavaScript-heavy SPAs) will be evaluated based on their server-side rendered markup or initial HTML payload.

### How is the final GEO score calculated?

The composite score is calculated using weighted percentages from five evaluation categories: Citability (25%), Brand presence (20%), E-E-A-T signals (20%), Technical GEO factors (15%), Schema markup (10%), and Platform Optimization (10%). Each category is scored independently by specialized agents in the `agents/` directory before being aggregated into the 0-100 scale.

### Can I export the single-page analysis as a PDF?

Yes. After generating [`GEO-PAGE-ANALYSIS.md`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/GEO-PAGE-ANALYSIS.md), you can convert it to PDF using Pandoc with the repository’s HTML template. The command `pandoc GEO-PAGE-ANALYSIS.md -o GEO-PAGE-ANALYSIS.pdf` utilizes [`templates/geo-report-template.html`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/templates/geo-report-template.html) for styling, ensuring the PDF matches the visual format of full-site audit reports.