16 min read
Local Citations
Master local citation building and NAP consistency for improved local search rankings. Complete guide to directory listings, data aggregators, and citation management strategies.
Local Citations Guide
Citations are online mentions of your business name, address, and phone number (NAP). They serve as trust signals for search engines and help validate your business's existence, location, and legitimacy. Consistent, accurate citations across authoritative directories remain a foundational element of local SEO success.
Understanding Citations
What Are Citations?
code
Citation Fundamentals:
═══════════════════════════════════════════════════════════════════════════
CITATION DEFINITION:
────────────────────────────────────────────────────────────────────────
Any online mention of your business containing:
• Name
• Address
• Phone number (NAP)
┌─────────────────────────────────────┐
│ CITATION ANATOMY │
└─────────────────────────────────────┘
Joe's Plumbing Services ──────► Name
123 Main Street, Suite 100 ───► Address
Philadelphia, PA 19103 ───────► City/State/Zip
(215) 555-0100 ────────────────► Phone
Optional but valuable:
├── Website URL
├── Hours of operation
├── Business description
├── Categories/services
├── Photos
└── Reviews
CITATION TYPES:
────────────────────────────────────────────────────────────────────────
Structured Citations
├── Directory listings with formatted fields
├── Examples: Yelp, Yellow Pages, BBB
├── Standardized data format
└── Typically include additional info
Unstructured Citations
├── Mentions in articles, blogs, news
├── Examples: Local news story, blog mention
├── Less common but high-value
└── Often come from PR/content efforts
CITATION VALUE:
────────────────────────────────────────────────────────────────────────
Signal Type Impact Description
────────────────────────────────────────────────────────────────────────
Trust Signal High Validates business existence
Consistency Signal High Confirms accurate information
Discovery Channel Medium Customers find you
Backlink Source Medium Some directories provide links
Brand Building Low-Medium Increases online presence
────────────────────────────────────────────────────────────────────────Why Citations Matter
code
Citation Impact on Local Rankings:
═══════════════════════════════════════════════════════════════════════════
RANKING FACTOR CONTRIBUTION:
────────────────────────────────────────────────────────────────────────
Citation Signals ~10-15% of Local Pack Rankings
┌─────────────────────────────────────────────────────────────────────┐
│ │
│ ████████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ │
│ 15% │
│ │
└─────────────────────────────────────────────────────────────────────┘
Breakdown:
├── NAP Consistency: 8%
├── Citation Quantity: 4%
└── Citation Quality: 3%
CONSISTENCY VS QUANTITY:
────────────────────────────────────────────────────────────────────────
❌ 200 inconsistent citations
• Different addresses, phone variations
• Outdated information
• Conflicting business names
• HARMFUL to rankings
✅ 50 perfectly consistent citations
• Exact NAP match everywhere
• Up-to-date information
• High-quality directories
• POSITIVE ranking signal
DIMINISHING RETURNS:
────────────────────────────────────────────────────────────────────────
Impact 0─────────────────────────────────────────────► Max
│
│ ████
│ ████████
│ ████████████
│████████████████████░░░░░░░░░░░░░░░░░░░░░░░░░░░
└──────────────────────────────────────────────────►
0 25 50 75 100 150 200 250 300
Citation Count
• First 50 citations: Highest impact
• 50-100 citations: Moderate additional impact
• 100+ citations: Minimal additional benefit
• Focus on quality over quantityNAP Consistency
The Foundation of Citation Success
code
NAP Consistency Rules:
═══════════════════════════════════════════════════════════════════════════
THE GOLDEN RULE:
────────────────────────────────────────────────────────────────────────
Your NAP must be EXACTLY identical across:
• Your website
• Google Business Profile
• Every directory listing
• All citations
┌─────────────────────────────────────┐
│ CONSISTENCY EXAMPLES │
└─────────────────────────────────────┘
✅ CONSISTENT:
Website: Joe's Plumbing | 123 Main St | (215) 555-0100
GBP: Joe's Plumbing | 123 Main St | (215) 555-0100
Yelp: Joe's Plumbing | 123 Main St | (215) 555-0100
Yellow Pg: Joe's Plumbing | 123 Main St | (215) 555-0100
❌ INCONSISTENT:
Website: Joe's Plumbing, Inc. | 123 Main Street
GBP: Joe's Plumbing | 123 Main St
Yelp: Joes Plumbing Services | 123 Main St.
Yellow Pg: Joe's Plumbing LLC | 123 Main Street, Ste 100
COMMON INCONSISTENCIES:
────────────────────────────────────────────────────────────────────────
Business Name Issues:
├── Inc., LLC, Corp variations
├── "The" prefix inconsistency
├── Abbreviations vs full words
├── Missing apostrophes
└── DBA vs legal name
Address Issues:
├── St vs Street vs St.
├── Suite vs Ste vs #
├── Floor/unit variations
├── N/S/E/W vs North/South/East/West
├── Old addresses not updated
└── PO Box vs physical
Phone Issues:
├── (215) 555-0100 vs 215-555-0100
├── 1-215-555-0100 vs 215-555-0100
├── Local vs toll-free
├── Tracking numbers
└── Old numbers still listedNAP Standardization Framework
code
// NAP Standardization System
interface NAPStandard {
businessName: {
canonical: string;
rules: [
'Exact legal business name',
'No keywords added',
'Consistent LLC/Inc usage',
'Same capitalization everywhere',
];
};
address: {
street: {
number: string;
direction: string; // N, S, E, W (abbreviated)
name: string;
type: string; // St, Ave, Blvd (abbreviated)
unit: string; // Suite 100 (never Ste or #)
};
city: string;
state: string; // 2-letter abbreviation
zip: string; // 5-digit (not ZIP+4)
};
phone: {
format: '(xxx) xxx-xxxx'; // With parentheses and dash
type: 'local'; // Prefer local over toll-free
primary: string;
};
}
// Example standardized NAP
const standardizedNAP: NAPStandard = {
businessName: {
canonical: "Joe's Plumbing",
rules: [
'Always use apostrophe',
'Never add LLC/Inc (not part of DBA)',
'Never add "Services" or other words',
'Capital J, lowercase everything else',
],
},
address: {
street: {
number: '123',
direction: 'N',
name: 'Main',
type: 'St',
unit: 'Suite 100',
},
city: 'Philadelphia',
state: 'PA',
zip: '19103',
},
phone: {
format: '(xxx) xxx-xxxx',
type: 'local',
primary: '(215) 555-0100',
},
};
// Format functions
function formatAddress(nap: NAPStandard): string {
const { street, city, state, zip } = nap.address;
const streetLine = [
street.number,
street.direction,
street.name,
street.type,
street.unit ? `, ${street.unit}` : '',
].filter(Boolean).join(' ');
return `${streetLine}\n${city}, ${state} ${zip}`;
}
// Output: "123 N Main St, Suite 100\nPhiladelphia, PA 19103"NAP Audit Process
code
Citation Audit Workflow:
═══════════════════════════════════════════════════════════════════════════
STEP 1: ESTABLISH CANONICAL NAP
────────────────────────────────────────────────────────────────────────
□ Document exact business name
□ Standardize address format
□ Choose primary phone number
□ Create NAP reference document
STEP 2: AUDIT EXISTING CITATIONS
────────────────────────────────────────────────────────────────────────
Tools: Moz Local, BrightLocal, Whitespark, Yext
Manual Search:
□ Search "[business name]" in quotes
□ Search "[phone number]"
□ Search "[address]"
□ Check top 50 directories manually
Document Each Citation:
├── Directory name
├── Listing URL
├── Current NAP shown
├── Discrepancy type
├── Can edit (Y/N)
└── Priority (High/Medium/Low)
STEP 3: CATEGORIZE ISSUES
────────────────────────────────────────────────────────────────────────
┌───────────────────────────────────────┐
│ ISSUE PRIORITY MATRIX │
└───────────────────────────────────────┘
Impact on Rankings
Low High
┌─────────────┬─────────────────────┐
High │ Low/High │ High Priority │
Auth │ │ (Fix First) │
│ Yelp, BBB │ GBP, Apple Maps │
Directory ├─────────────┼─────────────────────┤
Authority Low │ Low │ Medium │
Auth │ Priority │ Priority │
│ Spam dirs │ Industry directories│
└─────────────┴─────────────────────┘
STEP 4: FIX INCONSISTENCIES
────────────────────────────────────────────────────────────────────────
Priority Order:
1. Google Business Profile
2. Apple Maps / Bing Places
3. Major directories (Yelp, Facebook, BBB)
4. Data aggregators
5. Industry-specific directories
6. Local directories
7. Low-priority listings
Fix Methods:
├── Claim and update (preferred)
├── Submit correction request
├── Contact directory support
└── Use data aggregators to push changesDirectory Hierarchy
Tiered Directory Strategy
code
Directory Tier System:
═══════════════════════════════════════════════════════════════════════════
TIER 1: ESSENTIAL (Week 1-2)
────────────────────────────────────────────────────────────────────────
Must have. Highest authority. First priority.
Directory DA Type Notes
────────────────────────────────────────────────────────────────────────
Google Business Profile 100 Search Primary listing
Apple Maps 100 Maps iOS users, Siri
Bing Places 99 Search Microsoft ecosystem
Facebook 96 Social Reviews, engagement
Yelp 94 Reviews High consumer trust
BBB (Accredited) 91 Trust Credibility signal
TIER 2: IMPORTANT (Week 2-4)
────────────────────────────────────────────────────────────────────────
High authority. Significant traffic. Should have.
Directory DA Type Notes
────────────────────────────────────────────────────────────────────────
Yellow Pages (YP.com) 89 Directory Legacy authority
Foursquare 89 Check-in Feeds other sites
MapQuest 85 Maps Navigation users
Citysearch 81 Directory Urban focus
Superpages 79 Directory Business directory
Manta 78 Directory B2B focus
Hotfrog 73 Directory SMB focus
TIER 3: DATA AGGREGATORS (Week 2-3)
────────────────────────────────────────────────────────────────────────
Feed data to hundreds of other sites. Critical for scale.
Aggregator Feeds To Cost
────────────────────────────────────────────────────────────────────────
Data Axle (Infogroup) 100+ directories $300-500/year
Neustar Localeze 100+ directories $300-500/year
Foursquare Navigation, apps Free (claim)
Factual Apps, platforms Varies
TIER 4: INDUSTRY-SPECIFIC (Week 3-4)
────────────────────────────────────────────────────────────────────────
High relevance for your industry. Often overlooked.
Industry Top Directories
────────────────────────────────────────────────────────────────────────
Legal Avvo, FindLaw, Justia, Martindale
Medical Healthgrades, Zocdoc, Vitals, WebMD
Home Services HomeAdvisor, Angi, Thumbtack, Houzz
Restaurants TripAdvisor, OpenTable, Zomato
Real Estate Zillow, Realtor.com, Trulia
Auto Cars.com, CarGurus, Edmunds
Financial NerdWallet, Bankrate, WalletHub
TIER 5: LOCAL (Week 4+)
────────────────────────────────────────────────────────────────────────
City/region specific. Community trust.
Types:
├── Chamber of Commerce
├── City business directory
├── Local newspaper listings
├── Regional business associations
├── Community websites
└── Local blogs with directoriesData Aggregators Deep Dive
code
Data Aggregator Strategy:
═══════════════════════════════════════════════════════════════════════════
WHY AGGREGATORS MATTER:
────────────────────────────────────────────────────────────────────────
┌─────────────────────────────────────┐
│ DATA FLOW DIAGRAM │
└─────────────────────────────────────┘
Your Business Data
│
▼
┌─────────────────────────┐
│ DATA AGGREGATORS │
│ (Axle, Localeze, etc.) │
└───────────┬─────────────┘
│
┌────────────────────┼────────────────────┐
│ │ │
▼ ▼ ▼
┌────────────┐ ┌────────────┐ ┌────────────┐
│ Directories│ │ Apps │ │ Navigation │
│ │ │ │ │ │
│ YP, Manta │ │ Uber, Lyft │ │ GPS, Maps │
│ Superpages │ │ Instacart │ │ Car systems│
│ 100+ more │ │ Many more │ │ │
└────────────┘ └────────────┘ └────────────┘
Benefits:
├── One submission → 100+ listings
├── Consistent data across ecosystem
├── Faster propagation
├── Ongoing data maintenance
└── Cost-effective at scale
TOP AGGREGATORS TO SUBMIT:
────────────────────────────────────────────────────────────────────────
1. Data Axle (formerly Infogroup)
• Reach: 100+ publishers
• Propagation: 4-8 weeks
• Cost: ~$300-500/year
• How: Express Update Business
2. Neustar Localeze
• Reach: 100+ directories
• Propagation: 4-6 weeks
• Cost: ~$300-500/year
• How: Through Yext or direct
3. Foursquare
• Reach: Apps, maps, navigation
• Propagation: 2-4 weeks
• Cost: Free to claim
• How: business.foursquare.com
4. Factual (Now Foursquare)
• Reach: App developers
• Propagation: Varies
• Cost: Through Foursquare
• How: Merged with Foursquare
SUBMISSION TIMELINE:
────────────────────────────────────────────────────────────────────────
Week 1: Submit to all 4 aggregators
Week 3-4: Check for propagation
Week 6-8: Verify listings appearing
Week 8-12: Monitor for accuracy
Ongoing: Update any changes immediatelyCitation Building Process
Step-by-Step Implementation
code
// Citation Building Workflow
interface CitationBuildingPlan {
phases: Phase[];
timeline: string;
expectedOutcome: string;
}
const citationPlan: CitationBuildingPlan = {
phases: [
{
name: 'Phase 1: Foundation',
duration: 'Week 1',
tasks: [
{
task: 'Establish canonical NAP',
details: 'Document exact format for all elements',
priority: 'Critical',
},
{
task: 'Claim Google Business Profile',
details: 'Verify and fully optimize',
priority: 'Critical',
},
{
task: 'Claim Apple Maps',
details: 'Via Apple Business Connect',
priority: 'Critical',
},
{
task: 'Claim Bing Places',
details: 'Sync from GBP or manual',
priority: 'High',
},
],
},
{
name: 'Phase 2: Aggregators',
duration: 'Week 2',
tasks: [
{
task: 'Submit to Data Axle',
details: 'Via Express Update Business',
priority: 'High',
},
{
task: 'Submit to Neustar Localeze',
details: 'Direct or via Yext',
priority: 'High',
},
{
task: 'Claim Foursquare',
details: 'business.foursquare.com',
priority: 'High',
},
],
},
{
name: 'Phase 3: Major Directories',
duration: 'Week 2-3',
tasks: [
{
task: 'Claim Facebook Business Page',
details: 'Complete all info sections',
priority: 'High',
},
{
task: 'Claim Yelp',
details: 'Respond to reviews',
priority: 'High',
},
{
task: 'BBB Accreditation',
details: 'Consider if budget allows',
priority: 'Medium',
},
{
task: 'Yellow Pages',
details: 'YP.com listing',
priority: 'Medium',
},
],
},
{
name: 'Phase 4: Industry Directories',
duration: 'Week 3-4',
tasks: [
{
task: 'Identify top 10 industry directories',
details: 'Research competitors',
priority: 'High',
},
{
task: 'Claim/create listings',
details: 'Consistent NAP',
priority: 'High',
},
{
task: 'Optimize profiles',
details: 'Photos, descriptions, services',
priority: 'Medium',
},
],
},
{
name: 'Phase 5: Local Directories',
duration: 'Week 4+',
tasks: [
{
task: 'Join Chamber of Commerce',
details: 'Get listed on their directory',
priority: 'High',
},
{
task: 'Local business associations',
details: 'Industry-specific groups',
priority: 'Medium',
},
{
task: 'City/regional directories',
details: 'Local news, community sites',
priority: 'Low',
},
],
},
],
timeline: '4-6 weeks for initial build',
expectedOutcome: '50-75 quality citations with perfect consistency',
};
// Citation submission tracker
interface CitationSubmission {
directory: string;
tier: 1 | 2 | 3 | 4 | 5;
submissionDate: Date;
status: 'pending' | 'live' | 'needs_update' | 'rejected';
listingUrl?: string;
napAccuracy: boolean;
notes: string;
}
// Track all submissions
const citationTracker: CitationSubmission[] = [
{
directory: 'Google Business Profile',
tier: 1,
submissionDate: new Date('2026-01-05'),
status: 'live',
listingUrl: 'https://business.google.com/...',
napAccuracy: true,
notes: 'Fully optimized, verified',
},
// ... more submissions
];Industry-Specific Citation Lists
code
Industry Citation Directories:
═══════════════════════════════════════════════════════════════════════════
LEGAL:
────────────────────────────────────────────────────────────────────────
Essential Secondary Local
────────────────────────────────────────────────────────────────────────
Avvo Super Lawyers State Bar directory
FindLaw Martindale-Hubbell Local bar association
Justia Lawyers.com Court directories
Nolo HG.org
LawInfo LegalMatch
MEDICAL/HEALTHCARE:
────────────────────────────────────────────────────────────────────────
Essential Secondary Specialty
────────────────────────────────────────────────────────────────────────
Healthgrades Vitals Psychology Today
Zocdoc RateMDs TherapyDen
WebMD CareDash AAFP (family)
Doximity Wellness.com ACOG (OB/GYN)
HOME SERVICES:
────────────────────────────────────────────────────────────────────────
Essential Secondary Specialty
────────────────────────────────────────────────────────────────────────
Angi Porch Guild Quality
HomeAdvisor BuildZoom National (trade)
Thumbtack Networx State contractor boards
Houzz Modernize
RESTAURANTS:
────────────────────────────────────────────────────────────────────────
Essential Secondary Delivery
────────────────────────────────────────────────────────────────────────
TripAdvisor Zomato DoorDash
OpenTable The Infatuation Uber Eats
Yelp Eater Grubhub
Foursquare MenuPages Postmates
REAL ESTATE:
────────────────────────────────────────────────────────────────────────
Essential Secondary Local
────────────────────────────────────────────────────────────────────────
Zillow LoopNet Realtor associations
Realtor.com ColdwellBanker MLS directories
Trulia RE/MAX State RE commission
Redfin Century21
AUTOMOTIVE:
────────────────────────────────────────────────────────────────────────
Essential Secondary Specialty
────────────────────────────────────────────────────────────────────────
Cars.com Kelley Blue Book RepairPal
CarGurus Autotrader AAA Approved
Edmunds TrueCar ASE CertifiedCitation Management
Ongoing Maintenance
code
Citation Monitoring System:
═══════════════════════════════════════════════════════════════════════════
MONITORING SCHEDULE:
────────────────────────────────────────────────────────────────────────
Daily:
├── Google Alerts for business name
├── Review new citations appearing
└── Check for unauthorized changes
Weekly:
├── Verify top 10 citations accurate
├── Check for new review sites
└── Monitor competitor citations
Monthly:
├── Full citation audit (top 50)
├── Check aggregator propagation
├── Update citation tracking sheet
└── Fix any inconsistencies found
Quarterly:
├── Comprehensive citation review
├── Search for new directories
├── Competitor citation analysis
└── Strategy adjustment
COMMON MAINTENANCE ISSUES:
────────────────────────────────────────────────────────────────────────
Issue Cause Solution
────────────────────────────────────────────────────────────────────────
Duplicate listings Multiple claims Merge or delete extras
Old address showing Move not updated Update all citations
Wrong phone number Old data persisted Aggregator resubmission
Unclaimed listings Auto-generated Claim and correct
Keyword-stuffed name Previous SEO attempt Remove keywords
Closed listing Incorrect status Reopen/verify
TOOLS FOR MONITORING:
────────────────────────────────────────────────────────────────────────
Free:
├── Google Alerts
├── Google Search (manual)
├── Social media monitoring
Paid:
├── Moz Local ($129/year/location)
├── BrightLocal ($29-79/month)
├── Whitespark ($25-300/month)
├── Yext ($499+/year/location)Handling Duplicates
code
// Duplicate Citation Management
interface DuplicateCitation {
directory: string;
primaryListing: {
url: string;
verified: boolean;
nap: NAPData;
};
duplicates: DuplicateListing[];
resolution: Resolution;
}
interface DuplicateListing {
url: string;
napVariation: string;
canDelete: boolean;
canMerge: boolean;
}
// Resolution strategies
const duplicateResolution = {
googleBusinessProfile: {
strategy: 'Merge via Google',
process: [
'Identify duplicate in GBP dashboard',
'Click "Suggest an edit" on duplicate',
'Select "Place is permanently closed or never existed"',
'Or request merge through GBP support',
'Monitor for 1-2 weeks',
],
note: 'GBP duplicates are highest priority',
},
yelp: {
strategy: 'Report duplicate',
process: [
'Log into Yelp for Business',
'Go to duplicate listing',
'Click "Report this listing"',
'Select "Duplicate of another listing"',
'Provide URL of primary listing',
],
timeline: '1-3 weeks',
},
otherDirectories: {
strategy: 'Contact support or claim/delete',
process: [
'Try to claim duplicate listing',
'If claimable, delete or redirect',
'If not, contact directory support',
'Provide documentation of ownership',
],
timeline: 'Varies by directory',
},
};
// Track duplicate resolution
interface DuplicateTracker {
directory: string;
duplicateUrl: string;
reportedDate: Date;
status: 'reported' | 'in_progress' | 'resolved' | 'unresolvable';
resolvedDate?: Date;
notes: string;
}Citation Quality Assessment
Quality Scoring Framework
code
Citation Quality Metrics:
═══════════════════════════════════════════════════════════════════════════
QUALITY SCORING MODEL:
────────────────────────────────────────────────────────────────────────
Domain Authority (40%)
├── DA 80+: 10 points
├── DA 60-79: 8 points
├── DA 40-59: 6 points
├── DA 20-39: 4 points
└── DA <20: 2 points
Relevance (30%)
├── Industry-specific: 10 points
├── Local-specific: 8 points
├── General business: 6 points
├── Generic directory: 4 points
└── Low-quality/spam: 0 points
Completeness (20%)
├── Full profile + photos + reviews: 10 points
├── Full NAP + description: 8 points
├── Full NAP only: 6 points
├── Partial NAP: 4 points
└── Name only: 2 points
Freshness (10%)
├── Updated in last 3 months: 10 points
├── Updated in last 6 months: 8 points
├── Updated in last year: 6 points
├── Older than 1 year: 4 points
└── Never updated: 2 points
CITATION PORTFOLIO ANALYSIS:
────────────────────────────────────────────────────────────────────────
┌─────────────────────────────────────┐
│ IDEAL CITATION PORTFOLIO │
└─────────────────────────────────────┘
Tier 1 (Essential) ████████ 10-15%
Tier 2 (Important) ██████████████ 15-20%
Tier 3 (Aggregators) ████ 5-10%
Tier 4 (Industry) ██████████████████ 20-25%
Tier 5 (Local) ██████████████████████████████ 30-40%
BENCHMARK TARGETS:
────────────────────────────────────────────────────────────────────────
Metric Minimum Target Excellent
────────────────────────────────────────────────────────────────────────
Total Citations 30 50-75 100+
NAP Consistency 85% 95% 99%+
Tier 1 Coverage 80% 100% 100%
Tier 2 Coverage 50% 80% 100%
Industry Coverage 30% 60% 80%
Average Quality Score 6.0 7.5 8.5+pxlpeak Citation Monitoring
code
// pxlpeak Citation Management Integration
import { pxlpeak } from '@/lib/analytics';
// Configure citation monitoring
await pxlpeak.localSEO.citations.configure({
locations: [
{
id: 'loc_001',
name: 'Main Location',
canonicalNAP: {
businessName: "Joe's Plumbing",
address: '123 N Main St, Suite 100',
city: 'Philadelphia',
state: 'PA',
zip: '19103',
phone: '(215) 555-0100',
},
},
],
monitoring: {
enabled: true,
frequency: 'weekly',
// Auto-discover new citations
discovery: {
enabled: true,
searchQueries: [
'"Joe\'s Plumbing"',
'"(215) 555-0100"',
'"123 N Main St" Philadelphia',
],
},
// Check known citations
knownCitations: {
checkAccuracy: true,
checkStatus: true,
alertOnChanges: true,
},
},
alerts: {
napInconsistency: {
threshold: 1, // Alert on any inconsistency
notify: ['seo@company.com'],
},
newCitation: {
enabled: true,
notify: ['seo@company.com'],
},
duplicateListing: {
enabled: true,
notify: ['seo@company.com'],
},
},
reporting: {
frequency: 'monthly',
recipients: ['marketing@company.com'],
includeRecommendations: true,
},
});
// Get citation health report
const citationReport = await pxlpeak.localSEO.citations.getReport({
location: 'loc_001',
sections: [
'overview',
'consistency_score',
'directory_coverage',
'quality_distribution',
'issues_found',
'recommendations',
],
});
// Example report structure
interface CitationHealthReport {
overview: {
totalCitations: number;
consistencyScore: number; // 0-100
qualityScore: number; // 0-100
coverageScore: number; // 0-100
};
directoryStatus: {
tier1: { found: number; total: number; consistent: number };
tier2: { found: number; total: number; consistent: number };
aggregators: { submitted: number; propagated: number };
industry: { found: number; opportunities: number };
local: { found: number; opportunities: number };
};
issues: {
napInconsistencies: {
directory: string;
field: 'name' | 'address' | 'phone';
current: string;
expected: string;
severity: 'high' | 'medium' | 'low';
}[];
duplicates: {
directory: string;
urls: string[];
}[];
missingCitations: {
directory: string;
tier: number;
priority: 'high' | 'medium' | 'low';
}[];
};
recommendations: {
priority: 'high' | 'medium' | 'low';
action: string;
expectedImpact: string;
}[];
}Citation Building Checklist
code
Complete Citation Building Checklist:
═══════════════════════════════════════════════════════════════════════════
PREPARATION
□ Document canonical NAP (exact format)
□ Create NAP reference document
□ Gather supporting materials (photos, description)
□ Research competitor citations
TIER 1 (Essential - Week 1)
□ Google Business Profile - claimed & verified
□ Apple Maps / Apple Business Connect
□ Bing Places for Business
□ Facebook Business Page
□ Yelp Business - claimed
□ Better Business Bureau (if applicable)
DATA AGGREGATORS (Week 2)
□ Data Axle (Express Update Business)
□ Neustar Localeze
□ Foursquare for Business
□ Factual (via Foursquare)
TIER 2 (Important - Week 2-3)
□ Yellow Pages (YP.com)
□ Superpages
□ Manta
□ Citysearch
□ MapQuest
□ Hotfrog
INDUSTRY SPECIFIC (Week 3-4)
□ Identify top 10 for your industry
□ Claim/create all listings
□ Optimize with full information
□ Add photos where possible
LOCAL (Week 4+)
□ Chamber of Commerce
□ Local business associations
□ City/regional directories
□ Local news directories
□ Community websites
VERIFICATION
□ Audit all citations for accuracy
□ Check NAP consistency score
□ Verify aggregator propagation
□ Document all listing URLs
□ Set up monitoring alerts
ONGOING
□ Monthly consistency audit
□ Quarterly comprehensive review
□ Monitor for duplicates
□ Update any changes immediately
□ Track new citation opportunitiesRelated Documentation
- Local SEO Complete Guide - Overall local SEO strategy
- Google Business Profile - GBP optimization
- Review Management - Building reviews
- Local Content - Location page optimization
- Local Link Building - Local backlinks