SEO Content Audit
seranking/seo-skills
E-E-A-T + CITE quality audit for an EXISTING piece of content.
Scores how likely AI assistants are to quote passages from a web page and suggests rewrites that make those passages easier to extract.
$ npx skills add zubair-trabzada/geo-seo-claude --skill geo-citability -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install zubair-trabzada/geo-seo-claude geo-citability --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/zubair-trabzada/geo-seo-claude.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/geo-citability .claude/skills/geo-citability && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "geo-citability" agent skill from https://github.com/zubair-trabzada/geo-seo-claude/tree/main/skills/geo-citability into .claude/skills/geo-citability/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "geo-citability", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/zubair-trabzada/geo-seo-claude/tree/main/skills/geo-citabilityType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add zubair-trabzada/geo-seo-claude --skill geo-citability -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install zubair-trabzada/geo-seo-claude geo-citability --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/zubair-trabzada/geo-seo-claude.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/geo-citability .agents/skills/geo-citability && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "geo-citability" agent skill from https://github.com/zubair-trabzada/geo-seo-claude/tree/main/skills/geo-citability into .agents/skills/geo-citability/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "geo-citability", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add zubair-trabzada/geo-seo-claude --skill geo-citability -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install zubair-trabzada/geo-seo-claude geo-citability --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/zubair-trabzada/geo-seo-claude.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/geo-citability .cursor/skills/geo-citability && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "geo-citability" agent skill from https://github.com/zubair-trabzada/geo-seo-claude/tree/main/skills/geo-citability into .cursor/skills/geo-citability/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "geo-citability", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/zubair-trabzada/geo-seo-claude.git --path skills/geo-citability--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add zubair-trabzada/geo-seo-claude --skill geo-citability -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install zubair-trabzada/geo-seo-claude geo-citability --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/zubair-trabzada/geo-seo-claude.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/geo-citability .gemini/skills/geo-citability && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "geo-citability" agent skill from https://github.com/zubair-trabzada/geo-seo-claude/tree/main/skills/geo-citability into .gemini/skills/geo-citability/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "geo-citability", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install zubair-trabzada/geo-seo-claude geo-citabilityInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add zubair-trabzada/geo-seo-claude --skill geo-citability -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/zubair-trabzada/geo-seo-claude.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/geo-citability .github/skills/geo-citability && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "geo-citability" agent skill from https://github.com/zubair-trabzada/geo-seo-claude/tree/main/skills/geo-citability into .github/skills/geo-citability/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "geo-citability", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add zubair-trabzada/geo-seo-claude --skill geo-citability -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install zubair-trabzada/geo-seo-claude geo-citability --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/zubair-trabzada/geo-seo-claude.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/geo-citability .opencode/skills/geo-citability && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "geo-citability" agent skill from https://github.com/zubair-trabzada/geo-seo-claude/tree/main/skills/geo-citability into .opencode/skills/geo-citability/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "geo-citability", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
geo-citabilityScores how likely AI assistants are to quote passages from a web page and suggests rewrites that make those passages easier to extract.
The skill measures citability: how readily AI systems such as ChatGPT, Claude, Perplexity and Gemini can lift a passage from a page and present it as an answer. The output is a score from 0 to 100 with specific rewrite suggestions. Its rubric favors passages that are self-contained, rich in facts such as statistics, dates or named entities, and that answer a question in their first sentences, with a preferred length of about 134 to 167 words.
Scoring is split into weighted categories, beginning with answer block quality at 30% of the total. That category looks for definition patterns like 'X is', answer-first structure, quantified answers and direct comparisons, and its bands run from 0-29 for pages with no identifiable answer blocks to 90-100 for pages where every major section opens with a direct answer. The skill frames this as different from classic SEO copywriting, which targets keyword density and engagement.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 989cae0. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
ReadGrepGlobBashWebFetchWriteFrom allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are markdown).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
AI Citability Scorer loads about 3.7k tokens when it runs. Until then it costs about 67 tokens; SKILL.md has 1,548 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check noted patterns worth knowing about, such as sudo or a known installer.
allowed-tools: Read, Grep, Glob, Bash, WebFetch, WriteAutomated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from zubair-trabzada/geo-seo-claude at commit 989cae0, republished under its MIT licence (© zubair-trabzada). 1,548 words, ~3,701 tokens.
.claude/skills/geo-citability/SKILL.md (or your agent's skills folder).AI language models cite passages that meet specific structural criteria. Research from Princeton, Georgia Tech, and IIT Delhi (2024) found that GEO-optimized content achieves 30-115% higher visibility in AI-generated responses. The key finding: AI systems preferentially extract and cite passages that are 134-167 words long, self-contained (understandable without surrounding context), fact-rich (containing specific statistics, dates, or named entities), and directly answer a question in the first 1-2 sentences.
This is fundamentally different from traditional SEO copywriting, which optimizes for keyword density and user engagement metrics. GEO citability optimizes for extractability -- the ease with which an AI system can pull a passage from your content and present it as a direct answer.
This measures whether content contains clear, quotable answer passages that AI systems can extract verbatim.
Scoring Criteria:
| Score | Criteria |
|---|---|
| 90-100 | Every major section opens with a 1-2 sentence direct answer. Uses "X is..." or "X refers to..." patterns. First 40-60 words of each section can stand alone as a complete answer. |
| 70-89 | Most sections have clear answer openings. Some definition patterns present. Answers are identifiable but may need minor context. |
| 50-69 | Some sections have answer-like openings but many bury the answer in the middle or end of paragraphs. Few explicit definition patterns. |
| 30-49 | Answers are generally buried in long paragraphs. No consistent definition patterns. Content is narrative-driven rather than answer-driven. |
| 0-29 | No identifiable answer blocks. Content is entirely narrative, conversational, or fragmented. AI would struggle to extract any quotable passage. |
What to look for:
High-citability example:
Content delivery networks (CDNs) are distributed server systems that cache and serve
web content from locations geographically close to end users. A CDN reduces latency
by 50-70% on average by serving assets from edge servers rather than a single origin
server. The three largest CDN providers as of 2025 are Cloudflare (serving approximately
20% of all websites), Amazon CloudFront, and Akamai Technologies.Word count: 58. Self-contained: Yes. Facts: 3 specific data points. Definition pattern: Yes.
Low-citability example:
If you've ever wondered why some websites load faster than others, the answer might
surprise you. There's this amazing technology that has been around for a while now.
It's changed the way we think about web performance. Let me explain how it works and
why you should care about it for your business.Word count: 52. Self-contained: No (no topic identified). Facts: 0. Definition pattern: No.
This measures whether individual passages can be extracted and understood without needing the surrounding content.
Scoring Criteria:
| Score | Criteria |
|---|---|
| 90-100 | 80%+ of content blocks are fully self-contained. Each passage names its subject explicitly. No reliance on pronouns referencing earlier content. Contains specific facts within the passage. |
| 70-89 | 60-79% of content blocks are self-contained. Most passages name their subject. Occasional pronoun references that require context. |
| 50-69 | 40-59% of content blocks are self-contained. Mixed use of explicit subjects and pronouns. Some passages require reading prior sections. |
| 30-49 | 20-39% of content blocks are self-contained. Heavy reliance on pronouns and contextual references. Most passages need surrounding text. |
| 0-29 | Under 20% self-contained. Content reads as a continuous narrative where extracting any paragraph loses meaning. |
Self-containment checklist for each passage:
This measures the structural formatting that helps AI systems parse and segment content.
Scoring Criteria:
| Score | Criteria |
|---|---|
| 90-100 | Clean H1 > H2 > H3 hierarchy. Question-based headings for informational content. Short paragraphs (2-4 sentences). Tables for comparisons. Ordered lists for processes. Unordered lists for features/options. |
| 70-89 | Good heading hierarchy with minor skips. Some question-based headings. Mostly short paragraphs. Some use of tables and lists. |
| 50-69 | Heading hierarchy present but inconsistent. Few question-based headings. Mix of short and long paragraphs. Limited tables/lists. |
| 30-49 | Minimal heading structure. No question-based headings. Long paragraphs dominate. Rare use of tables/lists. |
| 0-29 | No heading structure or severely broken hierarchy. Wall-of-text paragraphs. No tables or lists. |
Structural best practices for AI citability:
This measures the presence of specific, verifiable data points that AI systems prioritize when selecting citation sources.
Scoring Criteria:
| Score | Criteria |
|---|---|
| 90-100 | 5+ specific statistics per 500 words. All claims backed by named sources or dates. Uses exact numbers (not "many" or "several"). Includes percentages, dollar amounts, timeframes, and named studies. |
| 70-89 | 3-4 statistics per 500 words. Most claims have sources. Mostly specific numbers with occasional vague quantifiers. |
| 50-69 | 1-2 statistics per 500 words. Some claims sourced. Mix of specific and vague numbers. |
| 30-49 | Less than 1 statistic per 500 words. Few sourced claims. Predominantly vague quantifiers. |
| 0-29 | No statistics. No sourced claims. All quantifiers are vague ("many," "most," "a lot"). |
What counts as a statistic:
What does NOT count:
This measures whether the content provides information that AI systems cannot find elsewhere, making it a necessary citation source.
Scoring Criteria:
| Score | Criteria |
|---|---|
| 90-100 | Contains first-party research, proprietary data, original surveys, or unique datasets. Presents analysis or insights not found on any other page. Clear methodological descriptions. |
| 70-89 | Contains some original insights or unique analysis of existing data. Offers a distinct perspective with original examples. |
| 50-69 | Mostly synthesizes existing information but adds some unique commentary or examples. |
| 30-49 | Largely derivative content that restates common knowledge with minimal original contribution. |
| 0-29 | Entirely derivative. All information is available (often verbatim) on higher-authority sources. |
Signals of unique content:
For each content block, calculate:
Block Citability Score = (Answer * 0.30) + (SelfContain * 0.25) + (Structure * 0.20) + (Stats * 0.15) + (Unique * 0.10)
For each block scoring below 60, generate a specific rewrite suggestion:
Generate a file called GEO-CITABILITY-SCORE.md:
# AI Citability Analysis: [Page Title]
**URL:** [URL]
**Analysis Date:** [Date]
**Overall Citability Score: [X]/100**
**Citability Coverage:** [X]% of content blocks score above 70
---
## Score Summary
| Category | Score | Weight | Weighted |
|---|---|---|---|
| Answer Block Quality | [X]/100 | 30% | [X] |
| Passage Self-Containment | [X]/100 | 25% | [X] |
| Structural Readability | [X]/100 | 20% | [X] |
| Statistical Density | [X]/100 | 15% | [X] |
| Uniqueness & Original Data | [X]/100 | 10% | [X] |
| **Overall** | | | **[X]/100** |
---
## Strongest Content Blocks
### 1. "[Heading]" -- Score: [X]/100
> [First 2 sentences of the block]
**Why it works:** [Explanation]
### 2. "[Heading]" -- Score: [X]/100
> [First 2 sentences of the block]
**Why it works:** [Explanation]
---
## Weakest Content Blocks (Rewrite Priority)
### 1. "[Heading]" -- Score: [X]/100
**Current opening:**
> [First 2 sentences as they exist]
**Problem:** [Specific issue -- buried answer, no facts, etc.]
**Suggested rewrite:**
> [Rewritten opening 2-3 sentences with answer-first pattern and facts]
**Additional improvements:**
- [Add table comparing X, Y, Z]
- [Include statistic about ...]
- [Split long paragraph into 2-3 shorter ones]
---
## Quick Win Reformatting Recommendations
1. **[Specific recommendation]** -- Expected citability lift: +[X] points
2. **[Specific recommendation]** -- Expected citability lift: +[X] points
3. **[Specific recommendation]** -- Expected citability lift: +[X] points
4. **[Specific recommendation]** -- Expected citability lift: +[X] points
5. **[Specific recommendation]** -- Expected citability lift: +[X] points
---
## Per-Section Scores
| Section Heading | Words | Answer Quality | Self-Contained | Structure | Stats | Unique | Overall |
|---|---|---|---|---|---|---|---|
| [H2 heading] | [N] | [X] | [X] | [X] | [X] | [X] | [X] || AI System | Citation Preference |
|---|---|
| ChatGPT (Search) | Prefers passages with explicit definitions, named sources, and recent dates. Tends to cite 2-4 sources per response. |
| Perplexity | Heavily favors fact-dense passages with statistics. Cites 4-8 sources per response. Values recency highly. |
| Claude | Prefers well-structured, comprehensive passages. Values nuance and accuracy over brevity. |
| Gemini (AI Overviews) | Prefers concise answer blocks (40-60 words). Values content already ranking in top 10 organic results. |
| Copilot (Bing) | Similar to Gemini. Prefers passages from high-authority domains with clear factual claims. |
© zubair-trabzada, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/geo-citability of zubair-trabzada/geo-seo-claude.
Open the folder on GitHubat commit 989cae0
We found 6 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 2 other GitHub owners. This page covers the copy in zubair-trabzada/geo-seo-claude, which our catalogue first saw on October 7, 2026.
AI Citability Scorer next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| AI Citability Scorer this skillzubair-trabzada/geo-seo-claude | 11k | 2 repos | ~3.7k | Automated safety check: Notes | MIT | |
| SEO Content Auditseranking/seo-skills | 161 | — | ~3k | Automated safety check: Pass | MIT | |
| SEO ContentAgriciDaniel/codex-seo | 799 | 5 repos | ~2.3k | Automated safety check: Pass | MIT | |
| Editorial QArampstackco/claude-skills | 945 | — | ~5.6k | Automated safety check: Pass | MIT | |
| SEO Planseranking/seo-skills | 161 | — | ~4.4k | Automated safety check: Pass | MIT | |
| SEO Geoericrisco/rsc-harness | 180 | — | ~2.8k | Automated safety check: Pass | MIT |
seranking/seo-skills
E-E-A-T + CITE quality audit for an EXISTING piece of content.
AgriciDaniel/codex-seo
Content quality and E-E-A-T analysis with AI citation readiness assessment.
rampstackco/claude-skills
Pre-publish QA framework for content. An agent skill from rampstackco/claude-skills.
seranking/seo-skills
Build a phased SEO roadmap for a domain — quarter-by-quarter, tied to the site's competitive position, content gaps, technical debt, and AI Search readiness.
ericrisco/rsc-harness
A skill your agent uses when one existing page needs to rank in Google AND get cited by AI answer engines — auditing a URL for on-page SEO, structured-data JSON-LD, GEO citation levers, Core Web…
mohitagw15856/pm-claude-skills
Audit a content library, docs site, or blog for AI-generated filler that's eroding trust and search performance — and triage what to fix, rewrite, or delete.
zubair-trabzada/geo-seo-claude
Audits a website for AI search visibility across ChatGPT, Claude, Perplexity and Google AI Overviews while checking traditional SEO, schema and E-E-A-T content quality.
zubair-trabzada/geo-seo-claude
Compares a baseline and a current GEO audit for a client, calculates score changes and action item progress, and writes a monthly progress report.
zubair-trabzada/geo-seo-claude
Builds a client-ready AI-search-optimization proposal from an existing GEO audit, with pricing tiers, an ROI estimate and a markdown document ready to send.
zubair-trabzada/geo-seo-claude
Scores a page's content against Google's E-E-A-T framework and AI-citability structure, then writes a scored gap-analysis report.
zubair-trabzada/geo-seo-claude
Tracks GEO agency leads and clients through a sales pipeline in a local JSON file, with notes, audit scores, deal values and a pipeline summary.
zubair-trabzada/geo-seo-claude
Validates an existing llms.txt file or crawls a site to generate a new one, following the format rules for a root-level Markdown file aimed at AI systems.
Categories
Scores how likely AI assistants are to quote passages from a web page and suggests rewrites that make those passages easier to extract. The skill measures citability: how readily AI systems such as ChatGPT, Claude, Perplexity and Gemini can lift a passage from a page and present it as an answer. The output is a score from 0 to 100 with specific rewrite suggestions.
AI Citability Scorer fits situations like: auditing how quotable a landing page or article is for AI answers; rewriting a section so the first sentences answer the question directly; comparing the citability of several pages on one site.
Run `npx skills add zubair-trabzada/geo-seo-claude --skill geo-citability -a claude-code`. Or copy the skill folder (skills/geo-citability in zubair-trabzada/geo-seo-claude) into .claude/skills/geo-citability in your project. Claude Code loads it when a task matches its description.
Run `npx skills add zubair-trabzada/geo-seo-claude --skill geo-citability -a codex`. Or copy the skill folder (skills/geo-citability in zubair-trabzada/geo-seo-claude) into .agents/skills/geo-citability in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add zubair-trabzada/geo-seo-claude --skill geo-citability -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/geo-citability, .gemini/skills/geo-citability, .github/skills/geo-citability and .opencode/skills/geo-citability in your project.
SKILL.md names no scripts, command-line tools or credentials: AI Citability Scorer is instructions for the agent only. Our summary lists: A page URL or file to analyze. Its frontmatter pre-approves these tools: Read, Grep, Glob, Bash, WebFetch, Write.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.
AI Citability Scorer is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.7k tokens (SKILL.md is roughly 15k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with AI Citability Scorer: SEO Content Audit (seranking/seo-skills, 161 stars), SEO Content (AgriciDaniel/codex-seo, 799 stars), Editorial QA (rampstackco/claude-skills, 945 stars) and SEO Plan (seranking/seo-skills, 161 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
zubair-trabzada (a GitHub user) maintains it in zubair-trabzada/geo-seo-claude, which has 10,982 GitHub stars. The repository holds 16 skills in this directory. The repository was last updated on October 10, 2026.
Source: zubair-trabzada/geo-seo-claude on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.