Skip to main content

Ground Truth Data

Ground Truth is PriveTag’s unique advantage - real, verified user behavior data that proves what users actually do, not just what they click or book.

What is Ground Truth?

Ground Truth = Data verified by real-world action (NFC scan or QR verification at venue)Unlike web analytics that track clicks, Ground Truth captures when a user actually visited a venue.

The Problem with Traditional Data

Most recommendation systems rely on:
Data TypeWeakness
ClicksUsers browse but don’t visit
BookingsUsers book but don’t show up
ReviewsSelection bias, fake reviews
SurveysRecall bias, social desirability

Result: Recommendation Drift

This creates a feedback loop of assumptions, not reality.

PriveTag’s Ground Truth Approach

How It Works

The Verification Moment

When a user visits a venue:
  1. NFC Tap - User taps their hotel NFC card at venue
  2. QR Scan - Venue scans voucher QR code
  3. Check-in - User checks in at venue reception
Each verification creates a Ground Truth record:
{
  "id": "gt_xyz789",
  "booking_id": "bkg_abc123",
  "context_log_id": "ctx_def456",
  "activity_id": "act_safari",
  "verified_at": "2025-12-15T10:30:00Z",
  "verification_method": "nfc_tap",
  "user_profile": {
    "travel_type": "family",
    "nationality": "KR"
  }
}

Feedback Loop

Ground Truth creates a virtuous cycle:

Real Example

ProfileWithout Ground TruthWith Ground Truth
Korean Family in BangkokSafari World (popular online)Safari World (85% verified visits)
Dream World (high click rate)SEA LIFE (78% verified visits)
Night Market (cheap)❌ Night Market (12% verified visits)
The Night Market appears in traditional recommendations because it’s cheap and gets clicks, but families rarely actually visit. Ground Truth deprioritizes it.

Data Quality

Verification Rate

MetricValue
Bookings with Ground Truth85%+
NFC Verification60%
QR Verification35%
Manual Check-in5%

Why High Verification?

  • Hotel Integration: NFC cards issued to all guests
  • Incentive Structure: Venues earn commission on verification
  • Seamless UX: Tap or scan takes < 3 seconds

Using Ground Truth in Your App

Recommendation Quality

Higher Ground Truth coverage = better recommendations:
{
  "recommendations": [
    {
      "id": "act_safari",
      "relevance_score": 95,
      "ground_truth_score": 92,
      "verified_visits": 1250,
      "similar_profile_visits": 340
    }
  ]
}

Webhook Events

Receive Ground Truth events via webhook:
{
  "event": "qr_verified",
  "data": {
    "booking_id": "bkg_abc123",
    "context_log_id": "ctx_def456",
    "verified_at": "2025-12-15T10:30:00Z"
  }
}

Analytics

Track your recommendation effectiveness:
# Your AI agent's performance
GET /api/analytics/ground-truth?api_key=pk_xxx

# Response
{
  "period": "last_30_days",
  "recommendations_made": 5420,
  "bookings_created": 892,
  "ground_truth_verified": 758,
  "verification_rate": 85%,
  "recommendation_accuracy": 78%
}

Ground Truth Score

Activities are scored based on Ground Truth:

Calculation

GT_Score = (verified_visits / recommended_count) * profile_similarity_weight

Factors

FactorDescription
Verified VisitsHow many times users actually visited
Recommended CountHow many times activity was recommended
Profile SimilarityHow similar visiting users’ profiles are to current user
RecencyMore recent visits weighted higher

Example

Safari World for Korean Families:
  • Recommended 1000 times to Korean families
  • 850 bookings created
  • 720 verified visits (Ground Truth)
  • GT Score: 72% (720/1000)
Night Market for Korean Families:
  • Recommended 500 times to Korean families
  • 180 bookings created
  • 60 verified visits (Ground Truth)
  • GT Score: 12% (60/500)

Privacy & Data Handling

Privacy First: We collect Ground Truth data with user consent and anonymize for aggregate analysis.

What We Store

DataPurposeRetention
Visit timestampAggregate patterns24 months
Profile typeSegment recommendations24 months
Activity visitedImprove scoringPermanent

What We DON’T Store

  • Personal identification details
  • Exact location tracking
  • Session recordings
  • Financial information

Anonymization

Individual records are anonymized for ML training:
// Raw record
{
  "user_id": "usr_abc123",
  "name": "John Doe",
  "activity": "Safari World"
}

// Anonymized for ML
{
  "profile_hash": "a1b2c3",
  "profile_type": "family_kr_mid",
  "activity_id": "act_safari"
}

Improving Your Ground Truth

Best Practices

When booking, include the context_log_id from recommendations. This links the recommendation to the eventual visit.
{
  "activity_id": "act_safari",
  "context_log_id": "ctx_abc123"  // Don't forget this!
}
Track when your recommendations lead to actual visits:
{
  "webhook_url": "https://your-server.com/webhooks",
  "webhook_events": ["qr_verified"]
}
Remind users to use their voucher at the venue. Higher verification = better future recommendations.

Metrics Dashboard

Track Ground Truth metrics for your integration:
MetricDescriptionGood Target
Verification Rate% of bookings verified> 80%
Recommendation Accuracy% of verified visits that matched top 3 recs> 60%
Profile Match RateHow well visits match profile predictions> 70%
Time to VisitDays between booking and visit< 3 days

Next Steps