Using Analytics
BoxApp’s Analytics dashboard provides actionable insights into your box’s health, member engagement, and revenue trends. Use these metrics to optimize operations, improve retention, and grow your business.Overview
The Analytics page surfaces key performance indicators (KPIs) and alerts across four main areas:- Financial Metrics: Revenue, LTV, and ticket size
- Retention Indicators: Churn risk and inactivity alerts
- Engagement Tracking: Attendance patterns and community pulse
- Payment Monitoring: Outstanding invoices and payment risk
Performance Cards
At the top of the dashboard, four metric cards provide at-a-glance insights:Lifetime Value (LTV)
What it measures: Average revenue per member over their lifetime Calculation:- Dollar amount (e.g., “$1,245.50”)
- Trend vs last month (“+8%”)
- Green up arrow for increases
- Emerald color accent
Average Ticket
What it measures: Average invoice value Calculation:- Track membership plan mix (more premium = higher ticket)
- Measure retail/supplement sales impact
- Monitor private coaching upsells
- Dollar amount (e.g., “$148.75”)
- Trend percentage
- Indigo color accent
Rising average ticket can indicate successful upselling or shift toward premium offerings. Declining may signal more discount signups.
Churn Risk
What it measures: Number of athletes at risk of leaving Calculation: Members with no attendance in 10+ days Displayed:- Count of at-risk athletes
- Trend vs last month
- Red/rose color (alert indicator)
- Alert triangle icon
Community Pulse
What it measures: Overall box health and engagement Factors:- Attendance consistency
- Member satisfaction (from feedback)
- Social interactions
- Class booking rates
- Status text (“Stable”, “Growing”, “Needs Attention”)
- Trend percentage
- Orange color accent
- Heart icon
Inactivity Alerts
The Inactivity Alert panel identifies athletes who haven’t attended in 10+ days.What You See
At-Risk Athlete Cards:- Avatar with initials
- Full name
- “12 DAYS INACTIVE” label (example)
- “ALERT COACH” button
Understanding Inactivity
Why it matters:- Inactivity is the #1 predictor of cancellation
- Early intervention dramatically improves retention
- 10 days is the critical threshold before disengagement
- Injury or illness
- Schedule changes
- Loss of motivation
- Financial constraints
- Feeling overwhelmed or not fitting in
Taking Action
Review At-Risk List
Check the inactivity panel daily or weekly. BoxApp shows the top 3 most at-risk athletes, with a “View All” option if more exist.
Investigate Context
Before reaching out:
- Check their booking history
- Review medical notes (injury?)
- Look at recent feedback scores (satisfaction dropping?)
- Check payment status (billing issue?)
Alert Coach
Click “ALERT COACH” button:The system:
- Triggers the
coach-alertsEdge Function - Sends notification to assigned coach or admin
- Includes athlete name and inactivity details
- Provides alert type (inactivity)
- Logs the alert for follow-up tracking
Coach alerts require an active session. Make sure you’re logged in when triggering alerts.
Personal Outreach
Coaches should:
- Send personal text or email (not automated)
- Express genuine concern (not sales-y)
- Ask open-ended questions (“How are you?” not “Why did you stop coming?”)
- Offer help (“Is there anything I can do?”)
- Suggest low-pressure return (“Come to Open Gym this Saturday”)
Payment Risk Monitoring
The Payment Risk panel tracks athletes with outstanding invoices.What You See
Unpaid Athlete Cards:- Avatar with initials
- Full name
- Debt amount (e.g., “DEBT: $185.00”)
- Bell icon for alerting
How It Works
Detection Logic:- Unpaid invoices
- Overdue invoices
- Multiple unpaid invoices are summed
- Paid invoices
- Pending invoices (not yet due)
- Invoices in other statuses
Payment Risk Workflow
Identify High-Risk Accounts
Athletes with:
- Multiple unpaid invoices
- Long-overdue balances (30+ days)
- High debt totals
Verify Billing Information
Before reaching out:
- Check if payment method is valid
- Confirm billing address is current
- Look for failed payment attempts
- Review if athlete was notified
Send Payment Reminder
Click the bell icon to alert coach/admin:The notification includes:
- Athlete name
- Total debt amount
- Number of unpaid invoices
- Alert type: ‘payment’
Offer Solutions
If the athlete is having financial difficulty:
- Payment plan options
- Temporary membership hold
- Downgrade to lower-cost plan
- Class pack instead of unlimited
Best Practices for Collections
Timing:- Day 1 overdue: Friendly automated reminder
- Day 7 overdue: Personal email from admin
- Day 14 overdue: Phone call
- Day 30 overdue: Restrict access + payment plan offer
- Day 60 overdue: Collections
- Always assume it was an oversight
- Never be accusatory or aggressive
- Offer help and flexibility
- Preserve the relationship
Attendance Tracking
Attendance Chart
The attendance visualization area shows growth trends over time. Current Display:- Attendance data collected from the bookings table
- Growth trends displayed in the interface
- Coach scheduling
- Equipment availability
- Class capacity
Competition Analytics
Upcoming Competition Card
Displays your next scheduled competition with:- Competition name
- Days until start (“STARTS IN 12 DAYS”)
- Registered athlete count (“45 ATHLETES REGISTERED”)
- “REGISTER ATHLETES” quick action
Competition Insights
Participation Tracking:- Registration trends (are signups increasing?)
- Repeat participants (measure loyalty)
- Division distribution (which categories are popular?)
- Performance benchmarks (box average vs individual)
- Competition registration fees
- Increased attendance during prep
- Retail sales (apparel, supplements)
- Private coaching upsells
Financial Dashboard Metrics
Available Data
The analytics system calculates from your invoices table: Total Revenue:- This month vs last month
- Quarter over quarter
- Year over year
- Membership dues
- Drop-ins
- Private coaching
- Retail sales
- Competition fees
All financial calculations exclude refunded or cancelled invoices.
Key Financial Ratios
Member LTV Calculation:- $150/month membership
- 18-month average lifespan
- LTV = $2,700
Notifications and Alerts
Toast notifications appear when:- Coach alerts are triggered successfully
- Errors occur (e.g., “No active session”)
- Data refreshes complete
- Success (green): Action completed
- Error (red): Something went wrong
- Info (blue): Status update
Using Analytics to Drive Growth
Weekly Review Routine
Monday Morning Review
Check:
- Weekend attendance numbers
- New at-risk athletes from the week
- Outstanding payment issues
- Class capacity trends
Mid-Week Check-in
Review:
- Response to outreach efforts
- Updated attendance from at-risk athletes
- Payment status changes
- Upcoming competition registrations
Friday Planning
Prepare for next week:
- Identify patterns in churn risk
- Plan retention initiatives
- Review financial targets
- Schedule coach meetings for at-risk follow-ups
Retention Campaigns
Use analytics to trigger proactive campaigns: 7-Day Inactive:- Friendly check-in text
- “We miss you!” message
- No pressure
- Coach personal outreach
- Offer to help with barriers
- Invite to specific class
- Admin/owner call
- Understand challenges
- Offer accommodations (schedule change, membership adjustment)
- Last-ditch retention offer
- Membership hold option
- Exit interview if canceling
Edge Function: Coach Alerts
How It Works
When you click “ALERT COACH”:- Authenticates the request
- Looks up assigned coach for that athlete
- Sends notification (email, SMS, or in-app)
- Logs the alert for tracking
- Returns success or error
The function requires an active user session. Make sure you’re logged in before triggering alerts.
Data Refresh
Analytics data updates:- Performance Cards: On page load
- At-Risk Lists: Real-time based on latest bookings
- Payment Risk: Real-time based on invoice status
- Competition Data: Real-time from registrations
- Reload the page to fetch latest data
- No caching delays
Troubleshooting
Inactivity alerts showing wrong athletes
Inactivity alerts showing wrong athletes
The 10-day threshold is calculated from the most recent booking created_at date.Verify:
- Bookings are being created correctly when athletes check in
- Check-in timestamps are accurate
- Box_id is correctly assigned to bookings
Payment risk not displaying all unpaid invoices
Payment risk not displaying all unpaid invoices
The system only shows unpaid athletes where:
- Invoice status = ‘unpaid’ OR ‘overdue’
- Invoice has a valid user_id
- User is linked to your box
LTV seems incorrect
LTV seems incorrect
LTV calculation:This may seem low if:
- You have many inactive profiles inflating member count
- Recent signups haven’t generated much revenue yet
- Some members are on free trials
Coach alerts not working
Coach alerts not working
If you see “Failed to trigger coach alert”, check:
- You have an active session (try logging out and back in)
- The Edge Function is deployed (contact support if new instance)
- The athlete has a valid profile ID
- Your box_id is correctly set
Privacy and Data Security
Sensitive Information
Analytics displays aggregated and individual data. Ensure:- Only authorized staff access Analytics
- Payment information is handled securely
- Medical notes remain confidential
- Alerts are sent to appropriate recipients only
GDPR and Privacy Compliance
When using member data:- Obtain consent for communications
- Allow opt-out of retention outreach
- Don’t share data with third parties
- Delete data upon request
- Document your retention policies
Future Analytics Features
Upcoming enhancements:- Attendance Visualization: Line/bar charts showing trends
- Revenue Forecasting: Predicted MRR based on trends
- Cohort Analysis: Retention by signup date
- Class Performance: Which classes drive best retention
- Coach Effectiveness: Retention rates by coach
- Member Lifetime Journey: Engagement over time
- Predictive Churn: AI-based risk scoring
- Automated Campaigns: Trigger emails based on behaviors
BoxApp is continuously enhancing analytics. Check back regularly for new features and insights.