Skip to main content
Project Resource Document

Project Name

Project Resource Document

by Proscris Robert Szopa
  • Back to Project
  • View All Projects
  • Contact Proscris
  • Project Links
  • Project Page
  • Project Website
  • Project App
  • Project Map
  • Project Files
  • Project Database
  • Project Document
Project Name
Project Resource Document
by Proscris - Robert Szopa
Project Links
Project Page Project Website Project App Project Map Project Files Project Database Project Document
Back to Project View All Projects Contact Proscris
Home Projects Project Name Project Resource Document (PRD)

Project Video

Project Links

  • Project Page
  • Project Website
  • Project App
  • Project Map
  • Project Files
  • Project Database
  • Project Document
  • Back to Project
  • View All Projects
  • Contact Proscris
Overview

Platform Overview

GymSpotter PRO is a comprehensive professional network and digital ecosystem designed specifically for the global fitness industry. The platform transforms how fitness professionals establish their online presence, build their personal brand, generate qualified leads, and streamline their business operations through a sophisticated data architecture that interconnects professionals, companies, and educational content.

This Product Requirements Document (PRD) outlines the detailed specifications, features, technical architecture, and comprehensive data model for the GymSpotter PRO platform. The document serves as the definitive reference for developers, database architects, stakeholders, and content managers to understand the full scope, data relationships, and implementation details of the platform.

Key Features Overview
  • Professional Profiles: Comprehensive "Digital CV" with 150+ data fields capturing credentials, specializations, and expertise
  • Company Profiles: Business entities with team management, multi-location support, and dealer/service provider distinctions
  • Learning Management System: Full-featured LMS with courses, lessons, quizzes, and shareable certificates
  • Alignable-Inspired Invitation System: Trust-based network growth with second-degree connections and warm introductions
  • GymSpotter 360: Advanced networking visualization showing connections of connections
  • Ambassador Program: 20% lifetime recurring affiliate system tracked at the database level
  • Professional Website Builder: Turnkey web presence with dynamic profile data integration
  • Equipment Ecosystem: Specialized features for commercial and residential equipment professionals
  • Gamification & Recognition: Achievement badges, leaderboards, and reputation scoring

Platform Information

Platform Name GymSpotter PRO
Primary Market Global Fitness Industry
Target Audience Personal trainers, nutritionists, specialty coaches, fitness instructors, gym consultants, commercial & residential fitness equipment sales professionals, gym owners, fitness facility managers
Core Value Professional networking, education, and business management for fitness industry professionals
Data Architecture 7 primary custom post types, 400+ custom fields, 15+ taxonomies, complex relationship mappings

Market Vision

GymSpotter PRO aims to become the definitive professional network and digital ecosystem for the global fitness industry. By creating a purpose-built environment with a sophisticated data model tailored to fitness professionals' unique needs, the platform will establish itself as the indispensable hub for career and business growth within the fitness community.

Market Opportunity

The global fitness industry is characterized by high professional fragmentation. Millions of practitioners—including personal trainers, nutritionists, specialty coaches, gym consultants, fitness equipment sales professionals, and facility owners—operate as independent agents, small business owners, or employees of larger organizations. These professionals actively seek effective methods to build and manage their professional networks, verify credentials, and showcase expertise.

Existing platforms offer incomplete solutions. Mainstream professional networks like LinkedIn lack the granular data fields needed for fitness-specific information (certifications, specializations, equipment expertise), while social media platforms provide visibility but lack structured professional data management and verification systems.

GymSpotter PRO fills this significant market gap by functioning as the authoritative, data-rich "LinkedIn for the Fitness Industry," providing a centralized platform with purpose-built data structures for capturing, verifying, and showcasing professional fitness credentials and relationships.

Core Value Proposition

For the modern fitness professional, establishing a credible, data-verified online presence is fundamental for success. GymSpotter PRO provides a comprehensive data ecosystem that captures every aspect of a professional's career, from employment relationships and certifications to client success stories and equipment expertise.

The platform's sophisticated relational database architecture enables powerful features like:

  • Automatic cross-referencing between professionals and their employers
  • Equipment brand relationships distinguishing sales vs. service capabilities
  • Educational achievement tracking with verified certificates
  • Multi-dimensional search capabilities across specializations, locations, and credentials
  • Network visualization showing professional relationships and referral paths

Strategic Direction

  1. Data-First Architecture: Build a comprehensive relational database that captures the full complexity of fitness industry relationships and credentials.
  2. Verification Authority: Establish robust verification systems for professional credentials, company relationships, and educational achievements.
  3. Network Intelligence: Leverage graph database concepts to enable powerful networking features like warm introductions and referral tracking.
  4. SEO Dominance: Structure data for maximum search engine visibility with schema markup and topical authority building.
  5. Platform Ecosystem: Create interconnected data flows between professionals, companies, and educational content for a self-reinforcing ecosystem.

User Personas

GymSpotter PRO serves several distinct user segments within the fitness industry, each interacting with different aspects of our comprehensive data model.

Alex: The Independent Personal Trainer

Background: 32 years old, certified personal trainer with NASM CPT and ACE certifications, 5 years of experience, currently self-employed working at multiple gyms

Database Interaction:

  • Professional profile with employment_type: "self_employed"
  • Multiple certifications tracked in credentials_certifications repeatable group
  • Service areas linked to service_area taxonomy
  • Client testimonials and before/after results in portfolio fields

Goals: Build personal brand, verify credentials, attract private clients, establish referral network

Key Features Used: Professional profile with verification badges, certification showcase, client testimonial system, networking features

Sarah: The Studio Owner

Background: 38 years old, owns a boutique Pilates studio with 5 instructors, specializes in pre/postnatal fitness

Database Interaction:

  • Company profile as primary entity with facility information
  • Professional profile linked via company_employed relationship
  • Team members tracked through company_team_members field
  • Multiple locations if franchise using company_additional_locations
  • Equipment relationships for studio equipment brands

Goals: Showcase studio and team, attract new clients, recruit qualified instructors, manage online presence

Key Features Used: Company profile with team showcase, facility amenities display, class scheduling integration, instructor profiles

Robert: The Commercial Equipment Sales Professional

Background: 41 years old, territory sales manager for major fitness equipment manufacturer, covers 3-state region

Database Interaction:

  • Professional profile with equipment_sales_active: true
  • Equipment sales type: "commercial"
  • Territory tracked via service_area taxonomy
  • Brand relationships through equipment_brand taxonomy
  • Portfolio projects in equipment_portfolio repeatable group
  • Company employment linked to manufacturer entity

Goals: Identify facility expansion opportunities, connect with decision-makers, showcase successful installations

Key Features Used: Equipment portfolio showcase, brand verification, territory mapping, facility owner connections

Marcus: The Aspiring Fitness Professional

Background: 26 years old, recently certified, works part-time at a commercial gym while building private client base

Database Interaction:

  • Professional profile with employment_type: "company_employed"
  • Limited certifications in early career stage
  • Active in course enrollment through user_course_progress
  • Building network through connection requests
  • Earning platform certificates for credibility

Goals: Build professional credibility, learn business skills, transition to full-time training, establish online presence

Key Features Used: Free certification courses, profile building tools, networking features, educational content

Data Strategy

The foundational strategy for populating the GymSpotter PRO directory follows a sophisticated two-phase model that leverages our comprehensive data architecture: large-scale data scraping to populate initial professional and company entities, followed by a user-driven process for claiming and enriching profiles with verified credentials and relationships.

Phase 1: Directory Population via Web Scraping

The initial data population creates both Professional and Company entities through systematic scraping of publicly available information, establishing the foundational relationship graph.

Professional Entity Data Collection:

  • Full name → post_title
  • Professional title → professional_profile_basic_title
  • Current employer → professional_employment_status_company (relationship)
  • Location → professional_contact_location fields
  • Basic bio → post_content
  • LinkedIn URL → professional_social_profiles_linkedin

Company Entity Data Collection:

  • Company name → post_title
  • Company type → company_info_basic_type taxonomy
  • Location → company_location_headquarters fields
  • Website → company_contact_info_website
  • Employee count → company_info_basic_size
  • Facility type (if applicable) → company_facility_type

Data Enrichment Process:

  • Cross-reference professionals with companies to establish employment relationships
  • Identify equipment brands mentioned to pre-populate brand relationships
  • Extract certifications mentioned for later verification
  • Geocode addresses for map functionality
  • Generate SEO-optimized URLs based on name and location
Phase 2: "Claim Your Profile" Engagement Model

The claiming process transforms basic scraped data into rich, verified professional profiles by guiding users through systematic data collection across all custom fields.

Professional Profile Claiming Flow:

  1. Identity Verification: Confirm identity and set professional_profile_verification fields
  2. Credential Upload: Populate professional_credentials_certifications with verified documents
  3. Employment Verification: Confirm or update professional_employment_status relationships
  4. Specialization Selection: Choose from specialization taxonomy
  5. Service Configuration: Define professional_services_offerings
  6. Portfolio Creation: Add testimonials and results to professional_portfolio fields

Company Profile Claiming Flow:

  1. Business Verification: Confirm ownership and company_info_verification fields
  2. Team Association: Link team members via company_team_members
  3. Location Details: Complete all company_location fields including maps
  4. Service/Product Definition: Configure company_products fields
  5. Brand Relationships: Establish equipment_brand connections
  6. Facility Information: If applicable, complete company_facility fields

Data Quality Improvements:

  • Scraped data completeness: ~20%
  • Claimed profile completeness: ~80%
  • Verified profile completeness: ~95%
  • Relationship accuracy: Improves from 60% to 99%

Topical Authority Architecture

GymSpotter PRO's data architecture is specifically designed to establish dominant topical authority in fitness professional search queries through strategic content clustering and internal linking based on our taxonomy and relationship structures.

Content Clustering Strategy

Primary Topic Clusters:

1. Professional Type Clusters:

  • Hub: /personal-trainers/ (professional_category taxonomy archive)
  • Spokes:
    • /personal-trainers/los-angeles/ (location combination)
    • /personal-trainers/weight-loss/ (specialization combination)
    • /personal-trainers/certified/ (credential filtering)
    • Individual trainer profiles as content nodes

2. Location-Based Clusters:

  • Hub: /fitness-professionals/california/ (service_area taxonomy)
  • Spokes:
    • /gyms/los-angeles/ (company + location)
    • /personal-trainers/los-angeles/ (professional + location)
    • /equipment-dealers/los-angeles/ (equipment + location)
    • Neighborhood-level pages for major metros

3. Equipment Brand Clusters:

  • Hub: /equipment/life-fitness/ (equipment_brand taxonomy)
  • Spokes:
    • /equipment/life-fitness/dealers/ (sales relationship)
    • /equipment/life-fitness/service/ (service relationship)
    • /equipment/life-fitness/reviews/ (user-generated content)
    • Individual dealer/service provider profiles

Internal Linking Logic:

// Automatic related professionals based on shared taxonomies function get_related_professionals($professional_id) { $shared_taxonomies = ['specialization', 'service_area', 'equipment_brand']; $related = []; foreach($shared_taxonomies as $taxonomy) { $terms = wp_get_post_terms($professional_id, $taxonomy); foreach($terms as $term) { $related = array_merge($related, get_posts([ 'post_type' => 'professional', 'tax_query' => [[ 'taxonomy' => $taxonomy, 'terms' => $term->term_id ]], 'exclude' => $professional_id, 'posts_per_page' => 5 ])); } } return array_unique($related); }
Schema Markup Implementation

Professional Profile Schema:

{ "@context": "https://schema.org", "@type": "Person", "name": "{professional_name}", "jobTitle": "{professional_title}", "worksFor": { "@type": "Organization", "name": "{company_name}", "url": "{company_url}" }, "address": { "@type": "PostalAddress", "addressLocality": "{city}", "addressRegion": "{state}" }, "hasCredential": [ { "@type": "EducationalOccupationalCredential", "credentialCategory": "certification", "name": "{certification_name}", "issuedBy": { "@type": "Organization", "name": "{certification_org}" } } ], "knowsAbout": ["{specializations}"], "aggregateRating": { "@type": "AggregateRating", "ratingValue": "{average_rating}", "reviewCount": "{review_count}" } }

Company/Gym Schema:

{ "@context": "https://schema.org", "@type": "HealthAndBeautyBusiness", "name": "{company_name}", "description": "{company_description}", "employee": [ { "@type": "Person", "name": "{team_member_name}", "jobTitle": "{position}" } ], "address": { "@type": "PostalAddress", "streetAddress": "{street}", "addressLocality": "{city}", "addressRegion": "{state}", "postalCode": "{zip}" }, "openingHoursSpecification": [{hours_data}], "hasOfferCatalog": { "@type": "OfferCatalog", "name": "Services", "itemListElement": [{services_data}] } }

Course/Certificate Schema:

{ "@context": "https://schema.org", "@type": "Course", "name": "{course_title}", "description": "{course_description}", "provider": { "@type": "Organization", "name": "GymSpotter PRO" }, "hasCourseInstance": { "@type": "CourseInstance", "courseMode": "online", "duration": "{duration}" }, "educationalCredentialAwarded": { "@type": "EducationalOccupationalCredential", "name": "{certificate_name}", "url": "{verification_url}" } }

30-Day Roadmap

To successfully launch GymSpotter PRO, an aggressive 30-day sprint strategy focuses on building the core data architecture and populating it with real professional data to achieve immediate market presence.

Week 1: Database Architecture & Core Development

Days 1-3: Environment Setup & Data Architecture

  • Configure WordPress multisite for scalability
  • Install and configure Meta Box AIO with all extensions
  • Create all 7 Custom Post Types with proper settings
  • Implement all 15 taxonomies with hierarchical structures
  • Set up Meta Box Relationships for all entity connections

Days 4-5: Custom Fields Implementation

  • Import Professional entity field groups (200+ fields)
  • Import Company entity field groups (150+ fields)
  • Import Education system field groups (100+ fields)
  • Configure conditional logic for field dependencies
  • Set up user meta fields for progress tracking

Days 6-7: Core Features & Templates

  • Build professional profile template with all field displays
  • Create company profile template with multi-location support
  • Implement search functionality with taxonomy filters
  • Set up basic user registration and profile claiming flow
  • Configure Meta Box Views for frontend displays

Week 1 Deliverable: Functional platform with complete data architecture ready for content

Week 2: Data Population & Verification Systems

Days 8-10: Web Scraping Infrastructure

  • Deploy scraping infrastructure for LinkedIn and public directories
  • Target: 10,000 professional profiles with basic data
  • Target: 2,000 company profiles (gyms, studios, dealers)
  • Implement deduplication algorithms
  • Create professional-company relationship mappings

Days 11-12: Profile Claiming System

  • Build "Claim Your Profile" workflow with email verification
  • Implement progressive profile completion wizard
  • Create verification badge system for credentials
  • Set up document upload and verification queue
  • Configure automated emails for profile discovery

Days 13-14: Networking Features

  • Implement connection request system
  • Build GymSpotter 360 second-degree view (PRO feature)
  • Create invitation system with tracking
  • Set up warm introduction request flow
  • Configure connection limits (free vs PRO)

Week 2 Deliverable: 10,000+ populated profiles with claiming system active

Week 3: Monetization & Education Platform

Days 15-17: Subscription & Payment Systems

  • Integrate Stripe for subscription management
  • Implement free to PRO upgrade flow
  • Build PRO feature gates throughout platform
  • Create subscription management dashboard
  • Set up automated billing and renewal emails

Days 18-19: Ambassador Program

  • Build affiliate tracking system with unique codes
  • Create ambassador dashboard with real-time stats
  • Implement 20% lifetime commission calculation
  • Set up leaderboards for top referrers
  • Configure monthly payout system

Days 20-21: Basic LMS Launch

  • Create first 2 free certification courses
  • Build course player with video support
  • Implement quiz system with scoring
  • Create certificate generation system
  • Set up LinkedIn sharing for certificates

Week 3 Deliverable: Revenue systems active with initial education content

Week 4: Polish, Launch & Initial Marketing

Days 22-24: SEO & Performance Optimization

  • Implement all schema markup for entities
  • Create XML sitemaps for all content types
  • Set up Redis caching for database queries
  • Optimize page load speeds (target <2 seconds)
  • Configure CDN for media delivery
  • Build category and location landing pages for SEO

Days 25-26: Gamification & Analytics

  • Implement profile completeness meter and badges
  • Create achievement system for platform milestones
  • Set up analytics tracking for all user actions
  • Build admin dashboard for platform metrics
  • Configure profile view tracking and analytics

Days 27-28: Equipment Features & Testing

  • Launch Equipment Compare Tool (freemium model)
  • Set up equipment dealer/service provider distinctions
  • Create equipment brand landing pages
  • Implement referral tracking for equipment sales
  • Comprehensive platform testing and bug fixes

Days 29-30: Launch Preparation

  • Send profile claim emails to first 1,000 professionals
  • Activate ambassador program with launch incentives
  • Deploy monitoring and error tracking systems
  • Create help documentation and FAQs
  • Soft launch to beta user group

Week 4 Deliverable: Platform launched with 10,000+ profiles, revenue systems active, and initial user acquisition underway

30-Day Success Metrics
Metric Day 7 Target Day 14 Target Day 21 Target Day 30 Target
Platform Development Core architecture complete Data populated Monetization active Fully launched
Professional Profiles 0 10,000 scraped 10,000+ 15,000+
Company Profiles 0 2,000 scraped 2,000+ 3,000+
Claimed Profiles 0 Testing only 50 beta testers 500+
PRO Subscribers 0 0 10 beta testers 50+
Course Completions 0 0 20 100+
Ambassador Sign-ups 0 0 5 25+

Key Strategies

To ensure successful execution of this ambitious 30-day launch plan, the following strategic principles must guide all decisions and resource allocation:

1. Data Architecture First

The sophisticated data model is the foundation of GymSpotter PRO's competitive advantage. Every feature builds upon the relationships between professionals, companies, and education.

Implementation Priorities:

  • Invest time upfront in proper field naming conventions (hierarchical structure)
  • Ensure all relationships are bi-directional and queryable
  • Build data validation rules to maintain quality from day one
  • Create comprehensive documentation of all field purposes and relationships
  • Design for scalability - anticipate 1M+ professionals within 12 months

Data Quality Standards:

  • Every professional must have a primary location (city minimum)
  • Every company must have at least one verified address
  • Equipment brands must distinguish between sales and service relationships
  • All certifications require issuing organization for verification
  • Course completions automatically update professional profiles
2. Network Effects Through Relationships

The platform's value increases exponentially as more relationships are established. Every connection creates multiple data points that enhance discovery and trust.

Relationship Types to Prioritize:

  • Professional ↔ Company: Employment relationships create team pages and enhance both entities
  • Professional ↔ Professional: Network connections enable warm introductions and referrals
  • Company ↔ Equipment Brands: Dealer/service relationships create brand authority pages
  • Professional ↔ Certifications: Verified credentials build trust and search visibility
  • User ↔ Courses: Education tracking showcases continuous professional development

Network Growth Tactics:

  • Pre-populate obvious relationships during scraping (employee ↔ gym)
  • Incentivize relationship confirmation during profile claiming
  • Show "mutual connections" to encourage new connections
  • Create relationship-based achievements and badges
  • Enable bulk invitation of existing professional networks
3. SEO Dominance Through Structure

The hierarchical data structure creates natural SEO advantages through highly specific, long-tail keyword targeting across multiple dimensions.

SEO Page Generation Strategy:

  • Location Pages: /personal-trainers/california/los-angeles/santa-monica/
  • Specialization Pages: /nutritionists/weight-loss/plant-based/
  • Credential Pages: /trainers/nasm-certified/corrective-exercise/
  • Brand Pages: /equipment/life-fitness/dealers/california/
  • Combination Pages: /prenatal-yoga-instructors/los-angeles/

Content Auto-Generation:

// Auto-generate location + specialty page content function generate_seo_page($location, $specialty) { $professionals = query_professionals([ 'location' => $location, 'specialty' => $specialty ]); $content = "Find the best {$specialty} professionals in {$location}. "; $content .= "GymSpotter PRO lists {count($professionals)} verified "; $content .= "{$specialty} experts serving the {$location} area."; // Add schema markup $content .= generate_local_business_schema($professionals); return $content; }
4. Trust Through Verification

The sophisticated verification system differentiates GymSpotter PRO from generic directories by ensuring data accuracy and professional legitimacy.

Verification Levels:

Level Requirements Benefits Badge
Basic Email verification + Profile 60% complete Appear in search results None
Verified ID verification + 1 credential verified Verified badge + Higher ranking ✓ Verified
PRO Verified All credentials verified + PRO subscription PRO badge + Top search placement ✓ PRO Verified
Elite PRO + 5+ verified credentials + 95% profile Elite badge + Featured placement ★ Elite Professional

Verification Process Automation:

  • OCR scanning of certification documents
  • API integration with major certifying bodies (NASM, ACE, etc.)
  • Automated certificate expiration tracking and alerts
  • Bulk verification for company employees
  • Public verification page for each professional
5. Monetization Through Value Layers

The data architecture enables multiple monetization streams that feel natural and provide clear value at each tier.

Revenue Optimization by User Type:

User Type Free Value PRO Value ($50/mo) Add-On Potential
Personal Trainer Basic profile, 10 connections/mo Verification, unlimited networking, analytics Website ($50/mo), ClientFlow ($20/mo)
Studio Owner Company profile, team display Featured placement, lead capture, GymSpotter 360 Multi-location website ($250/mo), Tools
Equipment Sales Profile, basic portfolio Territory mapping, warm intros, Compare Tool Lead alerts ($50/mo), Proposal tool
Online Coach Profile, course access Global visibility, content tools AI Workspace ($50/mo), Program Architect

Upsell Triggers Based on Behavior:

  • Hit connection limit → Upgrade to PRO for unlimited
  • Complete free course → Offer PRO for advanced courses
  • High profile views → Show analytics preview, upgrade for full access
  • Manual content creation → Demonstrate AI tools value
  • Multiple locations mentioned → Suggest website package

Success Metrics

Success uyerja for GymSpotter PRO are structured around data quality, user engagement, and revenue generation, with specific KPIs tied to our sophisticated data model.

Data Quality Metrics
Metric Description Month 1 Month 3 Month 6 Year 1
Total Profiles Professional + Company entities 15,000 50,000 100,000 250,000
Profile Completeness Average % of fields populated 25% 40% 55% 70%
Verified Profiles Profiles with credential verification 100 1,000 5,000 20,000
Relationship Density Avg connections per professional 2 8 15 25
Company Team Size Avg professionals per company 3 5 8 12
Engagement Metrics
Metric Description Month 1 Month 3 Month 6 Year 1
Profile Claims Scraped profiles claimed by owners 500 2,500 10,000 40,000
Monthly Active Users Logged in within 30 days 1,000 5,000 20,000 75,000
Course Completions Free + PRO courses finished 100 1,000 5,000 25,000
Certificates Shared Shared on social media 50 500 2,500 15,000
Viral Coefficient New users per existing user 0.2 0.5 0.8 1.2
Revenue Metrics
Metric Description Month 1 Month 3 Month 6 Year 1
PRO Subscribers Active PRO memberships 50 500 2,500 10,000
MRR Monthly Recurring Revenue $2,500 $25,000 $150,000 $750,000
Website Customers Active website subscriptions 5 50 250 1,500
Avg Revenue/User ARPU for paying customers $50 $55 $65 $75
Ambassador Earnings Total commissions paid $500 $5,000 $30,000 $150,000

Conclusion

GymSpotter PRO represents a transformative opportunity to create the definitive professional network for the global fitness industry through a sophisticated, data-driven approach that no competitor can easily replicate.

The platform's competitive advantages stem from its comprehensive data architecture:

  • 400+ Custom Fields: Capturing granular professional data that generic platforms cannot accommodate
  • Complex Relationships: Modeling real-world connections between professionals, companies, brands, and education
  • Verification Authority: Building trust through systematic credential verification and progressive badge systems
  • Topical Authority: Creating thousands of SEO-optimized pages through taxonomy combinations
  • Network Intelligence: Enabling features like warm introductions and second-degree visibility that require sophisticated data relationships

The 30-day launch roadmap demonstrates that with focused execution on the data architecture first, the platform can achieve critical mass quickly through the scrape-and-claim model while building toward sustainable growth through network effects and education-driven viral loops.

The multi-layered monetization model, anchored by the $50/month PRO subscription and enhanced by high-margin add-ons like custom websites and specialized tools, creates a clear path to profitability. The 20% lifetime recurring commission structure for the Ambassador Program ensures aligned incentives for organic growth through the fitness professional community itself.

By treating equipment sales professionals as first-class citizens with specialized features and distinguishing between sales and service relationships, GymSpotter PRO addresses an underserved but lucrative market segment that can drive additional B2B opportunities.

Most importantly, the platform's value compounds over time. Every new professional claimed, every relationship established, every certification verified, and every course completed adds to the collective intelligence of the system, creating an ever-deepening moat that protects against competition.

With successful execution, GymSpotter PRO will achieve:

  • Market leadership as the fitness industry's professional network of record
  • $10M+ ARR within 18 months through diversified revenue streams
  • 250,000+ professional profiles creating the industry's most comprehensive directory
  • A self-reinforcing ecosystem where professionals, companies, and education create mutual value
  • An unassailable competitive position built on network effects and data depth

The time is now to build the digital infrastructure that will power the fitness industry's professional ecosystem for the next decade and beyond.

Database Tables & Fields

This section provides a comprehensive overview of all database tables, custom fields, and their properties in the GymSpotter PRO platform. Each entity's fields are organized into logical groups with complete details on field types, options, and relationships.

Professional Entity Fields

The Professional entity contains 200+ fields organized into hierarchical groups that capture every aspect of a fitness professional's identity, credentials, services, and relationships.

professional_profile Fields

professional_profile_basic

Field ID Field Type Description Options/Notes
professional_profile_basic_name Text Professional's full name Required, indexed for search
professional_profile_basic_tagline Text Professional's headline/tagline 160 character limit, SEO optimized
professional_profile_basic_title Select Professional title Options:
• personal_trainer - Personal Trainer
• fitness_coach - Fitness Coach
• group_fitness_instructor - Group Fitness Instructor
• yoga_instructor - Yoga Instructor
• pilates_instructor - Pilates Instructor
• nutrition_coach - Nutrition Coach
• strength_coach - Strength & Conditioning Coach
• wellness_coach - Wellness Coach
• physical_therapist - Physical Therapist
• massage_therapist - Massage Therapist
• equipment_specialist - Equipment Sales Specialist
• gym_owner - Gym Owner
• fitness_director - Fitness Director
• other - Other
professional_profile_basic_title_other Text Custom title when "other" selected Conditional field, visible only when title = "other"
professional_profile_basic_bio WYSIWYG Detailed professional bio Rich text editor, 1000 word limit
professional_profile_basic_photo Image Professional headshot/portrait Square format recommended, min 400x400px
professional_profile_basic_featured Switch Featured status flag Boolean (true/false), admin controlled
professional_profile_basic_completion Number Profile completion percentage Auto-calculated, range 0-100

professional_profile_verification

Field ID Field Type Description Options/Notes
professional_profile_verification_verified Switch Overall verification status Boolean (true/false)
professional_profile_verification_date Date When verification was completed Admin-set date
professional_profile_verification_badges Checkbox List Earned verification badges Options:
• identity_verified - Identity Verified
• education_verified - Education Verified
• certification_verified - Certifications Verified
• insurance_verified - Insurance Verified
• background_check - Background Check Passed
• reference_check - References Verified
• skill_assessment - Skills Assessment Passed
professional_profile_verification_level Select Level of verification achieved Options:
• basic - Basic Verification
• standard - Standard Verification
• premium - Premium Verification
• elite - Elite Verification

professional_profile_membership

Field ID Field Type Description Options/Notes
professional_profile_membership_type Select Membership level Options:
• free - Free Member
• pro - PRO Member ($50/month)
• pro_annual - PRO Annual ($500/year)
• enterprise - Enterprise (via Company)
professional_profile_membership_since Date Registration date Automatically set on registration
professional_profile_membership_status Select Current account status Options:
• active - Active
• pending - Pending Verification
• suspended - Suspended
• inactive - Inactive
• banned - Banned
professional_profile_membership_renewal Date Next renewal date For paid memberships
professional_contact Fields

professional_contact_details

Field ID Field Type Description Options/Notes
professional_contact_details_email Email Primary contact email Validated format, privacy controls
professional_contact_details_phone Text Contact phone number Format: (XXX) XXX-XXXX
professional_contact_details_phone_type Select Type of phone number Options:
• mobile - Mobile
• office - Office
• home - Home
professional_contact_details_preferred Select Preferred contact method Options:
• email - Email
• phone - Phone
• text - Text Message
• app - In-App Message
professional_contact_details_website URL Personal website URL Validated URL format

professional_contact_location

Field ID Field Type Description Options/Notes
professional_contact_location_street Text Street address line 1 Primary address component
professional_contact_location_street2 Text Street address line 2 Optional (apt, suite, etc.)
professional_contact_location_city Text City name Required for location-based search
professional_contact_location_state Select State/Province Dynamic options based on country
professional_contact_location_zip Text ZIP/Postal code Format validated by country
professional_contact_location_country Select Country Options:
• us - United States
• ca - Canada
• uk - United Kingdom
• au - Australia
• nz - New Zealand
• other - Other
professional_contact_location_public Switch Address visibility control Boolean (true/false)
professional_contact_location_map Map Map coordinates Latitude/longitude, interactive picker

professional_contact_service

Field ID Field Type Description Options/Notes
professional_contact_service_areas Taxonomy Regions served Links to service_area taxonomy
professional_contact_service_radius Number Distance willing to travel In miles, range 0-500
professional_contact_service_travel Select Travel availability Options:
• local_only - Local Only (within radius)
• regional - Regional Travel
• national - National Travel
• international - International Travel
professional_contact_service_virtual Switch Offers virtual services Boolean (true/false)
professional_contact_service_locations Checkbox List Service delivery locations Options:
• client_home - Client's Home
• client_office - Client's Office
• gym - Gym/Fitness Center
• outdoor - Outdoor Locations
• studio - Private Studio
• virtual - Virtual/Online
professional_credentials Fields

professional_credentials_experience

Field ID Field Type Description Options/Notes
professional_credentials_experience_years Number Years of experience Range: 0-50 years
professional_credentials_experience_clients Select Total clients trained Options:
• beginner - Under 50
• developing - 50-200
• experienced - 200-500
• veteran - 500-1000
• master - 1000+
professional_credentials_experience_hours Select Training hours completed Options:
• entry - Under 500 hours
• intermediate - 500-2000 hours
• advanced - 2000-5000 hours
• expert - 5000-10000 hours
• master - 10000+ hours

professional_credentials_certifications (Repeatable Group)

Field ID Field Type Description Options/Notes
professional_credentials_certifications_name Text Certification name/acronym e.g., "CPT", "CES", "PES"
professional_credentials_certifications_organization Select Issuing organization Options:
• nasm - NASM
• ace - ACE
• issa - ISSA
• acsm - ACSM
• nsca - NSCA
• ncsf - NCSF
• afaa - AFAA
• cooper - Cooper Institute
• crossfit - CrossFit
• yoga_alliance - Yoga Alliance
• pilates_method - Pilates Method Alliance
• other - Other
professional_credentials_certifications_organization_other Text Other organization name Conditional: when organization = "other"
professional_credentials_certifications_number Text Certificate/credential ID For verification purposes
professional_credentials_certifications_date Date Date certification was earned Issue date
professional_credentials_certifications_expiration Date Certification expiration date For renewal tracking
professional_credentials_certifications_status Select Current certification status Options:
• active - Active
• expired - Expired
• pending - Pending Renewal
• suspended - Suspended
professional_credentials_certifications_verified Switch Verification status Boolean (true/false)
professional_credentials_certifications_document File Certificate document PDF upload for verification

professional_credentials_education (Repeatable Group)

Field ID Field Type Description Options/Notes
professional_credentials_education_level Select Education level Options:
• high_school - High School
• some_college - Some College
• associate - Associate Degree
• bachelor - Bachelor's Degree
• master - Master's Degree
• doctorate - Doctorate
• certificate - Certificate Program
professional_credentials_education_institution Text School/university name Name of educational institution
professional_credentials_education_degree Text Degree/program name e.g., "B.S. Exercise Science"
professional_credentials_education_field Select Field of study Options:
• exercise_science - Exercise Science
• kinesiology - Kinesiology
• sports_medicine - Sports Medicine
• nutrition - Nutrition
• physical_therapy - Physical Therapy
• athletic_training - Athletic Training
• health_wellness - Health & Wellness
• business - Business/Management
• other - Other
professional_credentials_education_graduation Number Graduation year 4-digit year format
professional_credentials_education_current Switch Currently enrolled Boolean (true/false)

professional_credentials_specializations

Field ID Field Type Description Options/Notes
professional_credentials_specializations_primary Taxonomy Primary specialization areas Links to specialization taxonomy
professional_credentials_specializations_populations Checkbox List Target client populations Options:
• youth - Youth (Under 18)
• adults - General Adults
• seniors - Seniors (65+)
• athletes - Athletes
• beginners - Beginners
• special_needs - Special Needs
• prenatal - Prenatal
• postnatal - Postnatal
• rehabilitation - Rehabilitation
professional_credentials_specializations_methods Checkbox List Training methodologies Options:
• strength_training - Strength Training
• cardio - Cardiovascular Training
• hiit - HIIT
• functional - Functional Training
• bodyweight - Bodyweight Training
• olympic_lifting - Olympic Lifting
• powerlifting - Powerlifting
• crossfit - CrossFit
• yoga - Yoga
• pilates - Pilates
• martial_arts - Martial Arts
• dance - Dance Fitness

professional_credentials_languages

Field ID Field Type Description Options/Notes
professional_credentials_languages_primary Select Primary language Options:
• english - English
• spanish - Spanish
• french - French
• mandarin - Mandarin
• other - Other
professional_credentials_languages_additional Checkbox List Additional languages Same options as primary language
professional_credentials_languages_other Text Other language names Conditional when other selected
professional_employment Fields

professional_employment_status

Field ID Field Type Description Options/Notes
professional_employment_status_type Select Employment classification Options:
• self_employed - Self-Employed/Freelance
• company_employed - Employed by Company
professional_employment_status_company Post Employer company Relationship to Company entity
professional_employment_status_position Text Job title at company Specific position title
professional_employment_status_department Select Department within company Options:
• personal_training - Personal Training
• group_fitness - Group Fitness
• management - Management
• sales - Sales
• operations - Operations
• other - Other
professional_employment_status_start_date Date Employment start date When started with company
professional_employment_status_full_time Select Employment status Options:
• full_time - Full-time
• part_time - Part-time
• contractor - Independent Contractor
• seasonal - Seasonal
professional_services Fields

professional_services_offerings (Repeatable Group)

Field ID Field Type Description Options/Notes
professional_services_offerings_name Text Service name e.g., "1-on-1 Personal Training"
professional_services_offerings_category Select Service category Options:
• personal_training - Personal Training
• group_classes - Group Classes
• online_coaching - Online Coaching
• nutrition_coaching - Nutrition Coaching
• wellness_coaching - Wellness Coaching
• corporate_wellness - Corporate Wellness
• sports_training - Sports-Specific Training
• rehabilitation - Rehabilitation/Recovery
• assessments - Fitness Assessments
• program_design - Program Design Only
professional_services_offerings_description Textarea Service description 500 character limit
professional_services_offerings_format Select Service delivery format Options:
• in_person - In-Person Only
• virtual - Virtual Only
• hybrid - Both In-Person and Virtual
professional_services_offerings_duration Select Session duration Options:
• 30_min - 30 minutes
• 45_min - 45 minutes
• 60_min - 60 minutes
• 90_min - 90 minutes
• custom - Custom Duration
professional_services_offerings_pricing_type Select Pricing structure Options:
• per_session - Per Session
• package - Package Deal
• monthly - Monthly Rate
• hourly - Hourly Rate
• consultation - Free Consultation
• custom - Custom Quote
professional_services_offerings_price Text Price display text e.g., "$75/session"
professional_services_offerings_featured Switch Featured service Boolean (true/false)

professional_services_availability

Field ID Field Type Description Options/Notes
professional_services_availability_accepting Switch Accepting new clients Boolean (true/false)
professional_services_availability_waitlist Switch Has waitlist Boolean (true/false)
professional_services_availability_booking_url URL External booking link URL to scheduling system
professional_services_availability_response_time Select Typical response time Options:
• immediate - Within 1 hour
• same_day - Same day
• 24_hours - Within 24 hours
• 48_hours - Within 48 hours
• weekly - Within a week
professional_portfolio Fields

professional_portfolio_media

Field ID Field Type Description Options/Notes
professional_portfolio_media_photos Image Gallery Photo gallery Up to 20 photos
professional_portfolio_media_videos Video Video content Up to 5 videos
professional_portfolio_media_virtual_tour URL 360° virtual tour Link to external tour

professional_portfolio_results (Repeatable Group)

Field ID Field Type Description Options/Notes
professional_portfolio_results_title Text Result title e.g., "12-Week Transformation"
professional_portfolio_results_client Text Client identifier First name or anonymous
professional_portfolio_results_goal Select Primary goal Options:
• weight_loss - Weight Loss
• muscle_gain - Muscle Gain
• strength - Strength Improvement
• endurance - Endurance
• rehabilitation - Rehabilitation
• sports_performance - Sports Performance
• general_fitness - General Fitness
professional_portfolio_results_timeframe Select Result timeframe Options:
• 4_weeks - 4 weeks
• 8_weeks - 8 weeks
• 12_weeks - 12 weeks
• 6_months - 6 months
• 1_year - 1 year
• custom - Custom timeframe
professional_portfolio_results_metrics Group Measurable outcomes Custom metrics group
professional_portfolio_results_before_photo Image Before photo Client before image
professional_portfolio_results_after_photo Image After photo Client after image
professional_portfolio_results_testimonial Textarea Client testimonial Client's own words
professional_portfolio_results_featured Switch Featured result Boolean (true/false)

professional_portfolio_testimonials (Repeatable Group)

Field ID Field Type Description Options/Notes
professional_portfolio_testimonials_client_name Text Client name Full or partial name
professional_portfolio_testimonials_client_photo Image Client photo Optional
professional_portfolio_testimonials_date Date Testimonial date When received
professional_portfolio_testimonials_rating Number Rating 1-5 stars
professional_portfolio_testimonials_text Textarea Testimonial content Client feedback
professional_portfolio_testimonials_verified Switch Verified client Boolean (true/false)
professional_portfolio_testimonials_featured Switch Featured testimonial Boolean (true/false)
professional_equipment Fields

professional_equipment_sales

Field ID Field Type Description Options/Notes
professional_equipment_sales_active Switch Equipment sales professional Boolean (true/false)
professional_equipment_sales_type Select Equipment focus area Options:
• commercial - Commercial Equipment
• residential - Residential Equipment
• both - Both Commercial & Residential
professional_equipment_sales_role Select Professional sales role Options:
• sales_rep - Sales Representative
• sales_manager - Sales Manager
• account_executive - Account Executive
• dealer_principal - Dealer Principal
• independent - Independent Dealer
professional_equipment_sales_experience Select Equipment sales experience Options:
• entry - Less than 1 year
• intermediate - 1-3 years
• experienced - 3-5 years
• senior - 5-10 years
• veteran - 10+ years

professional_equipment_territory

Field ID Field Type Description Options/Notes
professional_equipment_territory_regions Taxonomy Sales territory regions Links to service_area taxonomy
professional_equipment_territory_accounts Select Account specialties Options:
• new_facilities - New Facility Development
• existing_facilities - Existing Facility Updates
• home_gym - Home Gym Design
• corporate - Corporate Fitness
• hospitality - Hotels/Resorts
• multi_housing - Apartments/Condos
• government - Government/Military
• education - Schools/Universities
professional_equipment_territory_brands Taxonomy Brands represented Links to equipment_brand taxonomy
professional_equipment_territory_categories Taxonomy Equipment categories Links to equipment_category taxonomy

professional_equipment_portfolio (Repeatable Group)

Field ID Field Type Description Options/Notes
professional_equipment_portfolio_project_name Text Project name e.g., "Gold's Gym Downtown"
professional_equipment_portfolio_project_type Select Project type Options:
• new_facility - New Facility Build-out
• renovation - Facility Renovation
• expansion - Facility Expansion
• home_gym - Home Gym Installation
• corporate - Corporate Fitness Center
professional_equipment_portfolio_project_size Select Project size/budget Options:
• small - Under $25,000
• medium - $25,000-$100,000
• large - $100,000-$500,000
• enterprise - $500,000+
professional_equipment_portfolio_project_date Date Completion date When project finished
professional_equipment_portfolio_project_description Textarea Project details Comprehensive description
professional_equipment_portfolio_project_images Image Gallery Project photos Before/after installation images
professional_equipment_portfolio_project_featured Switch Featured project Boolean (true/false)
professional_platform Fields

professional_platform_website

Field ID Field Type Description Options/Notes
professional_platform_website_active Switch Has platform website Boolean (true/false)
professional_platform_website_package Select Website package level Options:
• starter - Starter ($50/month)
• growth - Growth ($100/month)
• business - Business ($250/month)
• scale - Scale ($500/month)
professional_platform_website_url URL Custom website address Format: name.gymspotter.pro
professional_platform_website_launch Date Website launch date When site went live

professional_platform_ambassador

Field ID Field Type Description Options/Notes
professional_platform_ambassador_active Switch Ambassador status Boolean (true/false)
professional_platform_ambassador_since Date Ambassador start date When joined program
professional_platform_ambassador_code Text Referral code Unique affiliate code
professional_platform_ambassador_referrals Number Total referrals Count of successful referrals
professional_platform_ambassador_earnings Number Total earnings Lifetime commission earnings
professional_platform_ambassador_tier Select Ambassador tier level Options:
• bronze - Bronze (1-5 referrals)
• silver - Silver (6-15 referrals)
• gold - Gold (16-30 referrals)
• platinum - Platinum (31-50 referrals)
• diamond - Diamond (50+ referrals)

professional_platform_education

Field ID Field Type Description Options/Notes
professional_platform_education_courses Post Completed courses Links to Course entities
professional_platform_education_certificates Post Earned certificates Links to Certificate entities
professional_platform_education_badges Taxonomy Achievement badges Platform accomplishments
Company Entity Fields

The Company entity contains 150+ fields structured to support multiple location types from gyms to equipment dealers with full service, product, and team information.

company_info Fields

company_info_basic

Field ID Field Type Description Options/Notes
company_info_basic_name Text Company name Required, unique identifier
company_info_basic_tagline Text Company tagline 160 character limit for SEO
company_info_basic_logo Image Company logo Accepts: .jpg, .png, .svg
company_info_basic_featured Switch Featured company Boolean (true/false)
company_info_basic_founding_year Number Year founded Range: 1900-current year
company_info_basic_size Select Company size Options:
• solo - Solo Entrepreneur
• micro - 2-10 employees
• small - 11-50 employees
• medium - 51-200 employees
• large - 201-1000 employees
• enterprise - 1000+ employees
company_info_basic_type Select Company type Options:
• gym - Gym/Fitness Facility
• studio - Fitness Studio
• dealer - Equipment Dealer
• service_provider - Service Provider
• manufacturer - Equipment Manufacturer
• distributor - Equipment Distributor
• franchise - Franchise
• online - Online Business
• other - Other
company_info_basic_type_other Text Other company type Conditional: Shows when type = "other"
company_info_basic_description WYSIWYG Company description Rich text editor, 2000 word limit

company_info_verification

Field ID Field Type Description Options/Notes
company_info_verification_verified Switch Verified business Boolean (true/false)
company_info_verification_date Date Verification date Date picker, conditional on verified = true
company_info_verification_method Select Verification method Options:
• documents - Document Verification
• site_visit - Site Visit
• video_call - Video Verification
• partner - Partner Verification
company_info_verification_badges Checkbox List Verification badges Options:
• identity - Identity Verified
• business - Licensed Business
• insurance - Insurance Verified
• featured - Featured Company
• top_rated - Top Rated
• authorized_dealer - Authorized Dealer
• certified_service - Certified Service Provider

company_info_membership

Field ID Field Type Description Options/Notes
company_info_membership_type Select GymSpotter membership Options:
• free - Free
• pro - PRO ($50/month)
• enterprise - Enterprise (Custom)
company_info_membership_since Date Member since Date joined platform
company_info_membership_status Select Account status Options:
• active - Active
• pending - Pending Verification
• suspended - Suspended
• inactive - Inactive
company_contact Fields

company_contact_info

Field ID Field Type Description Options/Notes
company_contact_info_email Email Primary contact email Public contact email
company_contact_info_phone Text Main phone number Format: (XXX) XXX-XXXX
company_contact_info_phone_secondary Text Secondary phone Optional alternate number
company_contact_info_fax Text Fax number Optional, legacy support
company_contact_info_website URL Company website Primary external website
company_contact_info_hours Repeatable Group Business hours Days and hours structure
company_contact_info_contact_person Text Primary contact name Public-facing contact person

company_contact_social

Field ID Field Type Description Options/Notes
company_contact_social_facebook URL Facebook page Facebook URL
company_contact_social_instagram URL Instagram profile Instagram URL
company_contact_social_twitter URL Twitter/X profile Twitter URL
company_contact_social_linkedin URL LinkedIn page LinkedIn company page URL
company_contact_social_youtube URL YouTube channel YouTube URL
company_contact_social_tiktok URL TikTok account TikTok URL

company_location_headquarters

Field ID Field Type Description Options/Notes
company_location_headquarters_street Text Street address Primary address line
company_location_headquarters_street2 Text Address line 2 Suite, unit, etc.
company_location_headquarters_city Text City City name
company_location_headquarters_state Select State/Province State dropdown, country-dependent
company_location_headquarters_zip Text ZIP/Postal code Format varies by country
company_location_headquarters_country Select Country Country dropdown
company_location_headquarters_map Map Map location Lat/long coordinates

company_location_additional (Repeatable Group)

Field ID Field Type Description Options/Notes
company_location_additional_name Text Location name e.g., "Downtown Branch"
company_location_additional_type Select Location type Options:
• branch - Branch Location
• franchise - Franchise Location
• satellite - Satellite Office
• warehouse - Warehouse/Distribution
• showroom - Showroom
company_location_additional_street Text Street address Primary address line
company_location_additional_street2 Text Address line 2 Suite, unit, etc.
company_location_additional_city Text City City name
company_location_additional_state Select State/Province State dropdown
company_location_additional_zip Text ZIP/Postal code Format varies by country
company_location_additional_country Select Country Country dropdown
company_location_additional_phone Text Location phone Location-specific phone
company_location_additional_email Email Location email Location-specific email
company_location_additional_hours Repeatable Group Location hours Days and hours structure
company_location_additional_manager Post Location manager Link to Professional entity
company_location_additional_map Map Map location Lat/long coordinates

company_service_areas

Field ID Field Type Description Options/Notes
company_service_areas_regions Taxonomy Service area regions Links to service_area taxonomy
company_service_areas_radius Number Service radius Miles from headquarters
company_service_areas_international Switch Serves internationally Boolean (true/false)
company_service_areas_virtual Switch Offers virtual services Boolean (true/false)
company_team Fields

company_team_leadership

Field ID Field Type Description Options/Notes
company_team_leadership_owner Text Owner/CEO name Primary business owner
company_team_leadership_owner_profile Post Owner's profile Link to Professional entity if exists
company_team_leadership_directors Post Directors/managers Multiple links to Professional entities

company_team_members

Field ID Field Type Description Options/Notes
company_team_members_trainers Post Trainers/instructors Multiple links to Professional entities
company_team_members_sales Post Sales team Multiple links to Professional entities
company_team_members_other Post Other staff Multiple links to Professional entities
company_team_members_total Number Total team size Auto-calculated or manual entry

company_team_hiring

Field ID Field Type Description Options/Notes
company_team_hiring_active Switch Currently hiring Boolean (true/false)
company_team_hiring_positions Repeatable Group Open positions Structure for job listings
company_team_hiring_benefits Checkbox List Employment benefits Options:
• health_insurance - Health Insurance
• dental_vision - Dental & Vision
• retirement - 401(k)/Retirement
• pto - Paid Time Off
• commission - Commission Structure
• continuing_ed - Continuing Education
• flexible_schedule - Flexible Schedule
• free_membership - Free Membership
company_products Fields

company_products_services

Field ID Field Type Description Options/Notes
company_products_services_offerings Checkbox List Service categories Options:
• personal_training - Personal Training
• group_fitness - Group Fitness Classes
• equipment_sales - Equipment Sales
• equipment_service - Equipment Service/Repair
• facility_design - Facility Design/Layout
• nutrition - Nutrition Services
• massage - Massage/Recovery
• corporate - Corporate Fitness
• online - Online Training
company_products_services_primary Select Primary service focus Same options as offerings
company_products_services_custom Repeatable Group Custom service details Name, description, pricing structure

company_products_equipment

Field ID Field Type Description Options/Notes
company_products_equipment_sales Switch Sells equipment Boolean (true/false)
company_products_equipment_service Switch Services equipment Boolean (true/false)
company_products_equipment_type Select Equipment customer type Options:
• commercial - Commercial Only
• residential - Residential Only
• both - Both Commercial & Residential
company_products_equipment_sales_brands Taxonomy Brands sold Links to equipment_brand taxonomy
company_products_equipment_service_brands Taxonomy Brands serviced Links to equipment_brand taxonomy
company_products_equipment_categories Taxonomy Equipment categories Links to equipment_category taxonomy
company_products_equipment_dealer_level Select Dealer certification level Options:
• authorized - Authorized Dealer
• premier - Premier Dealer
• elite - Elite Dealer
• direct - Direct from Manufacturer
• distributor - Distributor

company_products_financing

Field ID Field Type Description Options/Notes
company_products_financing_available Switch Offers financing Boolean (true/false)
company_products_financing_options Checkbox List Financing types Options:
• in_house - In-House Financing
• lease - Leasing Options
• third_party - Third-Party Financing
• payment_plans - Payment Plans
• business - Business Financing
company_products_financing_description Textarea Financing details 500 character limit
company_facility Fields

company_facility_details

Field ID Field Type Description Options/Notes
company_facility_details_type Select Facility type Options:
• big_box - Big Box Gym
• boutique - Boutique Studio
• crossfit - CrossFit Box
• yoga - Yoga Studio
• pilates - Pilates Studio
• athletic_club - Athletic Club
• sports_facility - Sports Facility
• wellness_center - Wellness Center
• outdoor - Outdoor Training
• community - Community Center
• corporate - Corporate Fitness
• other - Other
company_facility_details_size Select Facility size Options:
• small - Small (under 2,500 sq ft)
• medium - Medium (2,500-10,000 sq ft)
• large - Large (10,000-25,000 sq ft)
• xl - Extra Large (25,000+ sq ft)
company_facility_details_photos Image Gallery Facility photos Up to 20 images
company_facility_details_virtual_tour URL Virtual tour link 360° tour URL

company_facility_amenities

Field ID Field Type Description Options/Notes
company_facility_amenities_features Checkbox List Facility features Options:
• cardio_area - Cardio Area
• strength_area - Strength Area
• functional - Functional Training
• group_studios - Group Fitness Studios
• pool - Swimming Pool
• basketball - Basketball Court
• racquetball - Racquetball Courts
• track - Indoor Track
• sauna - Sauna
• steam_room - Steam Room
• hot_tub - Hot Tub
• tanning - Tanning
• childcare - Childcare
• locker_rooms - Locker Rooms
• showers - Showers
• towel_service - Towel Service
• juice_bar - Juice/Smoothie Bar
• pro_shop - Pro Shop
• parking - Free Parking
company_facility_amenities_accessibility Checkbox List Accessibility features Options:
• wheelchair - Wheelchair Accessible
• elevator - Elevator Access
• accessible_equipment - Accessible Equipment
• accessible_restrooms - Accessible Restrooms
• service_animals - Service Animals Welcome

company_facility_memberships

Field ID Field Type Description Options/Notes
company_facility_memberships_types Checkbox List Membership types Options:
• standard - Standard Membership
• premium - Premium Membership
• family - Family Plans
• corporate - Corporate Rates
• senior - Senior Discounts
• student - Student Discounts
• military - Military/First Responder
• day_pass - Day Passes
• punch_card - Punch Cards
• trial - Free Trial
company_facility_memberships_price_range Select Price range Options:
• budget - Budget ($)
• moderate - Moderate ($$)
• premium - Premium ($$$)
• luxury - Luxury ($$$$)
company_facility_memberships_contract Select Contract types Options:
• month_to_month - Month-to-Month
• annual - Annual Contract
• both - Both Options Available
company_facility_memberships_enrollment_fee Switch Has enrollment fee Boolean (true/false)
company_portfolio Fields

company_portfolio_testimonials (Repeatable Group)

Field ID Field Type Description Options/Notes
company_portfolio_testimonials_client Text Client name Customer/client name
company_portfolio_testimonials_client_type Select Client type Options:
• individual - Individual Member
• business - Business Client
• facility - Facility Owner
company_portfolio_testimonials_text Textarea Testimonial content 1000 character limit
company_portfolio_testimonials_rating Number Rating 1-5 scale
company_portfolio_testimonials_date Date Testimonial date When received
company_portfolio_testimonials_featured Switch Featured testimonial Boolean (true/false)

company_portfolio_projects (Repeatable Group)

Field ID Field Type Description Options/Notes
company_portfolio_projects_name Text Project name Project title
company_portfolio_projects_type Select Project type Options:
• facility_design - Facility Design
• equipment_install - Equipment Installation
• renovation - Renovation
• maintenance - Maintenance Contract
• event - Special Event
• corporate - Corporate Program
company_portfolio_projects_client Text Client name Project client
company_portfolio_projects_description Textarea Project description 1000 character limit
company_portfolio_projects_date Date Completion date When completed
company_portfolio_projects_gallery Image Gallery Project images Up to 10 images
company_portfolio_projects_featured Switch Featured project Boolean (true/false)
Course & Education Fields

The Course, Lesson, Quiz, and Certificate entities together form the complete Learning Management System with 100+ fields to manage educational content and track user progress.

course Fields

course_info

Field ID Field Type Description Options/Notes
course_info_title Text Course title Main course name
course_info_subtitle Text Course subtitle Secondary descriptive title
course_info_description WYSIWYG Course description Rich text description
course_info_featured_image Image Course cover image Primary course thumbnail
course_info_video_intro Video Intro video Course introduction video
course_info_difficulty Select Difficulty level Options:
• beginner - Beginner
• intermediate - Intermediate
• advanced - Advanced
• expert - Expert
course_info_categories Taxonomy Course categories Links to course_category taxonomy
course_info_tags Taxonomy Course tags Links to course_tag taxonomy
course_info_featured Switch Featured course Boolean (true/false)

course_requirements

Field ID Field Type Description Options/Notes
course_requirements_prerequisites Post Prerequisite courses Links to other Course entities
course_requirements_equipment Textarea Required equipment Equipment needed for course
course_requirements_experience Textarea Experience level Required background

course_structure_modules (Repeatable Group)

Field ID Field Type Description Options/Notes
course_structure_modules_title Text Module title Section heading
course_structure_modules_description Textarea Module description Section overview
course_structure_modules_lessons Post Module lessons Links to Lesson entities
course_structure_modules_quiz Post Module quiz Link to Quiz entity
course_structure_modules_order Number Display order Sequence number

course_settings

Field ID Field Type Description Options/Notes
course_settings_duration Number Course duration Hours to complete
course_settings_type Select Course type Options:
• self_paced - Self-Paced
• scheduled - Scheduled
• hybrid - Hybrid
course_settings_membership Select Access level Options:
• free - Free
• pro - PRO Members
• premium - Premium (Additional Cost)
course_settings_certificate Post Completion certificate Link to Certificate entity
course_settings_instructor Post Course instructor Link to Instructor entity
course_settings_passing_score Number Required pass score Percentage (0-100)
course_settings_final_exam Post Final exam quiz Link to Quiz entity
lesson Fields

lesson_info

Field ID Field Type Description Options/Notes
lesson_info_title Text Lesson title Main lesson name
lesson_info_description Textarea Lesson summary Brief description
lesson_info_featured_image Image Lesson thumbnail Visual representation
lesson_info_parent_course Post Parent course Link to Course entity
lesson_info_order Number Display order Sequence number

lesson_content

Field ID Field Type Description Options/Notes
lesson_content_type Select Content type Options:
• video - Video Lesson
• text - Text/Article
• presentation - Presentation
• mixed - Mixed Content
• interactive - Interactive
lesson_content_video Video Lesson video Primary video content
lesson_content_text WYSIWYG Lesson text Rich text content
lesson_content_attachments File Downloadable files PDFs, worksheets, etc.
lesson_content_duration Number Lesson duration Minutes to complete

lesson_settings

Field ID Field Type Description Options/Notes
lesson_settings_prerequisite Post Prerequisite lesson Must complete before this
lesson_settings_free_preview Switch Free preview available Boolean (true/false)
lesson_settings_completion_type Select Completion criteria Options:
• automatic - Mark complete button
• quiz - Must pass quiz
• video - Must watch 90%
• manual - Instructor approval
quiz Fields

quiz_info

Field ID Field Type Description Options/Notes
quiz_info_title Text Quiz title Assessment name
quiz_info_description Textarea Quiz description Brief overview
quiz_info_parent_course Post Parent course Link to Course entity
quiz_info_parent_module Number Parent module ID Module index number
quiz_info_is_final Switch Final examination Boolean (true/false)

quiz_settings

Field ID Field Type Description Options/Notes
quiz_settings_time_limit Number Time limit (minutes) 0 = unlimited
quiz_settings_passing_score Number Passing percentage Range: 0-100
quiz_settings_attempts_allowed Number Maximum attempts 0 = unlimited
quiz_settings_randomize Switch Randomize questions Boolean (true/false)
quiz_settings_show_answers Select Answer review timing Options:
• after_question - After each question
• after_quiz - After completing quiz
• after_attempts - After all attempts
• never - Never show answers

quiz_questions (Repeatable Group)

Field ID Field Type Description Options/Notes
quiz_questions_title Text Question text The actual question
quiz_questions_type Select Question type Options:
• multiple_choice - Multiple Choice
• true_false - True/False
• short_answer - Short Answer
• essay - Essay
• matching - Matching
• fill_blank - Fill in the Blank
quiz_questions_image Image Question image Optional visual aid
quiz_questions_points Number Point value Default = 1
quiz_questions_answers Repeatable Group Answer options Text + correct flag for each
quiz_questions_explanation Textarea Answer explanation Why the answer is correct
quiz_questions_order Number Display order Sequence number
certificate Fields

certificate_info

Field ID Field Type Description Options/Notes
certificate_info_title Text Certificate title Main credential name
certificate_info_description Textarea Certificate description What the credential represents
certificate_info_parent_course Post Parent course Link to Course entity
certificate_info_category Taxonomy Certificate type Links to certificate_type taxonomy
certificate_info_logo Image Certificate logo Brand logo for certificate

certificate_design

Field ID Field Type Description Options/Notes
certificate_design_template Select Design template Options:
• classic - Classic
• modern - Modern
• professional - Professional
• minimalist - Minimalist
• premium - Premium
certificate_design_orientation Select Page orientation Options:
• landscape - Landscape
• portrait - Portrait
certificate_design_background Image Background image Optional decorative background
certificate_design_color_scheme Select Color theme Options:
• blue - Blue
• red - Red
• green - Green
• black - Black & White
• gold - Gold Premium
certificate_design_custom_text Textarea Custom certificate text Special messaging

certificate_verification

Field ID Field Type Description Options/Notes
certificate_verification_prefix Text Verification code prefix Unique identifier prefix
certificate_verification_valid_months Number Validity period Months until expiration
certificate_verification_requires_renewal Switch Requires renewal Boolean (true/false)
certificate_verification_renewal_course Post Renewal course Link to renewal Course entity
certificate_verification_linkedin_sharing Switch LinkedIn sharing enabled Boolean (true/false)
certificate_verification_ceus Number CEU credits Continuing Education Units
Taxonomy Structures

The platform uses 15+ taxonomies to categorize entities and create powerful cross-referenced relationships between them. Each taxonomy has its own hierarchical structure.

Professional Taxonomies

professional_category

Hierarchy: Yes, 3 levels

Used By: Professional entities

Structure Example:

  • Personal Trainers
    • Strength Training
      • Powerlifting
      • Olympic Lifting
      • Bodybuilding
    • Cardio Training
    • Group Training
  • Nutritionists
    • Sports Nutrition
    • Weight Management
    • Medical Nutrition
  • Yoga Instructors
    • Hatha
    • Vinyasa
    • Kundalini

specialization

Hierarchy: Yes, 2 levels

Used By: Professional entities

Structure Example:

  • Weight Loss
    • Rapid Weight Loss
    • Sustainable Weight Management
    • Post-Pregnancy
  • Muscle Building
    • Hypertrophy
    • Lean Muscle
    • Mass Building
  • Senior Fitness
    • Fall Prevention
    • Functional Movement
    • Active Aging

equipment_type

Hierarchy: Yes, 2 levels

Used By: Professional entities

Structure Example:

  • Strength Equipment
    • Free Weights
    • Plate-Loaded
    • Pin-Loaded
    • Cable Systems
  • Cardio Equipment
    • Treadmills
    • Ellipticals
    • Rowers
    • Bikes
  • Specialized Equipment
    • Pilates
    • Boxing
    • Functional Training

professional_tag

Hierarchy: No, flat structure

Used By: Professional entities

Common Tags: online-training, in-home, pre-wedding, sports-specific, competition-prep, posture-correction, injury-prevention, weight-loss-specialist, functional-training, performance-enhancement, holistic-approach, evidence-based, transformation-expert, celebrity-trainer, medical-fitness

Company Taxonomies

company_category

Hierarchy: Yes, 2 levels

Used By: Company entities

Structure Example:

  • Fitness Facilities
    • Gyms
    • Studios
    • Health Clubs
    • Boutique Fitness
  • Equipment Businesses
    • Manufacturers
    • Distributors
    • Retailers
    • Service Providers
  • Wellness Services
    • Sports Medicine
    • Physical Therapy
    • Nutrition Services

company_type

Hierarchy: Yes, 2 levels

Used By: Company entities

Structure Example:

  • Gym
    • Big Box
    • Boutique
    • 24-Hour
    • CrossFit Box
  • Studio
    • Yoga
    • Pilates
    • Dance
    • Specialized Training
  • Equipment Dealer
    • Commercial
    • Residential
    • Full-Line
    • Specialty

business_tag

Hierarchy: No, flat structure

Used By: Company entities

Common Tags: group-training, childcare, towel-service, open-24-hours, women-only, financing-available, free-consultations, certified-trainers, multi-location, equipment-leasing, mobile-services, corporate-accounts, military-discount, contract-free, student-discount

Shared Taxonomies

service_area

Hierarchy: Yes, 3 levels

Used By: Professional and Company entities

Structure Example:

  • United States
    • California
      • Los Angeles
      • San Francisco
      • San Diego
    • New York
      • New York City
      • Buffalo
      • Albany
  • Canada
    • Ontario
      • Toronto
      • Ottawa
    • British Columbia
      • Vancouver
      • Victoria

equipment_brand

Hierarchy: Yes, 2 levels

Used By: Professional and Company entities

Structure Example:

  • Life Fitness
    • Hammer Strength
    • Cybex
    • SciFit
    • ICG
  • Precor
    • Assault Fitness
    • Spinner
  • Matrix
    • Johnson
    • Vision
    • Horizon
  • Technogym
    • SKILLMILL
    • BIOCIRCUIT

equipment_category

Hierarchy: Yes, 3 levels

Used By: Professional and Company entities

Structure Example:

  • Cardio Equipment
    • Treadmills
      • Folding
      • Non-folding
      • Incline
    • Ellipticals
      • Front-drive
      • Rear-drive
      • Center-drive
  • Strength Equipment
    • Free Weights
      • Dumbbells
      • Barbells
      • Kettlebells
    • Machines
      • Plate-loaded
      • Pin-loaded
      • Cable
Education Taxonomies

course_category

Hierarchy: Yes, 2 levels

Used By: Course entities

Structure Example:

  • Training Methodologies
    • Strength Training
    • HIIT
    • Functional Training
    • Corrective Exercise
  • Business Skills
    • Client Acquisition
    • Marketing
    • Pricing Strategy
    • Retention
  • Specialized Populations
    • Pre/Post Natal
    • Senior Fitness
    • Youth Athletics
    • Special Needs

difficulty_level

Hierarchy: Yes, 1 level

Used By: Course entities

Structure Example:

  • Beginner
  • Intermediate
  • Advanced
  • Expert

certificate_type

Hierarchy: Yes, 2 levels

Used By: Certificate entities

Structure Example:

  • Professional Development
    • Continuing Education
    • Specialization
    • Mastery
  • Technical Certification
    • Equipment Operation
    • Maintenance
    • Programming
  • Business Certification
    • Sales
    • Management
    • Marketing

course_tag

Hierarchy: No, flat structure

Used By: Course entities

Common Tags: CEU-credits, certification-prep, hands-on, video-based, research-backed, equipment-specific, brand-certified, mobile-friendly, interactive, assessment-included, mentorship, quick-reference, business-builder, technique-focused, client-programming

User-Related Tables

WordPress user tables are extended with custom user meta fields to track course progress, account settings, and platform-specific data.

wp_users (Core WordPress Table)

Field Description Notes
ID User ID Primary key
user_login Username Login identifier
user_pass Password Hashed
user_email Email address Required, verified
user_registered Registration date When account created
user_status Account status Active/inactive

wp_usermeta (Extended with Custom Fields)

Meta Key Type Description Notes
gymspotter_professional_id Number Professional entity ID Links user to Professional
gymspotter_company_ids Array Company entity IDs Companies user manages
gymspotter_membership_type String Account level "free", "pro", "enterprise"
gymspotter_membership_expiry Date Subscription expiry Next renewal date
gymspotter_user_stripe_id String Stripe customer ID For billing
user_course_progress Array Course progress data JSON: {course_id: {progress: 75, started: date, last_activity: date}}
completed_lessons Array Completed lesson IDs Array of lesson post IDs
quiz_scores Array Quiz results JSON: {quiz_id: {score: 85, attempts: 2, passed: true, date: date}}
earned_certificates Array Earned certificates JSON: {cert_id: {date: date, code: "ABCD1234", expiry: date}}
ambassador_code String Referral code Unique affiliate code
ambassador_earnings Number Lifetime earnings Total commission amount
ambassador_referred_by Number Referrer's user ID Who referred this user
connection_requests_sent Array Pending connection requests Array of professional IDs
connection_requests_received Array Incoming connection requests Array of professional IDs
notification_preferences Array Notification settings JSON: {email: true, sms: false, push: true}
platform_achievements Array Earned badges/achievements Array of achievement IDs with dates
Relationship Tables

The platform uses custom relationship tables to manage complex connections between entities. These tables are created by the Meta Box Relationships extension.

wp_mb_relationships

Field Type Description Notes
id Number Relationship ID Primary key
from Number Source object ID Usually post ID
to Number Destination object ID Usually post ID
type String Relationship type See common types below

Common Relationship Types

Type From → To Description
professional_connections Professional → Professional Network connections between professionals
professional_employment Professional → Company Employment relationship
company_team Company → Professional Team members at company
professional_courses Professional → Course Courses completed by professional
professional_certificates Professional → Certificate Certificates earned by professional
course_instructor Course → Instructor Course taught by instructor
course_certificate Course → Certificate Certificate awarded by course
company_partners Company → Company Business partnerships
professional_referrals Professional → Professional Client referrals (with metadata)

wp_mb_relationships_meta

Stores additional data about specific relationships.

Field Type Description Notes
id Number Meta ID Primary key
relationship_id Number Relationship ID Foreign key to wp_mb_relationships
meta_key String Meta key Field identifier
meta_value String Meta value Field data (serialized for complex data)

Common Relationship Meta Keys

Meta Key Relationship Type Description
connection_date professional_connections When connection was established
employment_position professional_employment Job title at company
employment_start_date professional_employment When employment began
course_completion_date professional_courses When course was completed
certificate_issue_date professional_certificates When certificate was earned
certificate_expiry_date professional_certificates When certificate expires
referral_count professional_referrals Number of clients referred
partnership_type company_partners Type of business relationship
Analytics & Tracking Tables

Custom tables for high-performance analytics and tracking that require frequent reads/writes outside the WP post meta system.

gs_profile_views

Field Type Description Notes
id Number View ID Primary key
profile_id Number Professional/Company ID Entity being viewed
profile_type String Entity type "professional" or "company"
viewer_id Number Viewer user ID NULL if anonymous
viewer_ip String IP address hash Hashed for privacy
timestamp DateTime View timestamp When view occurred
source String Traffic source Referrer information
is_unique Boolean Unique view flag 1 if first view in 24h

gs_connection_events

Field Type Description Notes
id Number Event ID Primary key
from_id Number Requester ID Professional entity ID
to_id Number Requested ID Professional entity ID
event_type String Event type "request", "accept", "decline", "remove"
timestamp DateTime Event timestamp When event occurred
status String Current status "pending", "accepted", "declined", "removed"
message Text Request message Optional connection note

gs_ambassador_referrals

Field Type Description Notes
id Number Referral ID Primary key
ambassador_id Number Ambassador user ID Referrer
referred_user_id Number Referred user ID New user
referral_code String Referral code used Tracking code
signup_date DateTime Registration date When user registered
conversion_date DateTime Paid conversion date NULL if not converted
plan_type String Subscription plan "pro", "pro_annual", etc.
commission_amount Decimal Commission earned 20% of subscription price
lifetime_value Decimal Total commissions Running total from all renewals
status String Referral status "pending", "active", "cancelled"

gs_user_activity_log

Field Type Description Notes
id Number Activity ID Primary key
user_id Number User ID Actor
activity_type String Activity category "login", "profile_update", "course_progress", etc.
activity_action String Specific action "started", "completed", "updated", etc.
object_id Number Related object ID Entity being acted upon
object_type String Object type "professional", "course", "lesson", etc.
timestamp DateTime Activity timestamp When activity occurred
details JSON Additional data Activity-specific information