Overviewvaivi-test · dashboard
Firebase Live

Dashboard Overview

vaivi-test · Updated just now

Total Users
2,847
↑ 12% this week
MRR (₹)
1.24L
↑ 8% vs last month
Cases Today
1,403
Avg 1,210 / day
Gemini Cost Today
₹847
↑ ₹120 vs yesterday
Cases Generated — Last 30 Days
Daily simulation activity
Subscription Breakdown
Free 58% Basic 16% Pro 14% Elite 8% Yearly 4%
Top Departments Today
General Medicine
342
Cardiology
241
Pediatrics
183
Emergency Medicine
158
Neurology
116
Recent Activity
New Pro subscriber — Priya Sharma
2 min ago
Multi-device alert — Rahul Verma
18 min ago
4 subscriptions expiring in 3 days
1 hr ago
Gemini cost ₹847 — above daily avg
2 hr ago
LOR generated — Dr. Amir Khan
3 hr ago

User Management

2,847 total users · 5 banned

UserTierRankXPCasesAvgStatusActions

Revenue & Subscriptions

Mock data — connect Razorpay/Play Billing for live figures

MRR (₹)
1,24,250
↑ 8.2% MoM
ARR (₹)
14.9L
On track
New Subs
124
↑ 22 vs last
Churn Rate
3.1%
↑ 0.4% vs last
Monthly Revenue — Last 12 Months

Case Analytics

Usage patterns, scores, and AI performance

Total Cases
84,291
All time
Avg Score
3.42
Out of 5.0
High Accuracy
24%
Score ≥ 4.0
Avg Time / Case
11.4m
Median 9m
Score Distribution
Cases by Department

Community Moderation

Loading…

PostAuthorDeptCommentsFlagActions

User Reports

3 open · 18 resolved this month

Inaccurate clinical information
Priya Sharma · “Metformin dosing guide”
Open
“Dosing info incorrect for CKD patients. Could cause harm.”
Offensive comment
Ananya Nair · Comment on “Atypical STEMI”
In Review
“Comment is disrespectful to the case author.”

User Feedback

42 submissions · 28 unread

Avg Rating
4.3 ★
↑ 0.2 this month
Top Category
UI/UX
38% of submissions
Bug Reports
7
3 unresolved
Dr. Amir Khan
AI Quality
Resolved
★★★★★
“Gemini evaluations getting sharper. Cardiology cases now catch subtle ECG findings.”
Priya Sharma
UI/UX
Pending
★★★★☆
“Flashcard flip lags on older phone. Dark mode not fully applied on community screen.”

Sessions & Device Management

Live from SessionService · 15-min token validation · 2 multi-device alerts

Multi-Device Alerts
2
Concurrent logins
Active Sessions
1,204
Right now
Force-Logouts Today
7
Token mismatch
Avg Session
24m
Last 7 days
2 users have active sessions on multiple devices simultaneously. Review and send security alerts.

Subscription Expiry Queue

Users expiring within 30 days · Hooks into subscriptionExpiryReminder CF

Expiring in 3 days
4
Urgent
Expiring in 7 days
11
Due for reminder
Expiring in 30 days
38
Pipeline ~₹38K
0 users selected
UserTierExpiresDays LeftCases/MoReminderActions

Referral Analytics

referrals/ collection · 1500 coins per successful referral

Total Referrals
312
↑ 28 this month
Coins Paid Out
9.36L
312 × 1500
Conversion Rate
68%
Referred → paid
Top Referrer
Dr. AK
47 referrals
Referrals Per Month
Source Split
Email 72% Google 28%
Top Referrers
UserReferralsCoinsConv.
Recent Chains

Gemini Token Cost Monitor

gemini-2.5-flash · Cloud Function proxy · Estimates based on token pricing

Cost Today (₹)
847
↑ ₹120 vs yesterday
Cost This Month
18,240
Budget: ₹25,000
Cost Per Case (₹)
0.60
Input + output tokens
Token Efficiency
73%
↑ 4% after compression
Monthly spend at 73% of budget (₹18,240 / ₹25,000). At current rate hits limit in ~8 days.
Daily Cost — Last 30 Days (₹)
generateCase + evaluateSimulation calls
Cost by Cloud Function
generateCase
~1,800 tokens avg
₹482
57%
evaluateSimulation
~2,400 tokens avg
₹301
36%
draftLOR
~4,200 tokens avg
₹64
7%
Cost Per Department Today
Optimization Recommendations
Potential savings vs current spend
Compress system prompts
Reduce avg input tokens ~30%. Est. savings: ₹5,400/mo
Firestore case cache
Pre-generate 50 cases/dept nightly. ~40% cache hit. Savings: ₹3,200/mo
responseSchema parameter
Structured output reduces retry tokens. Savings: ~₹1,800/mo

Promo Codes

sys_config/discounts

Active Codes
CodeDiscountApplies ToUsesExpires
LAUNCH2020%All plans48 / ∞31 Mar 2026
AIIMS5050%Pro only12 / 5030 Apr 2026
YEARLY2525%Yearly only7 / 10015 Jun 2026
Code Performance

Push Broadcasts

sendAdminBroadcast CF → FCM → all users

Send New Broadcast
Target Audience
All Users
Free
Basic
Pro
Elite
Yearly
Title
Message
Recent Broadcasts
New Departments Unlocked!
All users · 2,847 sent · 15 Mar
⚠ Security alert — Rahul Verma
1 user · Direct · 5 min ago
Yearly plan now ₹14,999
Free + Basic · 2,108 sent · 10 Mar

Payment Failures

Failed Razorpay / Play Billing transactions · Wire to payment webhook once live

Failed Today
3
₹5,497 at risk
Failed This Month
11
₹14,490 total
Retry Success Rate
64%
7 of 11 recovered
Avg Retry Count
1.8
Before success
UserPlanAmountFailure ReasonRetriesFailed AtStatusActions

Cohort Retention

Users grouped by signup week · % still active at 1w / 2w / 4w / 8w

Week 1 Retention
68%
↑ 4% vs prev cohort
Week 4 Retention
41%
↑ 2% vs prev cohort
Week 8 Retention
28%
Industry avg ~22%
Avg LTV (₹)
2,840
Across all paid cohorts
Cohort Retention Heatmap
Row = signup week · Col = weeks since signup · % still active
Retention Trend — Week 4 Rate Per Cohort

LOR Tracker

Letter of Recommendation requests · draftLOR CF · Eligibility: Pro+, 1000 cases, 3.5 avg

Total Generated
24
All time
Pending Eligibility
38
Close to qualifying
Downloaded
19
79% download rate
UserTierCasesAvg ScoreGeneratedDownloadedStatusActions

Coin Economy Health

10 coins = ₹1 · Max 50% discount · 1500 coins per referral

Coins in Circulation
84.2L
↑ 12% this month
Coins Redeemed
22.4L
26.6% redemption rate
Avg Coins / User
2,958
Across active users
Revenue Discount Impact
₹8,120
Discount applied this month
Coins Earned vs Redeemed — Last 6 Months
Coin Distribution by Tier
Free
12.6L
Basic
23.6L
Pro
35.4L
Elite / Yearly
12.6L

Partner Portal

B2B licensing stub · partner.vaivi.app · Hospital & medical college accounts

This is a pre-sales stub. Wire to Firestore partners/ collection when Enterprise contracts go live. Use for investor demos now.
Partner Institutions
3
Pilot accounts
Total Seats
420
Across all partners
Active Seats
287
68% utilisation
B2B ARR (₹)
3.6L
Pilot pricing
InstitutionTypeSeatsActiveContract ExpiryMRR (₹)StatusActions

Gemini Error Log

Failed / timed-out Cloud Function calls · Add token_logs writes to index.js to populate

Errors Today
7
2.1% error rate
Timeouts Today
3
generateCase p99 > 12s
Affected Users
6
Auto-retried: 4
Error Rate 7d Avg
1.4%
Target: <1%
Error Rate — Last 14 Days
Errors by Type
Timeout (>10s)
3
Invalid JSON response
2
Quota exceeded
1
Auth error
1
Recent Error Events
TimeFunctionError TypeUserDeptDurationRetried

Prompt Version Tracker

Log system prompt changes in Firestore prompt_versions/ and track score impact

Avg Score Before vs After Each Prompt Change
Calculated over 200 cases per version window
VersionDeployedFunctionChange SummaryAvg Score BeforeAvg Score AfterDeltaCases Sampled
v1.419 Mar 2026generateCaseAdded anti-repetition instruction for recent 5 cases3.383.52+0.14214
v1.310 Mar 2026evaluateSimulationTightened scoring rubric for Investigation domain3.613.44-0.17389
v1.201 Mar 2026generateCaseCompressed system prompt by 28% (token cost reduction)3.403.38-0.02401
v1.118 Feb 2026evaluateSimulationAdded 5-day timeline generation instruction3.213.40+0.19298

Case Quality Sampling

Random daily sample of AI-generated cases for spot-checking · Flag hallucinations or drift

Reviewed Today
5 / 5
All reviewed
Flagged This Week
2
Out of 35 sampled
Hallucination Rate
1.8%
Target: <2%

CF & Infrastructure Health

Cloud Function latency · Firestore cost · Scheduled CF status · App version distribution

generateCase p50
3.2s
Target: <5s
generateCase p99
11.8s
Approaching 12s limit
Firestore Reads/Day
142K
Cost: ~₹42/day
Firestore Writes/Day
38K
↑ 18% vs last week
CF Latency — p50 / p95 / p99
Scheduled CF Health
Firestore Cost Trend (₹/day)
App Version Distribution

Streak Health Dashboard

Core retention mechanic visibility · users/{uid}.currentStreak + lastCaseDate

Users With Active Streak
1,847
65% of active users
Streaks 30d+
214
↑ 18 vs last week
Streak Breaks Today
38
Avg 31/day
Recovery Rate
42%
Return within 48h
Streak Distribution
Streak Breaks Per Day — Last 14 Days
Top Streaks Right Now
UserStreakLast ActiveTierRiskActions

Flashcard Engagement

SM2 algorithm data · users/{uid}.flashcards array · Due vs reviewed rates

Cards Due Today
8,420
Across all users
Review Rate
62%
↑ 5% vs last week
Avg Retention Score
3.8
efactor average
Cards at Interval=1
2,140
Weak / forgotten cards
Due vs Reviewed — Last 14 Days
Most Skipped Departments
High skip rate = content worth improving
Neurology
71%
Rheumatology
64%
Oncology
58%
Endocrinology
44%
Cardiology
28%

Milestone Tracker

kCertMilestones proximity · Pipeline to rank-ups · Target “almost there” nudges

Users Within 10% of Each Milestone
Rank-Up Pipeline
Users within 10% of next XP threshold
Recent Milestone Achievements
Last 48 hours
UserMilestoneTierAchieved AtCertificateNotified

Notification Performance

FCM delivery · Open rate · Tap-through by type · Wire to analytics_events/ collection

Delivery Rate
94.2%
Undelivered: token stale
Avg Open Rate
31%
↑ 3% vs last month
Tap-Through Rate
18%
Industry avg: 12%
Stale FCM Tokens
143
Need token refresh
Open Rate by Notification Type
Best Send Times
Open rate by hour (IST)

Audit Log

Every admin action · Write to admin_logs/{auto-id} in Firestore · Non-deletable

Actions Today
14
By 1 admin
Actions This Month
87
Normal activity
Most Common Action
Tier Edit
34% of all actions
Destructive Actions
6
Post/comment deletes
TimestampAdminAction TypeTargetDetailsReversible

Banned Users Registry

All banned accounts with reason, history & appeal workflow · users/{uid}.isBanned

Total Banned
5
All time
Banned This Month
1
Spam violation
Appeals Pending
0
None active
UserBanned ByBan DateReasonCases Before BanAppealActions

Content Moderation Queue

Auto-flagged posts awaiting review before going live · Keyword filter + low like/report ratio

Pending Review
4
Oldest: 3 hr ago
Auto-Approved Today
28
Passed all filters
Avg Review Time
22m
When admin is active
Auto-flag triggers: medical misinformation keywords · report/like ratio >0.3 · new user (<5 cases) posting

Send Security Warning

To: —

Title
Message
Send Renewal Reminder

To: —

Message
Calls sendAdminBroadcast CF targeting this user’s FCM token + writes to notifications/{uid}/items.
Edit User
Subscription Tier
Subscription Expiry
Reset Daily Cases
Create Promo Code
Code
Discount %
Applies To
Max Uses
Expiry Date
Export Data