Seo Geo
Automate and integrate geo-targeted SEO strategies for local search optimization
SEO Geo is a community skill for geographically targeted search engine optimization, covering local keyword research, Google Business Profile optimization, local citation building, geo-targeted content strategy, and location-based ranking analysis.
What Is This?
Overview
SEO Geo provides tools for optimizing web presence for location-based search queries. It covers local keyword research that identifies geographic search terms with traffic potential in specific markets, Google Business Profile optimization that maximizes visibility in local map results, local citation building that ensures consistent business information across directories, geo-targeted content strategy that creates location-specific pages and blog content, and location-based ranking analysis that tracks search positions across different geographic areas. The skill helps businesses attract local customers.
Who Should Use This
This skill serves local business owners seeking nearby customers through search, marketing agencies managing multi-location SEO campaigns, and content teams creating geo-targeted landing pages.
Why Use It?
Problems It Solves
Businesses without local SEO optimization miss customers searching for nearby services and products. Inconsistent business name, address, and phone information across directories hurts local search rankings. Generic content without geographic targeting fails to rank for location-specific queries. Multi-location businesses struggle to track rankings across different markets.
Core Highlights
Local keyword researcher identifies geo-modified search terms. Profile optimizer maximizes Google Business visibility. Citation builder ensures consistent directory listings. Rank tracker monitors positions across geographic areas.
How to Use It?
Basic Usage
from dataclasses import (
dataclass, field)
@dataclass
class LocalListing:
name: str
address: str
phone: str
source: str
class CitationAuditor:
def __init__(
self,
canonical: LocalListing
):
self.canonical = (
canonical)
self.listings = []
def add_listing(
self,
listing: LocalListing
):
self.listings.append(
listing)
def check_consistency(
self
) -> list:
issues = []
c = self.canonical
for lst in (
self.listings
):
diffs = []
if lst.name != c.name:
diffs.append(
'name')
if (lst.address !=
c.address):
diffs.append(
'address')
if lst.phone != (
c.phone
):
diffs.append(
'phone')
if diffs:
issues.append({
'source':
lst.source,
'fields': diffs})
return issues
canonical = LocalListing(
'Acme Corp',
'123 Main St',
'555-0100',
'website')
auditor = CitationAuditor(
canonical)
auditor.add_listing(
LocalListing(
'Acme Corp',
'123 Main Street',
'555-0100',
'yelp'))
for issue in (
auditor
.check_consistency()
):
print(
f'{issue["source"]}: '
f'{issue["fields"]}')Real-World Examples
from dataclasses import (
dataclass)
@dataclass
class GeoKeyword:
term: str
location: str
volume: int
difficulty: int
class GeoKeywordPlanner:
def __init__(self):
self.keywords: list[
GeoKeyword] = []
def add_keyword(
self,
base_term: str,
locations: list,
volumes: list,
diffs: list
):
for loc, vol, d in zip(
locations,
volumes, diffs
):
self.keywords.append(
GeoKeyword(
f'{base_term} '
f'{loc}',
loc, vol, d))
def top_opportunities(
self, n: int = 10
) -> list:
scored = [
(kw, kw.volume /
max(kw.difficulty,
1))
for kw in
self.keywords]
scored.sort(
key=lambda x:
x[1],
reverse=True)
return [
{'term': kw.term,
'volume': kw.volume,
'score': round(
score, 1)}
for kw, score
in scored[:n]]
planner = GeoKeywordPlanner()
planner.add_keyword(
'plumber',
['NYC', 'LA', 'Chicago'],
[3200, 2800, 1500],
[45, 50, 30])
for opp in (
planner
.top_opportunities(5)
):
print(
f'{opp["term"]}: '
f'{opp["volume"]} vol, '
f'score {opp["score"]}')Advanced Tips
Create unique content for each location page rather than swapping city names in template content. Build local backlinks from community organizations and local news sites for geographic authority. Use schema markup for local business structured data to enhance map result appearances.
When to Use It?
Use Cases
Audit citation consistency across directories for a multi-location business chain. Research geo-modified keywords to identify the highest opportunity local markets. Create location-specific landing pages with unique content for each service area.
Related Topics
Local SEO, Google Business Profile, citation management, geo-targeting, local search, keyword research, and map optimization.
Important Notes
Requirements
Google Business Profile account for managing local listings. Access to local keyword research tools for geographic search data. Business information including name, address, and phone for citation auditing.
Usage Recommendations
Do: maintain consistent business information across all directory listings. Create unique, valuable content for each location page rather than thin templated pages. Encourage customer reviews on Google Business Profile for local ranking signals.
Don't: create hundreds of location pages with only city names changed since search engines penalize thin duplicate content. Ignore negative reviews as response quality affects local reputation. Use fake business addresses to target locations where you have no physical presence.
Limitations
Local rankings vary significantly between searcher locations making tracking complex. Google Business Profile features and ranking factors change without advance notice. Multi-location businesses face scaling challenges maintaining unique content for each area.
More Skills You Might Like
Explore similar skills to enhance your workflow
Site Architecture
When the user wants to audit, redesign, or plan their website's structure, URL hierarchy, navigation design, or internal linking strategy. Use when th
Copy Editing
When the user wants to edit, review, or improve existing marketing copy. Also use when the user mentions 'edit this copy,' 'review my copy,' 'copy fee
Seo Content Brief
Automate and integrate SEO content brief creation for targeted, optimized writing
Soak Test
argument-hint: "[duration: 30m | 1h | 2h | 4h] [focus: memory | stability | balance | all]"
Phase 0: Parse Arguments
argument-hint: "[milestone-name|current] [--review full|lean|solo]"
Social Media Posts
Create platform-specific social media posts for LinkedIn, Facebook, Instagram, and Reddit. Handles character limits, hashtag strategies, hook placemen