Listing optimisation, review response strategy, Google Posts, local pack ranking factors, NAP consistency, and category selection for Google Business Profile. Use when optimising GBP listings, managing reviews, or improving local search visibility.
Listing optimisation, review response strategy, Google Posts, local pack ranking factors, NAP consistency, and category selection for Google Business Profile. Use when optimising GBP listings, managing reviews, or improving local search visibility.
Google Business Profile — Listing Optimisation and Local Pack Strategy
Purpose
SYNTHEX connects to Google Business Profile via OAuth to manage locations,
reviews, posts, insights, and photos. This skill documents how to optimise
GBP listings for maximum local search visibility and how to use Synthex
infrastructure to maintain listing health.
Need to select categories?
|
+--> Search available categories
| getCategories('your service', 'AU')
|
+--> Select primary category
| Rule: most specific match to your core service
| "Plumber" not "Home Services"
| "Thai Restaurant" not "Restaurant"
|
+--> Select additional categories (3-5)
| Cover secondary services only
| Do not add aspirational categories
| Max 9 additional categories allowed
|
+--> Verify against competitors
Check what categories top-ranking local competitors use
Missing a common category = missed relevance signal
NAP Consistency Protocol
NAP = Name, Address, Phone. Must be identical across all online presence.
Source of Truth
GBPLocation.address is the canonical NAP record. All citations must match exactly.
Australian Address Format
[Business Name]
[Suite/Unit X, ]123 Street Name
Suburb STATE POSTCODE
Australia
Phone: (0X) XXXX XXXX or 04XX XXX XXX
Where to Enforce NAP
Google Business Profile (primary)
Business website (header/footer + contact page)
All directory citations (Yellow Pages AU, True Local, Hotfrog, etc.)
Social media profiles
Schema markup on website (LocalBusiness structured data)
Common NAP Inconsistencies to Audit
"St" vs "Street", "Rd" vs "Road"
Old phone numbers on legacy listings
Abbreviated vs full suburb/state names
Missing suite/unit numbers
Different trading name vs legal entity name
Image Sourcing (REAL IMAGES ONLY — founder mandate)
GBP photos and Google Post images come from owned real photos —
public/reference-library/ (manifest.json; 135 CCW product subjects) or the PRIVATE
Supabase bucket reference-library-private (customer job photos; ingest via
POST /api/admin/private-refs, served by signed URLs). Any AI-generated post image must
be produced via lib/services/ai/image-generation.tsgenerateImage() / the
generate_image MCP tool — grounded-by-default, and BLOCKED with "No owned references
for this subject — add real photos to the reference library first" when there is no
coverage. Never call an image provider or stock-photo API directly (CI guard test
tests/unit/ai/no-direct-image-apis.test.ts). Frame extraction from owned videos via
the Railway media worker is the corpus-growth path for fresh monthly photos. See
.claude/rules/real-images-only.md and the grounded-visuals skill.
Photo Optimisation
Minimum Photo Set
Type
Count
Purpose
Logo
1
Brand recognition in search
Cover
1
First impression in listing
Interior
3+
Show the space customers will experience
Exterior
3+
Help customers find the location
Team
3+
Build trust and personal connection
Products/Services
3+
Showcase what you offer
Photo Requirements
Minimum 720px on the longest edge
JPEG format preferred (smaller file size than PNG)
Geotag photos with business coordinates
Upload 2-3 fresh photos monthly to signal an active listing
Use listPhotos(connectionId, locationName) to audit current photo inventory
Insights Interpretation
useGBPInsights(locationId, days) returns totals and 30-day trend data.
Key Metrics
Metric
What It Measures
Good Benchmark
searchViews
Discovery via Google Search
Trending up month-over-month
mapsViews
Discovery via Google Maps
Higher than searchViews for local businesses
websiteClicks
Click-throughs to website
>5% of total views for service businesses
phoneClicks
Direct phone calls
Conversion signal — track against revenue
directionClicks
Navigation requests
Strongest intent signal for physical locations
Conversion Rate Formula
Conversion Rate = (websiteClicks + phoneClicks + directionClicks) / (searchViews + mapsViews) * 100
Target: >5% for service businesses, >8% for retail/hospitality
Trend Analysis
Use the trend array from useGBPInsights to plot 30-day performance.
Correlate changes with:
Review response activity
Google Posts publishing frequency
Photo uploads
Category or description changes
Algorithm updates (cross-reference with google-updates-sentinel skill)
Reference skill: This is a read-only architecture guide — it documents existing systems and does not generate creative or code output. No capability uplift block is needed.
Foundation & Gate Wiring (SYN-1049)
Adopted from the senior-skill standard so every artefact this connector produces is checked against the locked foundation before it lands.
Reads at every invocation (never cached — re-read each run):
.claude/memory/verification-gates.md — gate state for any claim referenced.
Output gate: every client-facing artefact this connector produces routes through brand-voice-enforce before the CEO batched-review queue. A REJECT blocks the artefact until the quoted offending string is fixed.
Evidence standard: every quantitative or factual claim carries exactly one tag — [VERIFIED] / [INFERENCE] / [UNCONFIRMED]. Untagged = defect (.claude/rules/fabel-evidence-standard.md). Never state a projected result as fact.