How to Run an SEO Audit in Claude Code With Live Search Data
A practical first audit, from provider setup to a checked action list.
Part of the guide Rhize Plugins for Claude Code: Which Ones Should You Install?

On this page
Start with a bounded SEO audit
To run an SEO audit in Claude Code with live data, connect a search-data provider, define the URL and crawl scope, request evidence-backed findings and review the fixes before applying them. The SEO/AEO/GEO plugin packages those tasks around DataForSEO, with separate code-review guidance for Next.js and Sanity.
A useful first request is: "Audit this page and its immediate internal links. Report the data source, crawl date, confirmed problems and anything unavailable. Recommend changes, but do not edit or deploy." A single page is easier to validate than an unbounded whole-site crawl.
What Problem Does It Solve — and What's the Difference Between SEO, AEO, and GEO?
SEO covers search visibility and technical eligibility. AEO and GEO are industry terms for making content useful to answer-oriented and generative search experiences. They overlap; none provides a separate guarantee of inclusion in an AI answer.
Define which surface you want to measure: a Google result, an AI Overview source or a supported provider's brand-mention response. A missing result from one query is not proof that a brand never appears. Record the query, location, language, provider and date.
How Does the Plugin Work?
Skills supply reusable instructions; namespaced commands provide explicit entry points. Install the plugin, confirm that the DataForSEO connection works, then use /seo-aeo-geo:seo-audit with the agreed URL and limits. Review the request scope before a paid crawl begins.
The released plugin has seven skills. Live crawl, search, keyword and backlink requests need DataForSEO access. Content-editing guidance and Next.js/Sanity code review can work on supplied material without a live data call. Keep that distinction visible when a data connection is unavailable.
What Skills Does the Plugin Ship With?
Select the skill for the job. A trigger description can help the assistant find it, but an explicit command is useful when you want to make the chosen workflow clear.
| Skill | What it does |
|---|---|
| seo-site-audit | Runs a DataForSEO OnPage crawl (with JS rendering for SPA/Next.js sites) and produces a prioritized report covering on-page elements, technical health, and structured data, scored Critical → High → Medium → Low |
| keyword-intelligence | Expands seed keywords into 50-200 scored candidates using Keywords Data, Labs, and SERP APIs, classifies intent, and clusters them into content-pillar groups |
| content-seo | Applies title tag and meta description formulas, heading hierarchy rules, E-E-A-T implementation, internal linking guidelines, and JSON-LD templates to optimize a specific page |
| aeo-geo-optimization | Checks AI Overview citations, LLM brand mentions across ChatGPT/Claude/Perplexity/Gemini, AI crawler robots.txt rules, and restructures content for extraction-friendly formatting |
| backlink-intelligence | Reads a DataForSEO Backlinks API profile — authority scoring, anchor text health, competitor link-gap analysis, and broken-link reclamation |
| serp-intelligence | Pulls live SERP snapshots and historical rank data, maps which SERP features exist and who owns them, and tracks rank drops or gains over time |
| nextjs-sanity-seo | Implements Next.js App Router + Sanity SEO patterns directly in code — schema fields, generateMetadata, sitemaps, JSON-LD components — no DataForSEO calls involved |
What Commands Does the Plugin Ship With?
Commands provide a workflow, not a guarantee of complete evidence or approved edits. Reports should identify partial crawls, provider failures and missing measurements. Writing code and deploying it remain separate authorized steps.
| Command | What it does |
|---|---|
| /seo-aeo-geo:seo-audit <url> | Full SEO audit — on-page, technical, structured data — with a 0-100 health score and prioritized action plan |
| /seo-aeo-geo:keyword-research <topic> | Keyword discovery, intent classification, clustering, and competitor gap analysis |
| /seo-aeo-geo:serp-check <keyword> | Live SERP snapshot — organic positions, featured snippets, PAA, AI Overview citations |
| /seo-aeo-geo:backlink-audit <domain> | Backlink profile analysis, authority distribution, and link-gap opportunities |
| /seo-aeo-geo:content-optimize <url or file> | On-page SEO, AEO, and structured data optimization for one page or file |
| /seo-aeo-geo:competitor-analysis <domain> <competitor> | Competitive teardown across keywords, backlinks, and SERP feature ownership |
| /seo-aeo-geo:ai-visibility <domain> | Dated visibility sample using available AI search/mention endpoints, plus crawler-access review |
| /seo-aeo-geo:technical-audit <url> | Focused pass on Core Web Vitals, crawlability, and indexation only |
| /seo-aeo-geo:rank-track <domain> | Historical rankings available from the configured provider, with coverage stated |
| /seo-aeo-geo:code-seo-review [path] | Audits a Next.js/Sanity codebase against a 10-point SEO checklist and can apply fixes directly |
How Do You Actually Use the Plugin?
You use it the same way you'd talk to a colleague running the audit — describe the site, page, or question, and the right skill or command activates. Here are three example prompts pulled directly from real workflows:
Audit a page: /seo-aeo-geo:seo-audit https://example.com/service. State the crawl limit and whether JavaScript rendering is needed. Ask for each finding's affected URL, evidence and verification step. A health score is a summary, not a substitute for that list.
Check AI visibility separately: /seo-aeo-geo:ai-visibility example.com. Review which provider endpoints and query set were used. Treat the result as a dated sample, and distinguish unavailable observations from zero mentions.
Review code when appropriate: /seo-aeo-geo:code-seo-review apps/web inspects a Next.js/Sanity codebase. Ask for a report first, then authorize scoped changes. Check generated metadata and structured data against the public page before deploying.
After the first audit, prioritize issues that block access or mislead users, then improve the page's answer to its intended query. Keyword research can inform a revision, but only use measured fields actually returned by the provider. Recheck the affected page after an approved fix instead of treating a changed file as a verified public result.
What Do You Need to Get Started?
For live requests, the released plugin needs DATAFORSEO_USERNAME and DATAFORSEO_PASSWORD. On macOS, its launcher can obtain them through the Keychain helper; supported Claude hosts can also inherit explicitly supplied environment variables. Keep credentials out of prompts, article drafts and committed configuration.
The current Codex manifest uses the bundled secret launcher and expects the documented Keychain setup rather than exported shell credentials. For Claude Code, verify the environment or helper used by the launched process. A missing connection should be reported as unavailable; do not replace live measurements with model guesses. /content-optimize and code-facing review can still work on supplied content without a live data call.
The plugin ships advisory hooks for SEO-related edits and reads. Its former standalone SessionStart banner has been removed. Hooks can remind an operator to review metadata or schema, but they do not establish that a crawl completed or that a public page is correct.
Who Is This Plugin For?
This workflow suits a marketer or developer who can review the evidence and act on a bounded set of findings. The live-data tools are not limited to Next.js; the code implementation skill is. Confirm provider access, usage charges and site ownership before expanding the crawl.
In Claude Code, add the marketplace with /plugin marketplace add https://github.com/Rhize-Media/rhize-plugins, install seo-aeo-geo@rhize-plugins and start a fresh session. Follow the current credential setup at https://github.com/Rhize-Media/rhize-plugins/tree/main/seo-aeo-geo. Start with one page and one reviewed action list. If you want a self-service starting point for your business visibility, use the Rhize Scan.
Frequently Asked Questions
Does the plugin work without DataForSEO credentials?
What's the difference between /seo-audit and /technical-audit?
Can the plugin actually edit my code, or does it just report problems?
Why do DataForSEO's backlink or rank numbers not match Ahrefs or Semrush?
Want this working in your business — not just on paper?
Book a 30-min call to talk through your workflow, ask your questions, and discuss a useful next step. No pitch, no obligation.
Book a 30-min call