How to Build a Local Content Strategy with Claude (Step-by-Step)

You have a client. They need content. You could open a spreadsheet, pull keywords from various tools, spend a few hours organizing them, figure out what pages to build, and then spend more hours briefing each piece.

Or you could run four prompts.

This is the complete keyword-to-content-architecture workflow using Claude + LocalSEOSkills. From raw keyword research through concept clustering, page type assignments, geogrid tracking keyword selection, and full content brief production for each piece identified.

Every step uses real prompts with real outputs. The example throughout: a residential roofing company in Charlotte NC with a basic website (two pages) and a GBP profile with a single “Roofing Contractor” category. They want to build a complete content presence but don’t know where to start.

The Four-Step Workflow

The workflow chains four skills together:

  1. Keyword Research — Discover what customers search for
  2. Content Strategy — Organize keywords into concepts, assign content vehicles
  3. Content Briefs — Specify exactly what each piece must cover
  4. Coverage Audit — Measure what exists, identify gaps

Each step produces output that feeds the next. Run them in sequence for a new client. Run steps 3-4 repeatedly as you build and measure.


Step 1: Keyword Research

The foundation. You can’t build a content strategy without knowing what concepts matter to this market.

The Prompt

Do local keyword research for a residential roofing company in Charlotte NC.
Give me: top 20 transactional keywords with volume and competition,
top 10 informational/content keywords, GBP service additions,
and keyword gaps vs. [competitor domain].

What Happens

Dispatch routes to local-keyword-research, which calls LocalSEOData’s keyword endpoints. You get:

TRANSACTIONAL KEYWORDS (top 10 of 20)

Keyword                                  | MSV   | Competition
"roofing company charlotte nc"           | 480   | HIGH
"roof repair charlotte"                  | 320   | HIGH
"roofing contractor charlotte"           | 210   | HIGH
"storm damage roof repair charlotte"     | 140   | MEDIUM
"roof replacement charlotte nc"          | 120   | HIGH
"emergency roof repair charlotte"        | 90    | MEDIUM
"metal roofing charlotte"                | 70    | MEDIUM
"shingle roof repair charlotte"          | 60    | LOW
"roof leak repair charlotte"             | 50    | MEDIUM
"flat roof repair charlotte nc"          | 40    | LOW

INFORMATIONAL KEYWORDS (top 5 of 10)

"how much does a new roof cost in nc"    | 590
"how long does a roof last"              | 320
"does insurance cover roof damage"       | 260
"signs you need a new roof"              | 180
"best roofing material for nc climate"   | 90

GBP SERVICE ADDITIONS
Currently listed: Roofing Contractor (primary category only)

Add these services:
→ Storm Damage Repair
→ Emergency Roof Repair
→ Roof Inspection
→ Gutter Installation
→ Roof Replacement
→ Shingle Repair
→ Metal Roofing Installation
→ Flat Roof Repair

KEYWORD GAPS VS. [COMPETITOR]

Competitor ranks, you don't:
"charlotte roofing estimates"            | 70/mo  | Position 4
"roofing warranty charlotte"             | 40/mo  | Position 6
"licensed roofer charlotte nc"           | 35/mo  | Position 3

What to Look For

The keyword list is raw material. Notice:

  • Cluster signals — “storm damage roof repair,” “emergency roof repair,” and “roof leak repair” are probably the same user need expressed differently
  • GBP opportunities — Services not listed are visibility not captured
  • Informational intent — The cost and insurance questions have higher volume than many transactional keywords. These are research-phase customers.
  • Competitor gaps — Terms they rank for that you don’t represent content opportunities

Don’t try to act on this list directly. That’s what Step 2 is for.


Step 2: Build the Content Strategy

This is where a keyword list becomes a content plan. Same session — paste the output from Step 1.

The Prompt

Take this keyword research output and build the complete content strategy
for [Business Name] in Charlotte NC.
Organize into concept clusters, assign content vehicles,
select 4 geogrid tracking keywords with reasoning,
and confirm GBP actions.

What Happens

Dispatch routes to local-content-strategy. You get a complete content architecture:

CONTENT STRATEGY: [Business Name] — Charlotte NC
7 concept clusters identified

═══════════════════════════════════════════════════════════════

CLUSTER 1: Roofing Services — Charlotte (Primary)

Primary keyword: "roofing company charlotte nc" | 480/mo | HIGH
Supporting: "roofing contractor charlotte", "charlotte roofing company",
  "roofer charlotte nc", "roofing charlotte"
Intent: Transactional — ready to hire
Competition: High

Content vehicle: PRIMARY LOCATION PAGE
URL: /roofing-company-charlotte-nc/

Reasoning: Highest volume transactional concept in the market.
Deserves comprehensive location page treatment — this is the hub
all other pages link to. Must cover: services offered, service area,
credentials, process, and differentiators. 1,800-2,400 words.

═══════════════════════════════════════════════════════════════

CLUSTER 2: Storm Damage Roofing

Primary keyword: "storm damage roof repair charlotte" | 140/mo | MEDIUM
Supporting: "hail damage roof repair", "wind damage roof charlotte",
  "roof damage insurance claim charlotte"
Intent: Transactional — urgent, event-driven
Competition: Medium

Content vehicle: LOCATION PAGE + GBP SERVICE
URL: /storm-damage-roof-repair-charlotte/

Reasoning: Distinct concept from general roofing. Significant local
relevance — Charlotte severe weather season (April-September).
High commercial intent at a specific decision moment. Users searching
this have recent storm damage. Requires content covering: damage
assessment, insurance claim process, emergency tarping, timeline.
Add "Storm Damage Repair" as GBP service immediately.

═══════════════════════════════════════════════════════════════

CLUSTER 3: Emergency Roof Repair

Primary keyword: "emergency roof repair charlotte" | 90/mo | MEDIUM
Supporting: "24 hour roofer charlotte", "emergency roofer near me",
  "roof leak emergency charlotte"
Intent: Transactional — urgent, immediate need
Competition: Medium

Content vehicle: LOCATION PAGE + GBP SERVICE
URL: /emergency-roof-repair-charlotte/

Reasoning: Distinct from storm damage — emergency can be any cause.
After-hours availability is the differentiator. If you offer 24/7
service, this page converts high-intent urgent searches. If you
don't, deprioritize. Add "Emergency Roof Repair" as GBP service.
Consider "24 Hour Service" attribute if applicable.

═══════════════════════════════════════════════════════════════

CLUSTER 4: Roof Replacement

Primary keyword: "roof replacement charlotte nc" | 120/mo | HIGH
Supporting: "new roof charlotte", "reroof charlotte",
  "roof replacement cost charlotte"
Intent: Transactional — major purchase decision
Competition: High

Content vehicle: LOCATION PAGE + GBP SERVICE
URL: /roof-replacement-charlotte-nc/

Reasoning: Different job type from repair — larger scope, longer
sales cycle, higher ticket. Customers researching replacement have
different questions than repair customers. Dedicated page allows
specific coverage of: material options, timeline, financing, warranty.
Add "Roof Replacement" as GBP service.

═══════════════════════════════════════════════════════════════

CLUSTER 5: Roof Cost and Process (Informational)

Primary keyword: "how much does a new roof cost in nc" | 590/mo
Supporting: "roof replacement cost nc", "average roof cost charlotte",
  "roofing estimate charlotte"
Intent: Informational — research phase
Competition: Low-Medium

Content vehicle: BLOG POST / FAQ PAGE
URL: /blog/roof-cost-north-carolina/

Reasoning: Informational intent — user is researching before deciding.
Highest volume keyword in the entire research. AI Overview candidate
(direct answer format works). No location page needed — this is
awareness/consideration content that links to transactional pages.
Cover: price ranges by material, factors affecting cost, NC-specific
considerations, what to expect from an estimate.

═══════════════════════════════════════════════════════════════

CLUSTER 6: Insurance and Claims

Primary keyword: "does insurance cover roof damage" | 260/mo
Supporting: "roof insurance claim process", "roofing insurance charlotte",
  "storm damage insurance roof"
Intent: Informational — decision support
Competition: Low

Content vehicle: BLOG POST
URL: /blog/roof-damage-insurance-claims-nc/

Reasoning: Research-phase content supporting storm damage conversions.
Users asking this question have damage and are deciding whether to
file a claim. Content should cover: what's typically covered, the
claim process, working with contractors on claims, NC-specific
insurance considerations. Links to storm damage location page.

═══════════════════════════════════════════════════════════════

CLUSTER 7: Near-Me Searches

Primary keyword: "roofer near me" | [varies by location]
Supporting: "roofing company near me", "roof repair near me"
Intent: Transactional — proximity-driven
Competition: High (proximity-dependent)

Content vehicle: GBP SIGNAL ONLY — NO PAGE NEEDED

Reasoning: Near-me queries are won through GBP prominence, proximity,
and completeness — not through page content. You cannot rank a page
for "near me" from a user in a different location. These keywords
are served by: strong GBP, good reviews, correct business location,
complete service area settings. No content action required.

═══════════════════════════════════════════════════════════════

GEOGRID TRACKING KEYWORDS (4 selected)

1. "roofing company charlotte nc"
   Reasoning: Primary revenue concept. Highest volume transactional
   keyword. Ranking improvement here directly increases leads.
   Track on 7x7 grid, 1mi spacing, centered on business location.

2. "storm damage roof repair charlotte"
   Reasoning: Seasonal high-value intent. Charlotte storm season
   (April-September) drives urgent searches. SoLV here during
   storm season = significant revenue capture.

3. "roof replacement charlotte nc"
   Reasoning: Different job type from repair. Higher ticket,
   longer sales cycle. Tracking separately shows whether you're
   capturing major project searches vs. just repair searches.

4. "emergency roof repair charlotte"
   Reasoning: Urgent intent, high conversion. If you offer 24/7
   service, this tracks whether you're capturing emergency searches.
   Geographic spread matters — emergencies happen across service area.

═══════════════════════════════════════════════════════════════

GBP ACTIONS (do these today)

Categories:
✓ Roofing Contractor (primary) — already claimed
+ Add: "Siding Contractor" — if you offer siding
+ Add: "Gutter Cleaning Service" — if you offer gutters

Services to add:
→ Storm Damage Repair
→ Emergency Roof Repair
→ Roof Inspection
→ Roof Replacement
→ Shingle Repair
→ Metal Roofing Installation
→ Gutter Installation
→ Flat Roof Repair

Attributes to confirm:
→ "Identifies as veteran-owned" (if applicable)
→ "Free estimates" (if offered)

═══════════════════════════════════════════════════════════════

PRODUCTION PRIORITY ORDER

Phase 1 — Today (GBP, no content):
Add 8 services, confirm attributes. [30 minutes]

Phase 2 — First 2 weeks:
Build primary location page (/roofing-company-charlotte-nc/)
Build storm damage page (/storm-damage-roof-repair-charlotte/)
[These capture highest-value searches first]

Phase 3 — Weeks 3-6:
Build emergency page, roof replacement page
Build cost blog post (highest informational volume)

Phase 4 — Ongoing:
Insurance blog post, secondary content, coverage expansion

How to Read This Output

The strategy output contains more information than a keyword list:

Cluster labels are concepts, not keywords. “Storm Damage Roofing” is the concept. The keywords within the cluster are expressions of that concept. Content should cover the concept, not target each keyword.

Content vehicle assignments have reasoning. Not every keyword needs a page. Some need GBP services. Some need blog posts. Some need nothing because GBP signals handle them. The reasoning explains why each assignment was made.

Geogrid keywords are strategic choices. Four keywords, four distinct concepts. You’re not tracking synonyms — you’re tracking whether you’re capturing different types of searches across your service area.

Production priority is sequenced. GBP actions first because they take 30 minutes and expand visibility immediately. High-value location pages next. Supporting content later.


Step 3: Produce Content Briefs

With the strategy in place, each content vehicle needs a complete brief. This is a repeatable loop — one prompt per piece.

The Prompt

Write a complete content brief for the Storm Damage Roofing location page
for [Business Name] in Charlotte NC.
Include concept coverage plan, required local entities,
schema requirements, internal linking, and AI Overview formatting.

What Happens

Dispatch routes to local-content-briefs. You get a complete, execution-ready brief:

CONTENT BRIEF: Storm Damage Roof Repair — Charlotte NC

═══════════════════════════════════════════════════════════════

CORE CONCEPT

How a Charlotte homeowner evaluates storm damage, navigates the
insurance claim process, and works with a roofing contractor to
restore their roof — from identifying damage through completed repair.

This is not a page about "storm damage roof repair" as a keyword.
It's a page that demonstrates complete expertise on the topic of
storm damage roofing in the Charlotte market.

═══════════════════════════════════════════════════════════════

CONTENT VEHICLE: Location Page
TARGET WORD COUNT: 1,400–1,800 words
PRIMARY KEYWORD: "storm damage roof repair charlotte" | 140/mo

SUPPORTING KEYWORDS (weave naturally):
- hail damage roof repair charlotte
- wind damage roof repair
- roof damage insurance claim charlotte
- emergency roof tarping charlotte
- storm damage roof inspection

═══════════════════════════════════════════════════════════════

CONCEPT COVERAGE PLAN

COMPREHENSIVE COVERAGE (400-500 words each):

1. Identifying Storm Damage on Your Roof
   Why comprehensive: This is the entry point. Users searching this
   term have just experienced a storm and don't know if they have damage.

   Key points to cover:
   - Visual signs of hail damage (dented vents, granule loss, bruised shingles)
   - Visual signs of wind damage (lifted shingles, exposed underlayment)
   - When it's safe to inspect yourself vs. when to call a professional
   - Time sensitivity — why waiting can make damage worse

   Local specificity:
   - Charlotte hail patterns (spring/early summer storms)
   - Typical wind speeds in Charlotte severe storms
   - How Carolina humidity affects damage progression

2. The Insurance Claim Process for Roof Damage
   Why comprehensive: This is the decision gate. Users need to understand
   whether insurance will cover the repair before committing.

   Key points to cover:
   - What homeowner's insurance typically covers (and doesn't)
   - Documentation required before filing
   - The adjuster visit — what to expect, how to prepare
   - Working with a contractor who handles insurance claims
   - Timeline from claim to repair completion

   Local specificity:
   - NC Department of Insurance as regulatory reference
   - NC-specific claim considerations
   - Common Charlotte insurers and their processes

───────────────────────────────────────────────────────────────

STANDARD COVERAGE (200-300 words each):

3. Emergency Tarping and Temporary Protection
   What to cover: When tarping is needed, what it protects against,
   how long a tarp lasts, cost considerations
   Link to: Emergency roof repair page

4. The Professional Inspection Process
   What to cover: What a storm damage inspection includes, how long
   it takes, what the report contains, free vs. paid inspections

5. Repair vs. Full Replacement Decision
   What to cover: Factors that determine repair vs. replace, age of
   roof, extent of damage, insurance considerations, cost comparison

───────────────────────────────────────────────────────────────

BRIEF COVERAGE (75-150 words each):

6. Timeline from Claim to Completion
   Key point: Typical timeline, factors that affect speed

7. What If the Adjuster Underestimates?
   Key point: Options for disputing, supplemental claims, contractor advocacy

8. Choosing a Storm Damage Contractor
   Key point: What to look for, red flags, questions to ask

═══════════════════════════════════════════════════════════════

REQUIRED LOCAL ENTITIES

| Entity | Type | Context for Mention |
|--------|------|---------------------|
| [Business Name] | Business | Intro paragraph, CTA sections |
| Charlotte, NC | Geography | Throughout — primary geo signal |
| Mecklenburg County | Geography | Service area section |
| NC Department of Insurance | Regulatory | Insurance section reference |
| Common Charlotte neighborhoods | Geography | Service area list |
| Charlotte storm season | Local fact | April-September mention |

═══════════════════════════════════════════════════════════════

QUESTIONS THIS CONTENT ANSWERS

| Question | Section | AI Overview? |
|----------|---------|--------------|
| How do I know if my roof has storm damage? | Section 1 | YES |
| Does insurance cover storm damage roof repair? | Section 2 | YES |
| How long does storm damage repair take? | Section 6 | YES |
| Should I tarp my roof after a storm? | Section 3 | NO |
| When should I replace vs. repair? | Section 5 | NO |
| What does a roof inspection include? | Section 4 | NO |
| How do I file an insurance claim for roof damage? | Section 2 | YES |
| What if my insurance claim is denied? | Section 7 | NO |

═══════════════════════════════════════════════════════════════

LOCAL SEO TECHNICAL REQUIREMENTS

GBP CONSISTENCY:
This page aligns with GBP service "Storm Damage Repair"
Ensure service is added before publishing page

NAP PLACEMENT:
- Business name: Intro paragraph, About section, CTA
- Address: Footer (sitewide), Service area section
- Phone: CTA sections, header (sitewide)

SCHEMA TO IMPLEMENT:
- LocalBusiness: Full implementation with service area
- FAQPage: Mark up 4 AI Overview questions/answers
- Service: Storm Damage Roof Repair service schema

INTERNAL LINKS:
| Link to | Anchor text | Placement |
|---------|-------------|-----------|
| /roofing-company-charlotte-nc/ | Charlotte roofing services | Intro |
| /emergency-roof-repair-charlotte/ | emergency roof repair | Section 3 |
| /blog/roof-damage-insurance-claims-nc/ | insurance claim process | Section 2 |
| /roof-replacement-charlotte-nc/ | roof replacement | Section 5 |

AI OVERVIEW FORMATTING:
These questions should use direct-answer format (H3 question heading,
2-3 sentence direct answer, then expanded content):
- How do I know if my roof has storm damage?
- Does homeowner's insurance cover roof storm damage?
- How long does storm damage roof repair take?
- How do I file an insurance claim for roof damage?

═══════════════════════════════════════════════════════════════

RECOMMENDED CONTENT STRUCTURE

H1: Storm Damage Roof Repair in Charlotte NC

[Opening paragraph: Establish expertise, mention Charlotte storm
patterns, acknowledge the urgency of the situation, position
[Business Name] as the solution. 100 words.]

H2: How to Identify Storm Damage on Your Roof
  H3: Signs of Hail Damage
  H3: Signs of Wind Damage
  H3: When to Call a Professional

H2: Navigating the Insurance Claim Process
  H3: What Does Insurance Cover?
  H3: How do I file an insurance claim for roof damage?
  H3: Working With Your Contractor on the Claim

H2: Emergency Tarping and Temporary Protection

H2: The Professional Inspection Process

H2: Repair vs. Full Replacement: Making the Decision

H2: Frequently Asked Questions
  H3: How long does storm damage roof repair take?
  H3: What if my insurance claim is underestimated?
  H3: How do I choose a storm damage contractor?

H2: Get Your Free Storm Damage Inspection
[CTA section with phone, form, service area mention]

═══════════════════════════════════════════════════════════════

QUALITY CHECKLIST

- [ ] 15+ distinct concepts covered
- [ ] All required local entities mentioned in context
- [ ] All 8 reader questions answerable from content
- [ ] NAP appears naturally in at least 2 locations
- [ ] 4 sections formatted for AI Overview direct-answer
- [ ] Internal links placed with concept-based anchor text
- [ ] No keyword stuffing — concepts appear because relevant
- [ ] Opening 100 words establish core concept + local context
- [ ] CTA appears at end and mid-page
- [ ] Schema requirements specified and implementable

Bulk Brief Production

For a full content strategy, you’ll produce briefs for every piece identified. The pattern:

  1. Pillar/primary location page brief first — establishes the concept framework
  2. Supporting location page briefs — each one references the primary
  3. Blog/FAQ briefs last — these support location pages via internal links

Each brief is self-contained. For CLI generation loops, each brief becomes one generation call. Label files by content vehicle and primary keyword for easy identification.


Step 4: Audit Your Current Coverage

Before building new content, or after building, measure what exists.

The Prompt

Audit [domain]'s current content coverage against this content strategy.
What's missing, what's thin, what's duplicating effort?

What Happens

Dispatch routes to local-seo-audit and localseodata-tool. You get a gap analysis:

COVERAGE AUDIT: [domain] vs. Content Strategy

CURRENT STATE:
- 2 pages indexed (homepage, about page)
- GBP: 1 category, 0 services listed
- No location pages for any concept cluster
- No blog content

COVERAGE GAPS:

CRITICAL (no coverage):
- Cluster 1: Roofing Services Charlotte — NO PAGE
- Cluster 2: Storm Damage — NO PAGE
- Cluster 3: Emergency Repair — NO PAGE
- Cluster 4: Roof Replacement — NO PAGE
- Cluster 5: Cost Content — NO PAGE
- Cluster 6: Insurance Content — NO PAGE

GBP GAPS:
- 0 of 8 recommended services listed
- Missing "Free estimates" attribute
- Description doesn't mention primary concepts

COMPETITOR COMPARISON:
[Competitor A]: 6 location pages, 12 blog posts, 8 GBP services
[Competitor B]: 4 location pages, 8 blog posts, 5 GBP services
[Your client]: 0 location pages, 0 blog posts, 0 GBP services

PRIORITY ACTIONS:
1. Add 8 GBP services TODAY (30 min, immediate visibility)
2. Build primary location page THIS WEEK
3. Build storm damage page NEXT (seasonal relevance)

Connecting Content Strategy to Geogrid Tracking

Once the strategy selects tracking keywords, set up recurring geogrid scans to measure whether the content is working.

Set up monthly geogrid tracking for [Business Name] in Charlotte
for these 4 keywords: [list from strategy].
7x7 grid, 1mi spacing, centered on business location.
Alert me if SoLV drops below 40% for any keyword.

The geogrid measurements become the feedback loop. Content builds. Rankings change. Geogrids show where and how much.


Running the Full Workflow for a New Client

For a new client onboarding:

Session 1 (30 minutes):

  • Run keyword research prompt
  • Run content strategy prompt
  • Execute GBP actions immediately (add services, categories, attributes)
  • Set up geogrid tracking for selected keywords

Session 2 (varies by content volume):

  • Produce briefs for Phase 2 content (primary location pages)
  • Either write content from briefs or feed briefs to CLI generation

Session 3 (after Phase 2 content is live):

  • Run coverage audit
  • Produce briefs for Phase 3 content
  • Measure initial geogrid baseline

Ongoing:

  • Monthly geogrid review
  • Quarterly coverage audit
  • Brief and build content for remaining gaps

From Briefs to Content Generation

Each brief is formatted for direct execution. For practitioners running content at scale:

  1. Save each brief as a separate file: brief-storm-damage-charlotte.md
  2. Use Claude CLI with the brief as input
  3. The brief’s structure, concept coverage plan, and quality checklist guide generation
  4. Output is a complete content piece ready for review and publishing

The brief does the strategic work. Generation does the writing work. The two are separate steps that can be run by different people (or different Claude sessions).


The four-step workflow — keyword research, content strategy, content briefs, coverage audit — is the complete system. Run it once for a new client. Run steps 3-4 repeatedly as you build out the content plan. The skills chain together because they were designed to chain together.

Start with the first prompt. The rest follows.