# RateRight Success Metrics & KPI Dashboard

## Overview
This document defines the key metrics and KPIs for RateRight's soft launch, providing a comprehensive framework for monitoring marketplace health, growth, and success.

---

## 1. North Star Metric

**Primary Metric: Weekly Active Marketplace Participants (WAMP)**

**Definition:** The number of unique users (workers + contractors) who complete a meaningful action on the platform within a 7-day period.

**Formula:** 
```
WAMP = Weekly Active Workers (WAW) + Weekly Active Contractors (WAC)
```

Where:
- **WAW**: Workers who completed at least one job OR submitted 3+ applications in the past 7 days
- **WAC**: Contractors who posted at least one job OR hired at least one worker in the past 7 days

**Target:** 500 WAMP by Day 90

**Why this matters:** This metric captures the health of both sides of our marketplace and indicates real engagement, not just signups.

---

## 2. Leading Indicators (Week 1-2)

### Worker Side Leading Indicators

| Metric | Formula | Target | Data Source |
|--------|---------|---------|-------------|
| **Signup Conversion Rate** | (Worker signups / Landing page visitors) × 100 | >15% | Analytics (GA4) |
| **Profile Completion Rate** | (Workers with complete profiles / Total signups) × 100 | >70% | Supabase: profiles table |
| **Time to First Application** | Avg hours from signup to first job application | <24h | Supabase: applications table |
| **Application Quality Score** | % of applications with custom cover letter | >60% | Supabase: applications table |

### Contractor Side Leading Indicators

| Metric | Formula | Target | Data Source |
|--------|---------|---------|-------------|
| **Business Signup Rate** | (Contractor signups / Business landing page visitors) × 100 | >10% | Analytics (GA4) |
| **Job Posting Rate** | (Jobs posted / Contractor signups) × 100 | >40% | Supabase: jobs table |
| **Job Completion Rate** | (Jobs filled / Jobs posted) × 100 | >30% | Supabase: jobs + applications table |
| **Time to First Hire** | Avg hours from job posting to first hire | <72h | Supabase: jobs + applications table |

### Marketplace Health Leading Indicators

| Metric | Formula | Target | Data Source |
|--------|---------|---------|-------------|
| **Supply-Demand Ratio** | Active workers / Active jobs posted (weekly) | 3:1 to 5:1 | Supabase: profiles + jobs |
| **Match Rate** | (Applications leading to interview / Total applications) × 100 | >20% | Supabase: applications table |
| **Response Time** | Avg hours for contractors to respond to applications | <24h | Supabase: applications table |

---

## 3. Lagging Indicators (Month 1-3)

### Worker Side Lagging Indicators

| Metric | Formula | Target | Data Source |
|--------|---------|---------|-------------|
| **30-Day Retention** | (Workers active at day 30 / Workers signed up day 0) × 100 | >40% | Supabase: analytics events |
| **90-Day Retention** | (Workers active at day 90 / Workers signed up day 0) × 100 | >25% | Supabase: analytics events |
| **Job Completion Rate** | (Jobs completed / Jobs accepted) × 100 | >85% | Supabase: applications table |
| **Worker NPS** | % promoters - % detractors | >30 | Survey tool |
| **Average Jobs per Worker** | Total jobs completed / Active workers | >3/month | Supabase: applications table |

### Contractor Side Lagging Indicators

| Metric | Formula | Target | Data Source |
|--------|---------|---------|-------------|
| **30-Day Retention** | (Contractors active at day 30 / Contractors signed up day 0) × 100 | >50% | Supabase: analytics events |
| **90-Day Retention** | (Contractors active at day 90 / Contractors signed up day 0) × 100 | >35% | Supabase: analytics events |
| **Rehire Rate** | (Contractors hiring same worker again / Total hires) × 100 | >25% | Supabase: applications table |
| **Contractor NPS** | % promoters - % detractors | >40 | Survey tool |
| **Average Spend per Contractor** | Total platform revenue / Active contractors | >$500/month | Stripe + Supabase |

### Financial Lagging Indicators

| Metric | Formula | Target | Data Source |
|--------|---------|---------|-------------|
| **Monthly Recurring Revenue (MRR)** | Sum of monthly platform fees + transaction fees | $10k by Month 3 | Stripe |
| **Take Rate** | (Platform revenue / Total transaction value) × 100 | 10-15% | Stripe + Supabase |
| **Customer Acquisition Cost (CAC)** | Marketing spend / New paying customers | <$50 | Analytics + Stripe |
| **Payback Period** | CAC / Average monthly profit per customer | <6 months | Calculated |
| **Lifetime Value (LTV)** | Average revenue per customer × Customer lifespan | >$300 | Stripe + Analytics |

---

## 4. Weekly Review Metrics (Monday Check)

### Quick Health Check (5 minutes)
1. **WAMP** - Is it trending up?
2. **New signups** (workers vs contractors) - Balanced growth?
3. **Jobs posted vs Jobs filled** - Supply-demand balance
4. **Revenue** - Week over week growth

### Deep Dive Review (30 minutes)

#### Worker Funnel
```
Landing → Signup → Profile Complete → First Application → First Job
```
- Conversion rates at each step
- Time between steps
- Top drop-off points

#### Contractor Funnel
```
Landing → Signup → Job Posted → First Hire → Repeat Hire
```
- Conversion rates at each step
- Time to first hire
- Job posting quality score

#### Marketplace Metrics
- **Supply-Demand by Category**: Are we balanced across trades?
- **Geographic Distribution**: Where are our users?
- **Quality Scores**: Worker ratings vs contractor feedback
- **Support Tickets**: Volume and categories

---

## 5. Red Flag Thresholds

### 🚨 Immediate Action Required

| Metric | Red Flag Threshold | Action |
|--------|-------------------|---------|
| **WAMP Growth** | <5% week-over-week for 2 consecutive weeks | Emergency growth team meeting |
| **Supply-Demand Ratio** | <2:1 or >10:1 | Pause marketing on oversupplied side |
| **Job Fill Rate** | <20% | Investigate quality issues |
| **Worker Retention (30d)** | <30% | Product-market fit issue |
| **Contractor Retention (30d)** | <40% | Value prop investigation |
| **Support Ticket Volume** | >5% of active users | Scale support, fix UX issues |

### ⚠️ Monitor Closely

| Metric | Yellow Flag Threshold | Action |
|--------|----------------------|---------|
| **Signup Conversion** | <10% workers, <8% contractors | A/B test landing pages |
| **Time to First Hire** | >5 days | Improve matching algorithm |
| **Take Rate** | <8% | Review pricing strategy |
| **CAC** | >$75 | Optimize marketing channels |

---

## 6. Success Milestones

### 30-Day Milestones
- **WAMP**: 200 weekly active participants
- **MRR**: $2,000
- **Job Fill Rate**: >35%
- **Worker Retention**: >40%
- **Contractor Retention**: >50%
- **Geographic Coverage**: 3 major AU cities

### 60-Day Milestones
- **WAMP**: 350 weekly active participants
- **MRR**: $5,000
- **Rehire Rate**: >20%
- **NPS (Both sides)**: >20
- **CAC Payback**: <9 months
- **Support Ticket Ratio**: <3%

### 90-Day Milestones (Soft Launch Success)
- **WAMP**: 500 weekly active participants
- **MRR**: $10,000
- **LTV**: >$200
- **Take Rate**: 10-15%
- **Retention (90d)**: Workers >25%, Contractors >35%
- **Marketplace Balance**: 3:1 to 5:1 ratio maintained
- **Revenue Growth**: 20% month-over-month

---

## Dashboard Wireframe & Implementation

### Dashboard Layout (Admin View)

```
┌─────────────────────────────────────────────────────────────┐
│                    RATERIGHT DASHBOARD                      │
├─────────────────────────────────────────────────────────────┤
│  North Star: WAMP: 247 (↑12%) | Target: 500 by Day 90     │
├─────────────────────────────────────────────────────────────┤
│  📊 TODAY'S SNAPSHOT                                       │
│  ┌─────────────┬─────────────┬─────────────┬──────────────┐ │
│  │ New Signups │ Jobs Posted │ Jobs Filled │ Revenue     │ │
│  │ W: 12 C: 3  │     15      │      8      │ $1,247      │ │
│  │ (↑8% WoW)   │  (↑20% WoW) │ (↑15% WoW)  │ (↑18% WoW)  │ │
│  └─────────────┴─────────────┴─────────────┴──────────────┘ │
├─────────────────────────────────────────────────────────────┤
│  📈 KEY TRENDS (Last 30 Days)                              │
│  ┌─────────────────────┬─────────────────────┐              │
│  │ Worker Retention    │ Contractor Retention│              │
│  │ 42% (↑2%)           │ 54% (↑5%)           │              │
│  │                     │                     │              │
│  │ Supply:Demand Ratio │ Job Fill Rate       │              │
│  │ 3.2:1 (✅)          │ 38% (↑3%)           │              │
│  └─────────────────────┴─────────────────────┘              │
├─────────────────────────────────────────────────────────────┤
│  🚨 ALERTS                                                 │
│  • Brisbane: Low worker supply (1.5:1 ratio)              │
│  • Electrician category: 45% job fill rate                │
│  • 3 contractor complaints about worker no-shows          │
└─────────────────────────────────────────────────────────────┘
```

### Data Sources Integration

#### Supabase Tables
```sql
-- Core tables for metrics
profiles (user data, signup dates)
jobs (job postings, status, dates)
applications (job applications, status changes)
reviews (ratings, feedback)
analytics_events (user activity tracking)

-- Custom views for dashboard
CREATE VIEW weekly_active_users AS ...
CREATE VIEW marketplace_metrics AS ...
CREATE VIEW retention_cohorts AS ...
```

#### Stripe Integration
```javascript
// Revenue metrics
const revenueData = await stripe.balanceTransactions.list({
  created: {
    gte: startDate,
    lte: endDate
  }
});

// CAC calculation
const marketingSpend = getMarketingSpend();
const newCustomers = await getNewPayingCustomers();
const cac = marketingSpend / newCustomers.length;
```

#### Analytics Integration
```javascript
// GA4 for conversion tracking
gtag('event', 'signup', {
  'user_type': 'worker' | 'contractor',
  'source': trafficSource
});

// Custom events for funnel tracking
gtag('event', 'profile_completed');
gtag('event', 'first_application');
gtag('event', 'job_filled');
```

---

## Alert System Configuration

### Slack Alerts (via webhook)
```javascript
// Daily summary at 9 AM
const dailySummary = {
  wamp: getWAMP(),
  newSignups: getNewSignups(),
  revenue: getRevenue(),
  redFlags: checkRedFlags()
};

// Real-time alerts for red flags
if (supplyDemandRatio < 2 || supplyDemandRatio > 10) {
  sendSlackAlert(`🚨 Supply:Demand ratio is ${supplyDemandRatio}:1`);
}
```

### Email Reports (Weekly)
- Executive summary for Michael
- Detailed metrics breakdown
- Trend analysis
- Action items for the week

---

## Review Cadence Recommendations

### Daily (Automated)
- WAMP tracking
- Signup monitoring
- Revenue tracking
- Alert system checks

### Weekly (Monday)
- Comprehensive dashboard review
- Cohort analysis
- Funnel optimization review
- Competitive analysis

### Monthly
- Deep retention analysis
- Financial metrics review
- Market expansion planning
- Product roadmap alignment

### Quarterly
- Strategic metrics review
- Business model validation
- Growth strategy refinement
- Investor reporting

---

## Implementation Priority

### Week 1: Foundation
1. Set up basic dashboard with WAMP
2. Implement signup tracking
3. Configure Slack alerts for red flags
4. Create weekly email report

### Week 2: Funnel Metrics
1. Add conversion tracking
2. Implement retention cohorts
3. Set up revenue tracking
4. Create marketplace balance metrics

### Week 3: Advanced Metrics
1. Add geographic breakdowns
2. Implement category-specific metrics
3. Create competitive benchmarks
4. Set up A/B testing framework

### Week 4: Optimization
1. Refine alert thresholds based on data
2. Create custom views for different roles
3. Implement predictive metrics
4. Set up automated insights

---

## Success Criteria

This dashboard is successful when:
1. Michael can determine marketplace health in under 5 minutes
2. Red flags are identified before they become critical
3. Growth opportunities are spotted early
4. Data-driven decisions become the norm
5. The team celebrates wins based on metrics achieved

---

*Last updated: [Date]*
*Next review: [30 days from creation]*