Skip to main content

Overview

The JOIP platform includes a robust analytics system that tracks user activity, feature usage, and system performance. Analytics are accessible via the Analytics and Usage tabs in the admin panel.

Analytics Dashboard

Access platform-wide statistics via:

Key Metrics

User Growth

  • Total Users - All registered accounts
  • New Users - Signups in last 30 days
  • Active Users - Users with sessions in last 30 days

Content Creation

  • Total Sessions - All JOIP sessions created
  • Total Media - Files in all Media Vaults

Revenue Tracking

  • Estimated Revenue - Total from credit purchases
  • Subscription Revenue - Premium tier revenue (deprecated)

Feature Usage

  • Caption Generation - AI caption requests
  • Babecock Studio - Image compositions created
  • Media Uploads - Files uploaded to platform

Usage Analytics

Detailed usage tracking is available at:
This endpoint provides comprehensive breakdowns of:

Feature-Level Analytics

User Activity Breakdown

The most active users are ranked by total activity score:
Top 5 most active users are displayed with:
  • User profile (name, email, avatar)
  • Activity breakdown by feature
  • Total activity score
  • Last activity timestamp

Usage Summary

A condensed summary is available via:
This provides aggregated metrics without individual user breakdowns.

User-Specific Analytics

View detailed usage for individual users:

Returned Data Structure

Activity Logging System

All user interactions are tracked via the usageTracking.ts module.

Tracked Events

  • session_created - New session created
  • session_viewed - Session opened in player
  • session_edited - Session metadata updated
  • session_deleted - Session removed
  • session_shared - Share code generated
  • session_favorited - Added to favorites
  • session_refreshed - Media refreshed from Reddit
  • smart_caption_generated - AI caption created
  • custom_caption_created - Manual caption written
  • caption_regenerated - Caption regenerated in player
  • theme_selected - Caption theme chosen (JOI, Forced-Bi, etc.)
  • babecock_created - New composition generated
  • babecock_remix - Existing composition remixed
  • layout_detected - Layout automatically determined
  • media_uploaded - File uploaded to vault
  • media_deleted - File removed from vault
  • media_shared - Media shared to community
  • media_downloaded - File downloaded
  • bulk_download - Multiple files downloaded as ZIP
  • analytics_viewed - Analytics dashboard accessed
  • user_updated - User profile modified
  • user_role_updated - User role changed
  • user_deleted - User account deleted
  • settings_updated - System settings changed
  • audit_logs_viewed - Audit logs accessed

Tracking Functions

The usageTracking.ts module exports specialized tracking functions:

Activity Log Schema

Activity logs are stored in user_activity_logs:

Usage Statistics Table

Aggregated statistics are maintained in user_usage_stats:

Statistics Update

Statistics are updated in real-time via:

Analytics Visualization

The admin UI displays analytics using:

Metric Cards

  • Icon indicators for each metric category
  • Current value with trend indicator
  • Percentage change from previous period
  • Gradient backgrounds for visual hierarchy

User Activity Tables

  • Sortable columns by activity type
  • Filterable by date range
  • Exportable to CSV
  • Drill-down to individual user details

Feature Usage Icons

Referral Analytics

The platform includes a referral tracking system:

Referral Metrics

  • Total Referrals - All referred users
  • Active Referrals - Referred users who are active
  • Credits Earned - Referral rewards distributed
  • Conversion Rate - Signup to active user rate

Recent Referrals

Returns latest referrals with:
  • Referrer user ID and email
  • Referee user ID and email
  • Referral code used
  • Credit reward amount
  • Timestamp

Community Analytics

Monitor community content sharing:

Community Metrics

  • Shared Sessions - Sessions shared to community
  • Shared Media - Individual media items shared
  • Total Likes - Likes on community content
  • Top Contributors - Most active community users

Export and Reporting

CSV Export

Export comprehensive user analytics:
Includes:
  • User profile information
  • Complete usage statistics
  • Activity summary
  • Last activity timestamp

Custom Reports

Generate custom reports by combining filters:

Best Practices

Performance Optimization

  1. Date Range Filtering - Use specific date ranges for large datasets
  2. Pagination - Paginate results for better performance
  3. Caching - Analytics are cached for 5 minutes by default
  4. Indexed Queries - Ensure database indexes on frequently queried columns

Data Privacy

  1. Anonymization - Consider anonymizing data for reports
  2. Access Control - Restrict analytics access to admin users only
  3. Audit Logging - Log all analytics access for compliance
  4. Data Retention - Implement retention policies for old activity logs

Troubleshooting

Common Issues

Analytics Data Missing
  • Verify user_usage_stats table exists
  • Check if tracking middleware is installed
  • Review server logs for tracking errors
Slow Analytics Queries
  • Add database indexes on commonly filtered columns
  • Reduce date range for queries
  • Consider pre-aggregating data for dashboards
Incorrect Activity Counts
  • Verify tracking functions are called correctly
  • Check for duplicate tracking calls
  • Review activity log entries for anomalies

API Reference

Get Platform Analytics

Response:

Get Usage Analytics

Response:

Get User Usage

Response: