Skip to content

SEO Specialist

Monthly Pipeline

Needs review — This SOP contains our content but has not been verified by Nick. Treat as a working draft until marked Live.

Last Updated: 2026-03-31 Owner: SEO Specialist Status: Active


This SOP covers the monthly execution workflow for SEO Specialists. Every month follows the same cadence: data collection (Week 1), report review and planning (Week 1), execution by priority (Weeks 2-3), and client handoff (Week 4). The monthly pipeline is powered by the /seo-batch monthly and /seo-monthly skills, which generate prioritized task lists based on gap analysis, crawl reports, and ranking data.

Key Tools:

  • Claude Code skills: /seo-batch, /seo-monthly, /seo-crawl, /seo-gap-analysis, /seo-geo-strategy, /seo-data, /seo-write-page, /seo-optimize-page
  • Local Dominator (rank tracking and heatmap exports)
  • Search Atlas (on-page analysis, crawl reports, GSC integration)
  • Google Search Console (traffic and query analysis)
  • Google Analytics 4 (organic traffic, conversions)

Escalation Path: SEO Specialist → CSM → Ops Lead → Nick

All communication in Task Tracker (not Slack)


Week 1: Data Collection & Monthly Skill Execution

Section titled “Week 1: Data Collection & Monthly Skill Execution”

TRIGGER: 1st business day of month OWNER: SEO Specialist TIMELINE: Complete by 12pm Monday

  1. Update local repository

    • Open Terminal and navigate to the seo-ops-skills directory
    • Run: git pull to fetch latest tool updates
    • Verify no merge conflicts
  2. Export Google Search Console Data (All Clients)

    For each client with GSC access:

    • Navigate to search.google.com/search-console
    • Select client property from dropdown
    • Go to Performance tab
    • Click Search results (should default to last 28 days)
    • Click Export button (top right)
    • Select Download CSV
    • Save file as: GSC-[ClientName]-[Month].csv
    • Store in: results/YYYY-MM/[client-slug]/

    What to look for in GSC data:

    • Top queries by clicks and impressions
    • Average CTR by position
    • Traffic trends vs. previous month
    • New low-performing queries (high impressions, low clicks)
  3. Export Google Analytics 4 Data (All Clients)

    For each client with GA4 access:

    • Navigate to analytics.google.com
    • Select client property from dropdown
    • Go to ReportsAcquisitionTraffic acquisition
    • Set date range: Last 28 days
    • Click Share this report (top right)
    • Select Download fileDownload CSV
    • Save file as: GA4-[ClientName]-[Month].csv
    • Store in: results/YYYY-MM/[client-slug]/

    What to look for in GA4 data:

    • Organic traffic volume and month-over-month change
    • Conversion rate and conversion count
    • Top landing pages by traffic
    • User behavior: bounce rate, session duration
    • Traffic attribution: direct vs. organic vs. referral
  4. Create Results Directory Structure

    • Create folder: results/YYYY-MM/ (if doesn’t exist)
    • Create subfolder for each client: results/YYYY-MM/[client-slug]/
    • All CSVs must be saved before running skills
  5. Verify Local Dominator Heatmap Data

    • Log into Local Dominator dashboard
    • Confirm heatmap scans are scheduled and completed for the current month
    • If no recent scans: schedule them now (don’t wait for manual runs)
    • Note any heatmap issues in Task Tracker

QC Checklist:

  • Git pull completed successfully
  • GSC CSVs exported for all clients and saved to correct folder
  • GA4 CSVs exported for all clients and saved to correct folder
  • Results folder structure created
  • Local Dominator heatmap data verified

KPI: All data collected by 12pm Monday (0 delays)


Monday Afternoon - Wednesday: Monthly Skill Execution

Section titled “Monday Afternoon - Wednesday: Monthly Skill Execution”

TRIGGER: All data collected OWNER: SEO Specialist TIMELINE: Complete by end of Wednesday

Choose one of these options:

Option A: Run all clients at once

/seo-batch monthly

Option B: Run one client at a time (if you have 2-3 clients)

/seo-monthly "Client Name"

Option C: Skip clients already processed this month

/seo-batch monthly --skip

The /seo-monthly skill runs through these steps automatically:

  1. Client Verification — Loads client data, verifies Place ID exists
  2. Site Re-Crawl — Compares current site structure to last month baseline
  3. Heatmap Check — Fetches ranking visibility from Local Dominator
  4. GSC/GA4 Analysis — Parses exported CSVs for traffic and query insights
  5. Review Velocity — Checks Google review count change
  6. Geo-Weakness Engine — Determines next logical action per keyword (content vs. off-site)
  7. Monthly Report — Generates monthly-report.md with prioritized task list
  8. Baseline Update — Saves this month’s data for next month’s comparison

If CSVs are missing: The skill will tell you exactly which client is missing data. Export and re-run.

If Place ID is missing: The skill will ask you to provide the Google Maps URL. Extract Place ID and continue.

If heatmap data is missing: Check Local Dominator dashboard — scans may not have run. Schedule them and re-run the skill.

Each client gets a report file: results/YYYY-MM/[client-slug]/monthly-report.md

The report contains:

  • Executive summary (what improved, what regressed)
  • Metrics snapshot vs. last month
  • Heatmap ranking comparison table
  • GSC/GA4 highlights
  • Review velocity trend
  • RED alerts (metrics getting worse) and GREEN wins (metrics improving)
  • Prioritized task list with actionable items (see Task Prioritization below)

QC Checklist:

  • All clients processed without errors
  • Monthly reports generated for each client
  • Reports saved to correct directory
  • Heatmap data present in reports (if not, investigate)
  • Task lists are complete and specific

KPI: All clients processed by end of Wednesday (0 delays)


Thursday - Friday: Report Review & Monthly Planning

Section titled “Thursday - Friday: Report Review & Monthly Planning”

TRIGGER: Monthly reports generated OWNER: SEO Specialist TIMELINE: Complete by 3pm Friday

For each client:

  1. Open the monthly report

    open results/YYYY-MM/[client-slug]/monthly-report.md
  2. Read Executive Summary

    • What improved? (GREEN wins)
    • What regressed? (RED alerts)
    • What’s the overall trend?
  3. Review Heatmap Comparison Table

    • Winning (rank 1-3): Protect these rankings, monitor weekly
    • Low-Hanging (rank 4-6): Close to map pack, easy wins
    • Secondary (rank 7-10): Visible but not prominent
    • Long-Term (rank 11-20): Will take sustained effort
    • Not Ranking (rank 20+): Needs foundational work

    Pocket Issue? = Weakness in specific geographic cluster → Create geo-targeted content

    Wide Issue? = Weakness across most of grid → Fix foundational items (GBP, citations, reviews)

  4. Review GSC/GA4 Highlights

    • CTR Opportunities: Ranking well but low click rate → Update title/meta descriptions
    • Traffic drops: Investigate what changed in the previous month
    • Conversion trends: Are organic conversions improving?
  5. Review Review Velocity

    • Is review count increasing or decreasing?
    • If declining: Flag for client to send review request texts (target 50-60/month)
  6. Geo-Weakness Engine Decision

    • The report shows what action to take based on whether content/off-site work was done recently
    • Examples:
      • “No content, no off-site” → Create geo-targeted content first
      • “Content created <60 days, no off-site” → Build citations/backlinks now (content needs time)
      • “Both content and off-site >60 days” → Audit and tweak the existing content
      • “Both content and off-site <60 days” → Wait and monitor
  7. Document Completed Actions

    • The skill will ask: “What content or off-site actions were completed since last month?”
    • Be specific. Examples:
      • “Created /pond-contractor-spokane/ page”
      • “Built citation on Yelp and HomeAdvisor”
      • “Added 20 photos to GBP”
      • “Joined Spokane Chamber of Commerce”
    • This feeds the baseline so next month’s recommendations are accurate
  8. Create Week 2-3 Execution Plan

    • Copy the prioritized task list from the report
    • Add to your calendar:
      • P1 tasks (geo-weakness actions)
      • P2 tasks (technical fixes)
      • P3 tasks (CTR optimization)
      • P4 tasks (review reminders)
      • Carryover tasks from last month

QC Checklist:

  • All reports reviewed and understood
  • Task lists created and prioritized
  • Completed actions logged for each client
  • Week 2-3 execution plan created
  • Any blockers or escalations identified

KPI: All reports reviewed and planning complete by 3pm Friday


TRIGGER: Monthly reports finalized OWNER: SEO Specialist TIMELINE: Weeks 2-3

Execute tasks in this order:

These are the highest-impact tasks. The geo-weakness engine tells you exactly which action to take based on whether content/off-site work was done recently:

SituationAction
No content, no off-siteCreate geo-targeted content first (Target: /service-location/ pages)
Content created <60 days ago, no off-siteBuild off-site authority (Citations, backlinks, reviews) — content needs time to rank
Content created >60 days ago, no off-siteBuild off-site AND audit content — check depth, schema, keyword targeting
No content, but off-site work existsCreate geo-targeted content — off-site alone won’t rank (needs on-page)
Both content and off-site <60 daysWait and monitor — give it 60+ days to work
Both content and off-site >60 daysAudit and tweak — content depth, schema, link quality, internal linking

Examples:

  • If report shows “Plumber Phoenix” ranking #8 with no recent content: Create /plumber-phoenix/ page
  • If report shows “HVAC Tucson” with content from 30 days ago but no citations: Build 3-5 citations in niche directories
  • If report shows “Locksmith Mesa” with both content and citations but still #15: Audit the page depth and schema, add internal links

From the re-crawl findings:

  • Fix broken links
  • Add missing title tags or H1s
  • Add meta descriptions to pages without them
  • Remove or expand thin pages (<300 words)
  • Fix mobile usability issues
  • Validate schema markup in Rich Results Test

From GSC high-impression, low-CTR queries:

  • Rewrite title tags to be more compelling
  • Rewrite meta descriptions to include calls-to-action
  • Add power words or numbers where relevant

Example:

  • Query: “plumber near me” — Average position 2, CTR 3%
  • Old title: “Plumber Services”
  • New title: “Emergency Plumber Available 24/7 — Same Day Service”
  • If review velocity dropped: Remind client to send review request texts (target 50-60/month)
  • Update content calendar for next month
  • Continue monitoring rank movements daily

Don’t let these pile up. If a task wasn’t done last month:

  • Why wasn’t it completed? (Blocker? Low priority? Resource constraint?)
  • Is it still relevant?
  • Schedule it now with a new deadline

Maximum: 3 new pages per month per client

When creating pages:

  1. Use /seo-write-page skill

    • Provide: Client name, service, location (if geo-specific), target keywords
    • Skill outputs: Optimized page copy using StoryBrand framework
    • Content is conversion-focused and keyword-optimized
  2. Zero Fabrication Rule

    • Never invent business details, metrics, awards, or claims
    • All content based on client-provided information
    • If client hasn’t told you about something, don’t write about it
    • Examples of NEVER:
      • “We’ve been serving Phoenix for 20 years” (unless they told you)
      • “We handle 500+ projects annually” (unless they confirmed)
      • “5-star rated” (unless Google Reviews show this)
  3. Page Publishing Workflow

    • Write → Review (internal quality check) → QC (peer review) → Publish to CMS
    • All content must pass grammar and keyword placement check before publishing
    • GBP Specialist owns publishing to client websites (coordinate timing)
    • SEO Specialist logs URLs and keyword targets
  4. Internal Linking

    • Per Core 30 framework: Each new page should link to 2-5 related pages
    • New service pages link to related location pages or adjacent services
    • New location pages link to main service pages
    • Update hub pages to link to the new page
  5. Log Page Creation

    • Document in Task Tracker: Page URL, target keywords, publish date
    • This feeds the baseline for next month’s recommendations
  • Schema Markup: Use /seo-optimize-page to validate/improve (LocalBusiness, Service, Organization, BreadcrumbList, FAQPage)
  • Validate: Check in Google Rich Results Test before deployment
  • Deploy: Via Search Atlas or manual integration
  • Core Web Vitals: Monitor and fix priority issues (focus on LCP and CLS)
  • Crawl Errors: Address blocking issues (soft 404s, 5xx errors)

Per offsite strategy (reference: ../00-client-lifecycle-playbook.md):

  • Niche industry citations (tier 1-4)
  • Chamber of commerce memberships (for competitive markets)
  • Local sponsorships
  • Target: 2-3 new citations per month
  • Use /seo-links skill for prospecting niche opportunities

Daily Monitoring (Ongoing During Weeks 2-3)

Section titled “Daily Monitoring (Ongoing During Weeks 2-3)”
  • Monday: Check Local Dominator for rank drops >3 positions
  • Ongoing: Monitor GSC for new errors or traffic anomalies
  • Task Tracker: Update progress on P1-P4 tasks daily
  • Friday: QA all deployed work (content renders, links work, schema validates)

KPI: 90% of P1-P2 tasks completed; P3-P4 tasks logged; 3 pages/month created and published


TRIGGER: Weeks 2-3 execution complete OWNER: SEO Specialist + CSM TIMELINE: Week 4

  1. Finalize Client Reports

    • Compile all work from Weeks 2-3 into a client-facing summary
    • Reference existing reporting template (reference: ../10-client-deliverables-reporting.md)
    • Include:
      • Rankings improved/declined
      • Technical achievements (schema deployed, crawl errors fixed)
      • Content published (pages, dates, keywords)
      • Backlinks acquired (citations, count)
      • Recommendation for next month
  2. Hand Off to CSM

    • SEO Specialist → CSM: “Here’s the monthly summary for [Client Name]”
    • CSM owns final review and client communication
    • SEO Specialist stays available for Q&A
  3. Update Task Tracker

    • Log all completed work by category (P1, P2, P3, P4)
    • Mark tasks complete as they’re finished
    • Flag any outstanding issues
  4. Plan Next Month

    • Based on current month’s results, what should next month prioritize?
    • Update content roadmap if priorities shifted
    • Schedule any recurring recurring items (review requests, citation building, etc.)
  5. Documentation

    • Flag any SOPs that need updating based on lessons learned
    • Share learnings with team in Task Tracker (what worked, what didn’t)
    • Suggest process improvements

QC Checklist:

  • All work from Weeks 2-3 documented
  • Client reports complete and reviewed
  • Task Tracker updated with completion status
  • Next month’s priorities identified
  • No outstanding escalations or blockers

KPI: Reports delivered to CSM by end of Week 4 (100% on time)


Cause: Local Dominator heatmap scans haven’t run or completed.

Fix:

  1. Log into Local Dominator dashboard
  2. Navigate to client account
  3. Check if heatmap scans are scheduled
  4. If not: Schedule them now (will take 24-48 hours to complete)
  5. Re-run /seo-monthly "Client Name" after heatmap data is available

Cause: You skipped the export step on Monday or saved them to the wrong folder.

Fix:

  1. Export GSC/GA4 data as described in Week 1 Monday
  2. Save to: results/YYYY-MM/[client-slug]/
  3. Re-run the skill: /seo-monthly "Client Name"

Cause: Client data in clients.json doesn’t have Place ID populated.

Fix:

  1. Find client’s Google Maps URL
  2. Extract Place ID from URL (example: https://www.google.com/maps/place/?q=place_id:ChIJXXXXXXXXXX)
  3. Copy the Place ID (the alphanumeric string)
  4. Skill will prompt you — paste Place ID and continue
  5. Place ID will be saved to baseline for future months

Cause: Website has hundreds of pages; crawler is taking >30 minutes.

Fix:

  • Crawl caps at 200 pages and automatically skips blog archive pages
  • If still slow: Check internet connection, try again during off-hours
  • For very large sites: Run crawl in off-hours (evening) to avoid network interference

”Missing month’s data or partial reports”

Section titled “”Missing month’s data or partial reports””

Cause: You ran the skill before all CSVs were ready, or heatmap scans weren’t complete.

Fix:

  1. Verify all CSVs are in the folder
  2. Verify heatmap data exists in Local Dominator
  3. Re-run: /seo-monthly "Client Name" (will overwrite the report)

  • Local Dominator (heatmap data, rank tracking)
  • Search Atlas (crawl reports, on-page analysis, GSC integration)
  • Google Search Console (all client accounts)
  • Google Analytics 4 (all client accounts)
  • Claude Code (all skills: /seo-batch, /seo-monthly, /seo-crawl, /seo-gap-analysis, /seo-geo-strategy, /seo-data, /seo-write-page, /seo-optimize-page)
  • Task Tracker (logging and team communication)
  • Internal shared drive (templates, results folder)

  • ../technical-seo.md (on-page optimization, schema, Core Web Vitals)
  • ../content-strategy.md (Core 30 framework, page writing, internal linking)
  • ../00-client-lifecycle-playbook.md (P4 workstreams, capacity limits)
  • ../10-client-deliverables-reporting.md (client report format)
  • ../04-sop-offsite-seo.md (citation building, backlink strategy)
  • README.md (weekly schedule, daily routine)