Overview
The Kin Conecta matching algorithm uses a sophisticated compatibility profiling system to connect tourists with guides who best match their preferences, interests, and travel style. This ensures meaningful connections and memorable experiences.Compatibility Profile System
The matching system operates through dedicated compatibility profiles separate from the main user profiles, allowing users to answer detailed preference questions without cluttering their public profiles.Compatibility Profile Model
Profile Roles
Compatibility profiles use “TRAVELER” instead of “TOURIST” to maintain semantic separation from the main user role system. This allows for future expansion of matching scenarios.
Answer-Based Matching
The core of the matching algorithm relies on compatibility answers:Answer Data Types
The flexible schema supports multiple answer formats:Text Answers
valueText stores string responses like preferred destinations or travel motivations.Numeric Answers
valueNumber stores quantitative data like budget ranges, group sizes, or rating preferences.Complex Data
valueJson stores structured data like multiple selections, ranked preferences, or nested configurations.Question Key System
ThequestionKey field references specific compatibility questions:
Example Question Keys:
travel_style: Preference for adventure, cultural, relaxation, or food-focused travelactivity_level: Desired physical intensity (BAJO, MODERADO, ALTO)group_preference: Solo, couple, small group, or large group preferencebudget_range: Price sensitivity and spending expectationsplanning_style: Structured itinerary vs. spontaneous explorationphotography_interest: Importance of photo opportunitiescultural_immersion: Depth of local culture engagement desiredfood_preferences: Culinary interests and dietary requirementspace_preference: Fast-paced touring vs. leisurely exploration
Sample Question Structure
Sample Question Structure
Matching Factors
The algorithm considers multiple dimensions when calculating compatibility:1. Interest Alignment
Tourist interests are matched against guide expertise areas: Tourist Interests (fromtourist_profile_interests):
- Gastronomía
- Naturaleza
- Historia
- Arte
- Aventura
guide_profile_expertise):
- Food Tours
- Nature Trails
- Historic Walks
- Museum Tours
- Adventure Trips
The algorithm maps tourist interests to guide expertise categories and calculates an overlap score. Higher overlap = stronger match.
2. Language Compatibility
Communication is critical for quality experiences:3. Location Matching
Guides must serve the tourist’s desired destination:4. Style and Pace Alignment
Tourist Profile Attributes:travelStyle: Cultural, Adventure, Nature, Food, HistoryactivityLevel: BAJO, MODERADO, ALTOplanningLevel: Preference for structure vs. flexibilitypaceAndCompany: Group dynamics preference
style: Tour delivery style (educational, casual, interactive)tourIntensity: Physical demand levelgroupSize: Preferred group sizes
5. Experience Level Matching
6. Rating and Reviews
Matching Score Calculation
The system calculates a composite compatibility score:Weight Distribution Rationale
Weight Distribution Rationale
- Interest Overlap (25%): Core reason for booking - mutual interest in experience type
- Language Match (20%): Essential for communication and experience quality
- Location Match (20%): Practical constraint - guide must serve desired area
- Style Alignment (15%): Important for experience satisfaction
- Activity Level (10%): Physical compatibility matters but is secondary
- Rating Factor (10%): Quality signal but shouldn’t overshadow fit
Favorites System
Tourists can manually save favorite guides and tours, which influences future recommendations:Favorite Guides
Favorite Tours
Favorited guides and their tours receive ranking boosts in search results and recommendation feeds for that tourist.
Recommendation Engine
The system generates personalized recommendations through multiple strategies:Strategy 1: Profile-Based Matching
Use compatibility answers to find the best guide matches:- Retrieve tourist’s compatibility profile and answers
- Query guides with compatible answers
- Calculate match scores
- Rank guides by score
- Return top N matches
Strategy 2: Collaborative Filtering
“Tourists like you also liked these guides”:- Find tourists with similar compatibility profiles
- Identify guides/tours they booked and rated highly
- Recommend guides not yet discovered by the current tourist
Strategy 3: Content-Based Filtering
“Based on your interests, you might like”:- Extract tourist interest keywords and preferences
- Match against tour descriptions, categories, and guide expertise
- Rank by semantic similarity and availability
Strategy 4: Hybrid Approach
Kin Conecta combines all three strategies, weighting each based on available data density and user behavior patterns for optimal results.
Matching Data Flow
Continuous Learning
The matching system improves over time through implicit and explicit signals: Explicit Signals:- Booking confirmations
- Favorite saves
- Reviews and ratings
- Profile updates
- Guide profile views
- Tour detail page visits
- Search filter patterns
- Time spent reviewing guides
Privacy and Data Usage
Compatibility profiles and answers are private. The algorithm uses this data solely for matching purposes and never exposes raw answers to guides or other users.
- Match percentage (e.g., “87% compatible”)
- Shared interests (e.g., “Both interested in Food & Culture”)
- Complementary attributes (e.g., “You both speak English and Spanish”)
- Specific answer values
- Budget preferences
- Personal compatibility questions
Matching API Integration
Developers interact with the matching system through dedicated endpoints:Next Steps
User Roles
Understand tourist and guide profile structures
Tours
Learn about tour data models and bookings
API - Matching
Explore matching API endpoints
API - Favorites
View favorites management APIs