# SEO Campaign

> Analyze/audit a site and engineer a full 6-month SEO campaign — the research bank, strategy, and locked KPI plan. Use for "build an SEO campaign for <site>", "engineer the SEO", "6 month seo plan from zero". Builds the campaign; content and measurement loops then run it.

- Skill: `danielimad/seo-campaign` (Agent Skill)
- Install (CLI): `npx skillmds@latest add danielimad/seo-campaign`
- Raw SKILL.md: https://api.skillmd.com/api/skills/danielimad/seo-campaign/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Marketing & Growth
- Author: danielimad (https://skillmd.com/u/danielimad)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/danielimad/seo-campaign

---


# SEO Campaign — engineer a 6-month campaign from zero

Boundary: this BUILDS the campaign — the research bank, the strategy, the locked plan, the task queue. It does not write the content and it does not run the daily measurement loop; it produces what those consume.

**Before starting, get the project config**: the Search Console property, which paid research tool is available and its remaining credits, the target market and language, and where campaign files should live. The repo's runbook (see the /runbook skill) is the right home for these.

**Prerequisite: run a technical sanity pass first** (see the /seo-health skill). You cannot rank what search engines cannot crawl, and content spend on a broken site is wasted.

## The order is the point (skip/reorder = pages that rank but get 0 clicks, or burnt credits)

### Phase 0–1 — Business + measurement (free, no tools)
- Audience & voice brief: who the buyer is, who it's NOT for, the wedge, voice do/don'ts, country/market. Everything later cites it.
- Confirm Search Console is live (domain verified, sitemap submitted). It is the free source of truth and everything downstream measures against it.
- Fix any blocker the technical pass surfaced before spending on content.

### Phase 2 — Research-tool gate (credit discipline)
- State the tool, credits remaining, and the spend plan in three lines, then WAIT for approval. Research credits are finite and easy to burn on queries that answer nothing.
- Validate access with ONE tiny call. Exhaust FREE question sources first (Google autocomplete, live PAA, GSC) before spending a unit.

### Phase 3–5 — The research burst (paid, ONE time, cheap→expensive) → the bank
- **Phase 3** `keyword-map.md`: seed topics + commercial variants + question seeds → Vol on all (cheap), kill zero-vol → KD on survivors only. Flag 🟢<30 / 🟡30–49 / 🔴50+, build a Quick-Wins Queue (value × winnability).
- **Phase 4** `serp-and-competitor-intel.md` + `service-pages-keywords.md`: per priority term run SERP-organic → read top 8 for the format Google rewards + winnability (beatable vs giants); competitor-gap on 2–3 content peers; split intent (informational→blog clusters, commercial→one winnable target per money page).
- **Phase 5** `keyword-depth-bank.md` (the step everyone skips — this is what makes pages get *clicked*): per page (pillar AND every spoke) pull its PAA questions + screen for **contamination** (keyword's SERP serves the wrong audience — flag, write the business angle). Apply the **Determined-Selection Gate** (all 5: Volume · KD · SERP-intent match · has ≥3 real PAA · fills a gap, not cannibalizing).
- **Known tool traps:** some API wrappers silently drop the difficulty field — pull KD as its own call and verify it arrived. SERP features come from the organic report, not the full-search endpoint. An empty result for comparison terms ("X vs Y") is normal, not a failure.
- End of Phase 5 = BANK COMPLETE → **stop paying**, everything downstream is free.

### Phase 6 — Synthesize → the plan
- `strategy.md`: the bets — clusters, commercial pages, authority plan, who writes what. The master reference.
- `SEO-CAMPAIGN.md`: pull the Search Console baseline (current clicks, impressions, indexed pages) → **lock the 6-month KPI targets** + the pillar workplan across the layers: Technical → Content → Authority → Measurement. Locking matters: targets set after the fact are not targets.

### Phase 7 handoff — seed execution
- Turn the writing cadence into a task queue in whatever tracker the project uses: numbered content tasks, paced realistically, with owners and due dates in the team's timezone.
- Note the three parallel always-on workstreams: AI-search/answer-engine visibility, authority and backlinks, and search-console measurement.

## Deliverables
The campaign files in the repo (dated), the locked `SEO-CAMPAIGN.md`, the seeded writing queue, and a short summary: clusters banked, baseline numbers, locked targets, credits spent, next action.

## Rules
- Credit-gated: never spend the paid tool without green; once banked, don't re-spend (KD drifts — re-validate a single term cheaply only if a number looks stale).
- Evidence over assumption: SERP tells the truth, not the keyword; re-verify contamination/gap flags by hand.
- Commit and deploy through the /ship gate — approval required. No content writing in this skill.

