1. Project Overview
For this case study, I examined the search presence of a local strength and fitness coaching studio operating in a competitive urban neighborhood. Local fitness businesses depend heavily on proximity signals, Google Maps ratings, and localized search intent (e.g., "personal trainer near me" or "strength gym [neighborhood]").
Increasingly, prospective members also use AI search engines like Perplexity, ChatGPT Search, and Google AI Overviews to ask questions like: "What is the best strength training studio for beginners near [District] with small class sizes?" This project looked at how to optimize for both traditional local map packs and generative AI discovery.
NAP stands for Name, Address, and Phone number. Search engines cross-check your business across directories (Yelp, Apple Maps, local chambers of commerce). If one listing says "Olympia Studio" and another says "Olympia Fitness LLC", or if the suite number is missing, search engines lose confidence in the location's accuracy and may rank competitors higher.
2. Observed Problems & Local Audit Findings
When auditing the studio's online footprint, I identified several clear areas for improvement:
- NAP Inconsistencies Across Core Directories: Minor variations in business naming and phone formatting across Yelp, YellowPages, and Bing Places caused split citation signals.
- Incomplete Google Business Profile: The profile lacked secondary categories (e.g., "Personal Trainer", "Gymnastics Club"), had missing business attributes (e.g., "Restroom available", "Appointment required"), and had no active Google Q&A entries.
- Thin Service Landing Pages: Program pages (e.g., 1-on-1 Coaching, Small Group Training) lacked clear neighborhood references, customer testimonials, and pricing transparency.
- Missing LocalBusiness Schema: The website had no structured JSON-LD code defining its geographical coordinates, opening hours, or offered programs.
- Limited Citability in AI Search: AI tools were unable to summarize the studio's offerings because program descriptions were buried in unformatted text without clear feature lists.
3. Local Keyword & Search Intent Research
Local search queries generally fall into three intent buckets: immediate proximity, service-specific, and decision-making comparisons.
| Search Category | Query Examples | User Goal | Optimization Focus |
|---|---|---|---|
| Proximity / Map | gym near me, personal trainer downtown | Find closest physical location | Google Business Profile & local citations |
| Service / Program | small group strength training classes | Compare specific program styles | Dedicated service landing page |
| AI / Conversational | best beginner-friendly gym in [District] | Get a curated summary or recommendation | Factual FAQ answers & review signals |
4. What I Would Implement
Here are the practical optimizations I designed to address these gaps:
A. Google Business Profile Optimization
- Set Fitness Center as the primary category, with Personal Trainer and Gym as secondary categories.
- Populate the Products/Services catalog with clear descriptions, duration, and transparent starting prices.
- Implement a proactive review gathering process asking satisfied members to mention specific coaches and class types in their reviews (natural keyword mentions).
B. ExerciseGym & LocalBusiness Schema
Adding structured JSON-LD data to the website provides search engines and AI assistants with unambiguous business facts:
{
"@context": "https://schema.org",
"@type": "ExerciseGym",
"name": "Olympia Fitness Studio",
"image": "https://example.com/images/studio.jpg",
"telephone": "+1-555-019-2834",
"address": {
"@type": "PostalAddress",
"streetAddress": "124 Market Street",
"addressLocality": "City Center",
"postalCode": "90210",
"addressCountry": "US"
},
"geo": {
"@type": "GeoCoordinates",
"latitude": 34.0522,
"longitude": -118.2437
},
"openingHoursSpecification": [
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"],
"opens": "06:00",
"closes": "21:00"
}
],
"priceRange": "$$"
}
C. Conversational FAQ Structuring for AI Discovery
To make it easy for AI tools (like Perplexity and ChatGPT Search) to quote the studio accurately, I structured short, direct answers to common questions on the main program pages:
- "What equipment does Olympia Fitness Studio have?" → Direct bulleted list of barbells, squat racks, kettlebells, and cardio equipment.
- "Are classes suitable for complete beginners?" → Direct answer detailing the introductory 4-week foundational onboarding program.
5. Tools Used in This Study
6. Key Learnings & What I Would Test Next
A few key takeaways from this local search project:
- Local SEO is foundational for AI search: Conversational AI assistants rely heavily on existing structured data, Google Maps listings, and authoritative directory citations to answer local questions. If your basic local SEO is weak, AI engines will skip you entirely.
- Review text matters as much as star count: Reviews that naturally mention the specific service (e.g., "the personal training program helped my posture") provide valuable contextual keywords for local search rankings.
- What I Would Test Next: If applied live, I would measure local map pack rankings at 1-mile, 3-mile, and 5-mile grid radius intervals to see how proximity visibility expands over 90 days of consistent citation building.
7. What Success Would Look Like
Qualitative goals and performance benchmarks for this project:
- Goal 1: Consistent appearance in the top-3 Google Maps pack for high-intent queries within a 3-mile radius.
- Goal 2: 100% NAP consistency across the top 20 local business citation directories.
- Goal 3: Accurate and positive factual citations when tested across Perplexity and ChatGPT Search for local fitness queries.
- Goal 4: Clear, frictionless mobile class booking path for visitors coming from search.