Bounce RRR Dashboard
Sign in with your work email — we'll send a magic link, no password needed.
Link sent! Check your inbox and click the link to sign in.
You're signed in, but your account isn't on the RRR allowlist yet.
Ask vamsee@scalability.club to add you to rrr_members.
Loading RRR data…

Bounce RRR Dashboard

Running Repair Reduction · L0 Metrics
—
Filter:
Submission Type:
Bike Model:
Issue type:
Journey rank:
RR recency:
CSAT positive:
Trend window:
Period: — affects every static tile/table, not the trend chart
L0 Metrics · Last Completed Week
⚠ RR event data may be truncated (hit row cap) — trend for the oldest week(s) could be incomplete.
RR Rate (%)
—
vs prior week
Running Repairs ÷ Active Fleet
RR Rate = RR events ÷ avg active bikes × 100
Defect Rate (%)
—
vs prior week
RRs recurring within Nd of last touchpoint
Defect Rate = RR events with is_Nd_repeat flag ÷ (RR events + new deployments) × 100
RR CSAT (%)
—
vs prior week
Riders rating ≥4★ on InTrip
CSAT = COUNT(rating in selected stars) ÷ COUNT(all responses) × 100 · Running Repair + Bike Exchange
Avg CSAT
—
vs prior week
Average star rating, all responses
Avg CSAT = AVG(rating) across all responses
RR Rate & Defect Rate — Weekly Trend
Both as % lines · completed weeks only · click a legend item to isolate one line
RR Rate = RR events ÷ avg fleet × 100  |  Defect Rate = RR events recurring within Nd of last touchpoint ÷ (RR events + new deployments) × 100
Click a week to see hub breakdown
City Comparison — RR Rate & Defect Rate
All cities · aggregated from hub data · hidden when hub filter active
RR RATE %
DEFECT RATE %
City RR Rate = Σ hub RR events ÷ Σ hub avg active bikes × 100  |  Defect Rate = recurring within Nd ÷ (RR + new deployments)
RR CSAT Trend
Rate line · response count (n) shown per point
—
CSAT = COUNT(rating in selected stars) ÷ COUNT(all responses) × 100 (IST-week bucketed · Running Repair + Bike Exchange)
Issue Mix
Prior vs last completed week classification
Prior week
Last completed week
Share of RR events by issue_type prefix (T1/T2/T3/T4/T5) · click a slice for hub breakdown
Top Hub Movers — WoW RR Rate
Biggest week-over-week change vs prior completed week
↑ Biggest increase
—
↓ Biggest decrease
—
Hub RR Rate — Last Completed Week
Running repairs per hub ÷ avg active bikes
Hub RR Rate = hub RR events ÷ hub avg active bikes × 100
Hub × Week Heatmap
Last 8 completed weeks · † = <50 RR events that week
Loading…
Classification Summary — Last Completed Week
Issue type breakdown by hub
HubRRsT1 ProductT2 NaturalT3 ServiceT4 RiderT5 Non IssueDefect RR Rate
Loading…
Weekly Summary
Newest first
WeekRRsActive FleetRR RateDefect RateCSAT
L1: OPERATIONAL HEALTH · WHY IS RR WHAT IT IS
RR Frequency
—
vs prior week
Km driven per RR event
RR Frequency = Total km driven ÷ Total RR events
First Event %
—
vs prior week
Bike's First RR in its journey
First Event % = RR events with rr_rank_in_journey=1 ÷ Total RR events
Bike-days per RR
—
vs prior week
Bike-days ÷ RRs: how long a bike runs per RR
Bike-days per RR = Σ daily active bikes in the period ÷ all RR events in the period (follows City / Hub; ignores RR recency) · higher is better
1d Repeat Share
—
vs prior week
Repaired again within 1 day
3d Repeat Share
—
vs prior week
Repaired again within 3 days
7d Repeat Share
—
vs prior week
Repaired again within 7 days
Repeat Share = RR events with is_Nd_repeat flag ÷ Total RR events
Avg days since last RR or deployment
—
vs prior week
At the time of each RR
Avg days since last RR or deployment = mean tat_days (all RRs); only bikes that had an RR are counted, so it is shorter than Bike-days per RR · Deploy→RR = first events only · RR→RR = repeat events only · Km = mean km_since_last_service
First Event by Band
—
% first failures across recency bands
Share of events that are the bike's first failure (last_rr_date IS NULL) within each TAT band: overall / ≤7d / ≤3d / ≤1d
Defect Rate by window and journey rank
7d / 3d / 1d × Overall / First RR / Repeat RR
WindowOverallFirst RRRepeat RR
Loading…
N-day Defect Rate = RR events with the N-day repeat flag ÷ (all RR events + new deployments) × 100 · Overall = First RR + Repeat RR (only the numerator is split; the number in brackets = RR events) · for the period this tab shows · the Journey rank and RR recency filters do not apply here
Repeat Share Trend — 1d / 2-3d / 4-7d
Share of RR events that recur within each window · completed weeks only
Bar height = RR events with is_Nd_repeat flag ÷ Total RR events × 100 (not the same denominator as Defect Rate, which also counts new deployments). White line = 7d total; bar labels = each band's share of the 7d total (sums to 100%).
PEOPLE PERFORMANCE
Total JCs min:
CSAT min:
Defect window: (follows RR recency: ≤1d / ≤3d / ≤7d; 7d for All, ≤30 and 30+)
7-Day Defect Rate by Technician
JCs in period (DMS, JC date) · defective = bike had T2/T3 RR within 7 days after the JC · min 5 JCs
TechnicianHubDefect RateDefective JCsTotal JCs
Loading…
CSAT by Ops Agent
Running Repair + Bike Exchange · for the picked period · min 3 responses
Ops AgentHubCSAT %Avg ★Responses
Loading…
L2: RR MIX · HOW SOON BIKES COME BACK
RR Mix by Days Since Last Visit — Weekly Trend
Each week's RR Rate split by days since the bike's last RR or deployment · labels = share of the week's RRs · follows City, Hub, Submission Type, Bike Model, Journey rank and Issue type; not RR recency (it shows every bucket)
Bar height = RRs in the bucket ÷ avg active bikes × 100, so the stack = the week's RR Rate for all RRs (white line) · bar labels = each bucket's share of the week's RRs (sums to 100%) · days since last visit = tat_days (bike's last RR or deployment) · buckets ≤7, 8–30, 30+ days
RR and 7-Day Defect by Odometer
The picked week · odometer at the RR · Overall / Disc / Drum
Loading…
RR % = RRs ÷ avg active bikes in the band × 100 · 7-day defect % = RRs within 7 days of the bike's last RR or deployment ÷ (RRs + new deployments in the band) × 100 · band = odometer at the RR (RRs), on the day (active bikes), at handover (deployments) · colour: green = low, red = high within this table (RR % and Defect % each on their own scale, 10th to 90th percentile); * = thin (under 100 bikes in the band, or under 10 RRs / 20 RRs + deployments): coloured, but not used to set the scale
Top Parts Replaced on RRs
The picked week vs the one before · Overall / Disc / Drum
Loading…
% of RRs = RRs that replaced a part of the family ÷ all RRs × 100 (an RR with pads and a tyre counts in both) · back ≤7d = RRs whose bike had its next RR within 7 days ÷ RRs with that part × 100 · parts from the RR's job card (rrr_events.parts_used), grouped into families by name
CSAT – CHURN ANALYSIS · DOES A BAD REPAIR EXPERIENCE PREDICT LEAVING
Negative (1-3★)
—
—
Churned = journey ended within 14d of this (last) event · cohort matured 14d+
Positive (4-5★)
—
—
Churned = journey ended within 14d of this (last) event · cohort matured 14d+
No feedback
—
—
Churned = journey ended within 14d of this (last) event · cohort matured 14d+
14-Day Churn Rate by CSAT Rating — Weekly Trend
Cohort: last RR/BX event per journey, matured 14d+ · rating from that event's csat_enriched match (submission_type required)
Churn % = journeys ending within 14d of this event ÷ all matured last-events in that rating group
TEST DRIVE · GPS-VERIFIED PASS % & RR WITHIN 7 DAYS
Test Drive Pass %
—
vs prior week
GPS trail confirms the bike left the hub
Pass % = PASS ÷ (PASS + FAIL + NO GPS DATA) × 100 · Intellicar + Stride Intellicar · bucketed by JC billed date (IST)
JCs Checked
—
vs prior week
Test drives recorded for billed JCs
Count of test_drive_results rows (Intellicar + Stride Intellicar) with JC billed in the period
No GPS Data %
—
vs prior week
No GPS trail to prove the test drive
NO GPS DATA ÷ all test drives × 100
7d Defect Rate — PASS test drives
—
vs prior week
PASS test drives whose bike came back with a T2/T3 RR
PASS test drives with a T2/T3 RR on the same bike (repair_date in billed date +1..+7d) ÷ all PASS test drives × 100
7d Defect Rate — FAIL / no-GPS test drives
—
vs prior week
FAIL + NO GPS DATA test drives whose bike came back with a T2/T3 RR
(FAIL + NO GPS DATA) test drives with a T2/T3 RR on the same bike (repair_date in billed date +1..+7d) ÷ all FAIL + NO GPS DATA test drives × 100
Test Drive Pass % — Weekly Trend
All results in the denominator (PASS + FAIL + NO GPS DATA)
Pass % = PASS ÷ all test drives × 100
7d Defect Rate — PASS vs FAIL test drives — Weekly Trend
PASS cohort vs FAIL cohort (FAIL + NO GPS DATA) · same axis · click a legend item to isolate one line
Defect Rate = test drives in that cohort followed by an RR on the same bike within 7d of billing ÷ all test drives in that cohort × 100 · † = window not yet closed for some test drives
Test Drive Summary by Hub
For the picked period · worst Pass % first · hubs with ≥3 JCs checked · click a column header to sort
HubCityJCs CheckedPass %No GPS %Fail %
Loading…
Pass % = PASS ÷ JCs checked · No GPS % = NO GPS DATA ÷ JCs checked · Fail % = FAIL ÷ JCs checked (the three add to 100%)
Pass % by City
For the picked period · click a column header to sort
CityTest DrivesPassFailNo GPS DataPass %7d Defect % (PASS)7d Defect % (FAIL + no GPS)
Loading…