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:Feature-Level Analytics
| Feature | Tracked Metrics |
|---|---|
| Sessions | Created, viewed, edited, deleted, shared, favorited |
| Smart Captions | Generated, custom created, theme distribution |
| Babecock Studio | Images created, remixes, layout distribution |
| Media Gallery | Uploaded, deleted, shared, downloaded, bulk downloads |
| Admin Panel | Actions performed, users managed, settings changed |
User Activity Breakdown
The most active users are ranked by total activity score:- User profile (name, email, avatar)
- Activity breakdown by feature
- Total activity score
- Last activity timestamp
Usage Summary
A condensed summary is available via:User-Specific Analytics
View detailed usage for individual users:Returned Data Structure
Activity Logging System
All user interactions are tracked via theusageTracking.ts module.
Tracked Events
Session Actions
Session Actions
session_created- New session createdsession_viewed- Session opened in playersession_edited- Session metadata updatedsession_deleted- Session removedsession_shared- Share code generatedsession_favorited- Added to favoritessession_refreshed- Media refreshed from Reddit
Caption Actions
Caption Actions
smart_caption_generated- AI caption createdcustom_caption_created- Manual caption writtencaption_regenerated- Caption regenerated in playertheme_selected- Caption theme chosen (JOI, Forced-Bi, etc.)
Babecock Actions
Babecock Actions
babecock_created- New composition generatedbabecock_remix- Existing composition remixedlayout_detected- Layout automatically determined
Media Actions
Media Actions
media_uploaded- File uploaded to vaultmedia_deleted- File removed from vaultmedia_shared- Media shared to communitymedia_downloaded- File downloadedbulk_download- Multiple files downloaded as ZIP
Admin Actions
Admin Actions
analytics_viewed- Analytics dashboard accesseduser_updated- User profile modifieduser_role_updated- User role changeduser_deleted- User account deletedsettings_updated- System settings changedaudit_logs_viewed- Audit logs accessed
Tracking Functions
TheusageTracking.ts module exports specialized tracking functions:
Activity Log Schema
Activity logs are stored inuser_activity_logs:
Usage Statistics Table
Aggregated statistics are maintained inuser_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
- 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:- User profile information
- Complete usage statistics
- Activity summary
- Last activity timestamp
Custom Reports
Generate custom reports by combining filters:Best Practices
Performance Optimization
- Date Range Filtering - Use specific date ranges for large datasets
- Pagination - Paginate results for better performance
- Caching - Analytics are cached for 5 minutes by default
- Indexed Queries - Ensure database indexes on frequently queried columns
Data Privacy
- Anonymization - Consider anonymizing data for reports
- Access Control - Restrict analytics access to admin users only
- Audit Logging - Log all analytics access for compliance
- Data Retention - Implement retention policies for old activity logs
Troubleshooting
Common Issues
Analytics Data Missing- Verify
user_usage_statstable exists - Check if tracking middleware is installed
- Review server logs for tracking errors
- Add database indexes on commonly filtered columns
- Reduce date range for queries
- Consider pre-aggregating data for dashboards
- Verify tracking functions are called correctly
- Check for duplicate tracking calls
- Review activity log entries for anomalies