PORTAL / LIBRARY / local-seo-audit

[ SEO ]

/local-seo-audit

Backed by `.claude/context/ai-seo/playbook/01-local-seo-audit.md` (+ `00-field-notes.md`).

Download the skill file (.md)

Placeholders like ACME Agency, <id> and you@example.com mark values that are per-agency — your install fills them with YOUR clients and accounts. If a section references a helper script you don't have yet, it ships with that workflow's install.

/local-seo-audit — AI-Powered Local SEO Audit

Backed by .claude/context/ai-seo/playbook/01-local-seo-audit.md (+ 00-field-notes.md). Method source: Caleb Ulku, "AI SEO Mastery Pro". Shared I/O runner: ACME Agency/scripts/seo_run.mjs.

When to trigger

NOT for: paid ads diagnosis (that's media-buyer / /meta-ads-analyze), or content writing (that's /seo-content).

What it produces

A Google Doc in Klijenti/<Client>/SEO/ titled "Local SEO Audit — <Client>", with:

  1. Snapshot — business, location, site, primary services, current GBP signals seen.
  2. Competition assessment — is this niche+location winnable? (uses the playbook's low-competition signals).
  3. Technical audit — findings against the playbook checklist (indexability, speed signals, mobile, title/meta, NAP, internal linking, schema presence).
  4. GBP gap analysis — what's missing/weak vs the GBP playbook (categories, description, services, posts, ACME Agencyws).
  5. Core 30 / content gap — how far the site is from the Core 30 structure (topical + geographic relevance).
  6. AI-visibility gap — is the business present in ChatGPT / AI Overviews / Bing (quick GEO read).
  7. Prioritized 30/60/90-day plan — ordered actions, each tagged with the skill that executes it.

Step-by-Step

1. Parse the request

2. Gather context (script)

node ACME Agency/scripts/seo_run.mjs --skill local-audit --mode gather \
  --client "<name>" --url "<url>" --location "<city>"

This prints a JSON CONTEXT block: resolved business facts (Slack channel, Drive folder), client notes, and the scraped site (homepage title/description/markdown + key pages). Read it.

3. Read the method

4. Do the audit

Working from the scraped site + the playbook, write the deliverable as markdown (use #/##/###, bullet lists, and pipe tables). Be specific and evidence-based — cite what you actually saw on the site. Apply the playbook's rules literally:

Write it to a temp file, e.g. ACME Agency/clients/<Client>/SEO/audit.md (create the folder) or /tmp/seo-audit.md.

5. Save + report (script)

node ACME Agency/scripts/seo_run.mjs --skill local-audit --mode save \
  --client "<name>" --in "<path to audit.md>" \
  --title "Local SEO Audit — <Client>" \
  --slack "*Local SEO Audit — <Client>*
Competition: <one-word verdict>. Top 3 priorities: <a>, <b>, <c>."

Guardrails