AI Citability Scorer
zubair-trabzada/geo-seo-claude
Scores how likely AI assistants are to quote passages from a web page and suggests rewrites that make those passages easier to extract.
E-E-A-T + CITE quality audit for an EXISTING piece of content.
$ npx skills add seranking/seo-skills --skill seo-content-audit -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install seranking/seo-skills seo-content-audit --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/seranking/seo-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/seo-content-audit .claude/skills/seo-content-audit && 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 "seo-content-audit" agent skill from https://github.com/seranking/seo-skills/tree/main/skills/seo-content-audit into .claude/skills/seo-content-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "seo-content-audit", 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/seranking/seo-skills/tree/main/skills/seo-content-auditType 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 seranking/seo-skills --skill seo-content-audit -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install seranking/seo-skills seo-content-audit --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/seranking/seo-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/seo-content-audit .agents/skills/seo-content-audit && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "seo-content-audit" agent skill from https://github.com/seranking/seo-skills/tree/main/skills/seo-content-audit into .agents/skills/seo-content-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "seo-content-audit", 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 seranking/seo-skills --skill seo-content-audit -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install seranking/seo-skills seo-content-audit --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/seranking/seo-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/seo-content-audit .cursor/skills/seo-content-audit && 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 "seo-content-audit" agent skill from https://github.com/seranking/seo-skills/tree/main/skills/seo-content-audit into .cursor/skills/seo-content-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "seo-content-audit", 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/seranking/seo-skills.git --path skills/seo-content-audit--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 seranking/seo-skills --skill seo-content-audit -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install seranking/seo-skills seo-content-audit --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/seranking/seo-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/seo-content-audit .gemini/skills/seo-content-audit && 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 "seo-content-audit" agent skill from https://github.com/seranking/seo-skills/tree/main/skills/seo-content-audit into .gemini/skills/seo-content-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "seo-content-audit", 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 seranking/seo-skills seo-content-auditInstalls 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 seranking/seo-skills --skill seo-content-audit -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/seranking/seo-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/seo-content-audit .github/skills/seo-content-audit && 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 "seo-content-audit" agent skill from https://github.com/seranking/seo-skills/tree/main/skills/seo-content-audit into .github/skills/seo-content-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "seo-content-audit", 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 seranking/seo-skills --skill seo-content-audit -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install seranking/seo-skills seo-content-audit --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/seranking/seo-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/seo-content-audit .opencode/skills/seo-content-audit && 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 "seo-content-audit" agent skill from https://github.com/seranking/seo-skills/tree/main/skills/seo-content-audit into .opencode/skills/seo-content-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "seo-content-audit", 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.
seo-content-auditE-E-A-T + CITE quality audit for an EXISTING piece of content.
SEO Content Audit is an agent skill from seranking/seo-skills. E-E-A-T + CITE quality audit for an EXISTING piece of content. Scores Experience, Expertise, Authoritativeness, Trustworthiness, and citation-readiness for AI search; surfaces veto items that block publication; produces a publish / publish-with-fixes / no-publish verdict. Distinct from seo-content-brief (produces a NEW article from a topic) and from seo-page (URL-level keyword/traffic intelligence). Use when the user asks "content quality audit", "E-E-A-T check", "is this content good", "review this article"…
Its SKILL.md is about 3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 5 other files, including reference files (for example `references/cite.md`, `references/core-eeat.md` and `templates/verdict.md`).
It sits in Marketing & SEO, covering On-page SEO, Citation management and Content marketing. It works with Firecrawl and Model Context Protocol. The repository describes itself as: Claude SEO Skills — production Claude Agent Skills for the SE Ranking MCP server. Content briefs, AI Search share of voice, audits, backlink gaps, keyword clusters, schema… The licence is MIT.
3 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit fd6d140. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
python3From 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.
SEO Content Audit loads about 3k tokens when it runs, and up to ~7.3k if it reads all its reference files. Until then it costs about 150 tokens; SKILL.md has 1,115 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 found no risky patterns in SKILL.md.
Automated 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 seranking/seo-skills at commit fd6d140, republished under its MIT licence (© seranking). 1,115 words, ~2,951 tokens.
.claude/skills/seo-content-audit/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.Example output: examples/seo-content-audit-stripe-rate-limiters-20260514/VERDICT.md
Score an existing piece of content against modern E-E-A-T (Experience, Expertise, Authoritativeness, Trustworthiness) and CITE (Clear answer, Include primary stats, Timestamp, Entity authority) rubrics. Surface veto items that block publication regardless of overall score. Produce a clear publish / publish-with-fixes / no-publish verdict with the top 5 fixes.
WebFetch tool available.us).Fetch content WebFetch (always) + mcp__firecrawl-mcp__firecrawl_scrape (when available)
skills/seo-firecrawl/references/preflight.md for the canonical 3-stage preflight (credit balance, Firecrawl availability, Google APIs). Skill-specific notes:--no-firecrawl to force WebFetch-only inspection (lower-confidence veto checks; see step 4 caveat).skills/seo-google/references/cross-skill-integration.md § "seo-content-audit" for the full recipe.@type, classify the page as one of: ultimate guide / pillar, how-to, listicle / best-of, comparison (X vs Y), explainer, review (single product), landing page (commercial). Look up the corresponding word-count floor from references/core-eeat.md → "Word-count floors by page type". Surface the detected type, the applied floor, and the actual word count in evidence/01-content-snapshot.md. If the actual word count is materially below the floor, flag it for the depth E-E-A-T items (auto ✗ unless the auditor justifies the exception).metadata: canonical URL, robots, lang, og:title.html: every <script type="application/ld+json"> block. Parse for Article / BlogPosting schema and extract author (name, @type: Person, optional url + sameAs), datePublished / dateModified (ISO 8601), publisher, mainEntityOfPage. Detect Person schema standalone if present.<a rel="author">, <meta name="author">, <span class="byline">, [itemprop="author"]). Distinguish a real byline element from prose mentions ("Written by Jane in collaboration..." in body text is not a byline; <a rel="author">Jane Doe</a> is).(skipped — Firecrawl required) in evidence/01-content-snapshot.md. Step 4's veto checks #1 and #4 fall back to prose-level inspection (less reliable) — surface that caveat in VERDICT.md.AIO context DATA_getAiOverview and DATA_getAiOverviewLeaderboard
AIO prompt sampling DATA_getAiPromptsByTarget
3b. GA4 organic traffic on the audited URL (only if google-api.json is present, tier ≥ 2)
python3 scripts/ga4_report.py --report top-pages --days 28 --jsonVERDICT.md "## Snapshot" alongside the existing AIO citation cross-check:{sessions} sessions / {users} users / avg engagement {n}sskills/seo-google/references/cross-skill-integration.md § "seo-content-audit" for the full recipe.Score E-E-A-T using references/core-eeat.md
author when available; falls back to prose-level pattern match if Firecrawl is absent (lower confidence — note in VERDICT.md).Score CITE using references/cite.md
Cross-check against AIO winners
Synthesise verdict using templates/verdict.md
Create a folder seo-content-audit-{target-slug}-{YYYYMMDD}/ with:
seo-content-audit-{target-slug}-{YYYYMMDD}/
├── VERDICT.md (publish / publish-with-fixes / no-publish — primary deliverable; inlines content snapshot + AIO context)
├── 03-eeat-scoring.md (60-item rubric scored — load-bearing reference an editor consults item-by-item)
├── 04-cite-scoring.md (30-item rubric scored — load-bearing reference)
├── 05-aio-winner-comparison.md (gap vs cited sources — must remain top-level; live AIO competitive evidence per EVAL_RESULT_v2.md §9)
└── evidence/
├── 01-content-snapshot.md (HTML extracts + page metadata — raw step output)
└── 02-aio-context.md (AIO presence, citations, patterns — raw step output)Step files 01 + 02 are inlined as a "Snapshot" / "AIO context" section in VERDICT.md; the copies in evidence/ preserve raw step output. 03-eeat-scoring.md, 04-cite-scoring.md, and 05-aio-winner-comparison.md stay at top level — editors consult the rubric scoring detail directly, and the AIO winner comparison is the live competitive evidence the rubric verdict rests on.
VERDICT.md follows this shape (also see templates/verdict.md):
# Content Audit: {URL or title}
> Audited {YYYY-MM-DD} · Target keyword: "{keyword}" · Country: {country}
## Verdict: {PUBLISH | PUBLISH WITH FIXES | NO PUBLISH}
{One sentence summary of why}
## Scores
| Dimension | Score | Threshold | Status |
|---|---|---|---|
| Experience | {n}% | 75% | {✓/✗} |
| Expertise | {n}% | 75% | {✓/✗} |
| Authoritativeness | {n}% | 75% | {✓/✗} |
| Trustworthiness | {n}% | 75% | {✓/✗} |
| **E-E-A-T composite** | {n}% | 75% | {✓/✗} |
| Clear answer | {n}% | 70% | {✓/✗} |
| Include stats | {n}% | 70% | {✓/✗} |
| Timestamp | {n}% | 70% | {✓/✗} |
| Entity authority | {n}% | 70% | {✓/✗} |
| **CITE composite** | {n}% | 70% | {✓/✗} |
## Veto checks
- Anonymous author on YMYL: {triggered / not triggered}
- Unsourced factual claims: {triggered / not triggered}
- Undisclosed affiliate / sponsored: {triggered / not triggered}
- AI-generated YMYL with no human review: {triggered / not triggered} ({n}/8 AI-content markers fired)
- ...
## AI Search readiness
- AIO present for "{keyword}": {yes/no}
- Top citation patterns: {list}
- Candidate URL cited in any sampled AIO: {yes/no}
- Gap vs cited sources: {bulleted gaps}
## Snapshot (measured)
- GA4 organic last 28d: {sessions} sessions / {users} users / avg engagement {n}s *(or `not in top-100` / `not configured (Tier 2 required)`)*
## Top 5 fixes
1. {Specific fix linked to a low-scored item or veto}
2. ...
5. ...
## Detailed scoring
See:
- 03-eeat-scoring.md (item-by-item E-E-A-T)
- 04-cite-scoring.md (item-by-item CITE)
- 05-aio-winner-comparison.md (gap analysis)DATA_getCreditBalance before running. ~10–15 SE Ranking credits typical, plus 1 Firecrawl credit per URL audited when Firecrawl is installed (default cap 50 URLs).seo-content-brief for the new-article counterpart: this skill audits existing content, content-brief produces new content.seo-sxo if the page has technical/page-type issues — that's a different diagnosis.references/. They are opinionated — adjust for your domain's editorial standards.© seranking, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 3 other files (references) in skills/seo-content-audit of seranking/seo-skills.
Open the folder on GitHubat commit fd6d140
SEO Content Audit 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 |
|---|---|---|---|---|---|---|
| SEO Content Audit this skillseranking/seo-skills | 160 | — | ~3k | Automated safety check: Pass | MIT | |
| AI Citability Scorerzubair-trabzada/geo-seo-claude | 11k | 2 repos | ~3.7k | Automated safety check: Notes | MIT | |
| SEO ContentAgriciDaniel/codex-seo | 797 | 5 repos | ~2.3k | Automated safety check: Pass | MIT | |
| Citation Source Gap Finderirinabuht12-oss/marketing-skills | 4k | — | ~601 | Automated safety check: Pass | None | |
| SEO Content Gap Auditrampstackco/claude-skills | 941 | — | ~2.3k | Automated safety check: Pass | MIT | |
| Localseodata Toolgarrettjsmith/localseoskills | 120 | — | ~4.1k | Automated safety check: Pass | MIT |
zubair-trabzada/geo-seo-claude
Scores how likely AI assistants are to quote passages from a web page and suggests rewrites that make those passages easier to extract.
AgriciDaniel/codex-seo
Content quality and E-E-A-T analysis with AI citation readiness assessment.
irinabuht12-oss/marketing-skills
Find the exact pages AI assistants cite when answering questions in your category, and identify which ones you can get into.
rampstackco/claude-skills
Audit content gaps and decay using Ahrefs MCP data: missing topics, thin coverage, outdated content, and decaying pages.
garrettjsmith/localseoskills
When the user wants to pull local SEO data — SERP results, local pack rankings, business profile data, reviews, citations, audits, geogrid scans, keyword research, AI visibility, competitor…
rampstackco/claude-skills
Pre-publish QA framework for content. An agent skill from rampstackco/claude-skills.
seranking/seo-skills
Direct access to Google's own SEO data via Search Console (Search Analytics, URL Inspection, Sitemaps), PageSpeed Insights v5, CrUX field data with 25-week history, Indexing API v3, GA4 organic…
seranking/seo-skills
SE Ranking API integration architect. An agent skill from seranking/seo-skills.
seranking/seo-skills
Generate a writer-ready SEO content brief from a target domain and topic.
seranking/seo-skills
Capture an SEO baseline snapshot for a domain or URL, then on later runs compare the current state and surface regressions.
seranking/seo-skills
Ad-hoc web scraping, site mapping, and full-site crawling via Firecrawl MCP.
seranking/seo-skills
Hreflang and international SEO audit for multi-language and multi-region sites.
Works with
Categories
E-E-A-T + CITE quality audit for an EXISTING piece of content. SEO Content Audit is an agent skill from seranking/seo-skills. E-E-A-T + CITE quality audit for an EXISTING piece of content.
SEO Content Audit fits situations like: the user asks content quality audit; is this content good; review this article; citation readiness.
Run `npx skills add seranking/seo-skills --skill seo-content-audit -a claude-code`. Or copy the skill folder (skills/seo-content-audit in seranking/seo-skills) into .claude/skills/seo-content-audit in your project. Claude Code loads it when a task matches its description.
Run `npx skills add seranking/seo-skills --skill seo-content-audit -a codex`. Or copy the skill folder (skills/seo-content-audit in seranking/seo-skills) into .agents/skills/seo-content-audit 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 seranking/seo-skills --skill seo-content-audit -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/seo-content-audit, .gemini/skills/seo-content-audit, .github/skills/seo-content-audit and .opencode/skills/seo-content-audit in your project.
Going by SKILL.md and its folder, SEO Content Audit needs the command-line tools its instructions call (python3). Our summary lists: Python 3.
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 no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
SEO Content Audit is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3k tokens (SKILL.md is roughly 12k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 4.4k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with SEO Content Audit: AI Citability Scorer (zubair-trabzada/geo-seo-claude, 11k stars), SEO Content (AgriciDaniel/codex-seo, 797 stars), Citation Source Gap Finder (irinabuht12-oss/marketing-skills, 4k stars) and SEO Content Gap Audit (rampstackco/claude-skills, 941 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
seranking (a GitHub organization) maintains it in seranking/seo-skills, which has 160 GitHub stars. The repository holds 32 skills in this directory. The repository was last updated on June 25, 2026.
Source: seranking/seo-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.