Project
DEMO DATA
Live · Firebase · GA4
Firebase Analytics
Realtime product pulse — users, sessions, events, and geography for {{ currentProjectLabel }}.
From
{{ customFromDate ? formatCustomDate(customFromDate) : 'DD-MM-YYYY' }}
To
{{ customToDate ? formatCustomDate(customToDate) : 'DD-MM-YYYY' }}
Range: {{ periodLabel }}
Pulling Firebase Analytics…
{{ error }}
{{ kpi.display }}
{{ kpi.label }}
{{ kpi.hint }}
{{ m.label }}
{{ m.value }}
Platform Split
Active users
{{ p.platform }}
{{ formatNum(p.sessions) }} sessions
{{ formatNum(p.activeUsers) }}
{{ platformShare(p) }}%
Top Events
By event count
Event Leaderboard
{{ idx + 1 }}
{{ formatNum(ev.eventCount) }}
Top Countries
Active users
{{ idx + 1 }}
{{ formatNum(c.activeUsers) }}
{{ kpi.display }}
{{ kpi.label }}
{{ kpi.hint }}
{{ m.label }}
{{ m.value }}
Platform Split
Active users
{{ p.platform }}
{{ formatNum(p.sessions) }} sessions
{{ formatNum(p.activeUsers) }}
{{ platformShare(p) }}%
Top Events
By event count
Event Leaderboard
{{ idx + 1 }}
{{ formatNum(ev.eventCount) }}
Top Countries
Active users
{{ idx + 1 }}
{{ formatNum(c.activeUsers) }}
Most Clicked Buttons
By click count
{{ idx + 1 }}
{{ formatNum(b.clicks) }}
Where Users Come From
Acquisition sources
{{ s.source }}
{{ formatNum(s.users) }}
{{ s.share }}%
Returning-User Engagement
Retention
Returning
{{ formatCompact(productExtras.returning_engagement.returning_users) }}
New Users
{{ formatCompact(productExtras.returning_engagement.new_users) }}
Avg Sessions (Returning)
{{ productExtras.returning_engagement.avg_sessions_returning }}
D1 Retention
{{ productExtras.returning_engagement.d1_retention }}%
D7 Retention
{{ productExtras.returning_engagement.d7_retention }}%
D30 Retention
{{ productExtras.returning_engagement.d30_retention }}%
Social Shares
{{ idx + 1 }}
{{ formatNum(sh.shares) }}
Referrals
Invites sent
{{ formatNum(productExtras.referrals.invites_sent) }}
Invites accepted
{{ formatNum(productExtras.referrals.invites_accepted) }}
Conversion rate
{{ productExtras.referrals.conversion_rate }}%
Top referrers
{{ idx + 1 }}
{{ formatNum(r.signups) }}
Spending Triggers
Views → clicks → conversions
{{ idx + 1 }}
{{ spendingConvRate(t) }}%
Most Used Health Features
Face Scan · Questionnaire · Consult · Plans
{{ idx + 1 }}
{{ formatNum(f.users) }}
Health Challenges
Scan & questionnaire completion
{{ idx + 1 }}
{{ ch.completion_rate }}%
Per-Title Performance
Engagement · completion · revenue
| Title | Engagement | Completion | Revenue |
|---|---|---|---|
| {{ t.title }} | {{ t.engagement }}% | {{ t.completion }}% | TK {{ formatNum(t.revenue) }} |
Streaks & Challenges
{{ idx + 1 }}
{{ ch.completion_rate }}%
Audit Log
Content changes & admin actions
| Time | Actor | Action | Target |
|---|---|---|---|
| {{ log.time }} | {{ log.actor }} | {{ prettyEvent(log.action) }} | {{ log.target }} |
Loading business analytics demo…
{{ mongoError }}
Executive KPIs (Mongo)
{{ kpi.display }}
{{ kpi.label }}
{{ kpi.hint }}
{{ c.title }}
{{ c.body }}
FR-11.1 · Key user actions
Signups vs episode views (monthly)
Detail table
| Month | Signups | Episode views |
|---|---|---|
| {{ m }} | {{ formatNum(mongoData.trends.signups[i]) }} | {{ formatNum(mongoData.trends.watches[i]) }} |
Source: users.createdAt · watchhistories
Unlocks & ad-reward events (monthly)
Detail table
| Month | Episode unlocks | Ad reward events |
|---|---|---|
| {{ m }} | {{ formatNum(mongoData.trends.unlocks[i]) }} | {{ formatNum(mongoData.trends.ad_rewards[i]) }} |
Ad series is a proxy (histories.type=2 reward events, not impressions/revenue).
Coin ledger by type
Detail table
| Type | Events | Share |
|---|---|---|
| {{ lab }} | {{ formatNum(mongoData.ledger_by_type.values[i]) }} | {{ sharePct(mongoData.ledger_by_type.values[i], mongoLedgerTotal) }} |
Login mix
Detail table
| Login type | Users | Share |
|---|---|---|
| {{ lab }} | {{ formatNum(mongoData.login_mix.values[i]) }} | {{ sharePct(mongoData.login_mix.values[i], mongoLoginTotal) }} |
Growth & referrals
Registered users
{{ formatNum(mongoData.kpis.users) }}
Guest accounts
{{ Number(mongoData.kpis.guest_pct || 0).toFixed(1) }}%
Referred users
{{ formatNum(mongoData.kpis.referred_users) }}
{{ formatNum(mongoData.kpis.users_with_referrals_made) }} users made ≥1 referral · sum count {{ formatNum(mongoData.kpis.referral_count_sum) }}
Ad reward events
{{ formatNum(mongoData.kpis.ad_reward_events) }}
Episode unlocks: {{ formatNum(mongoData.kpis.episode_unlock_events) }}
Detail table
| Metric | Value |
|---|---|
| Registered users | {{ formatNum(mongoData.kpis.users) }} |
| Guest accounts % | {{ Number(mongoData.kpis.guest_pct || 0).toFixed(1) }}% |
| Referred users | {{ formatNum(mongoData.kpis.referred_users) }} |
| Users who referred ≥1 | {{ formatNum(mongoData.kpis.users_with_referrals_made) }} |
| Referral count sum | {{ formatNum(mongoData.kpis.referral_count_sum) }} |
| Ad reward events | {{ formatNum(mongoData.kpis.ad_reward_events) }} |
| Episode unlock events | {{ formatNum(mongoData.kpis.episode_unlock_events) }} |
FR-11.5 · Audience & conversion
MAU proxy by month
Detail table
| Month | MAU (proxy) |
|---|---|
| {{ m }} | {{ formatNum(mongoData.trends.mau[i]) }} |
Distinct users with watch / ledger / check-in / like activity that month.
Activation funnel
Detail table
| Step | Users | % of registered |
|---|---|---|
| {{ lab }} | {{ formatNum(mongoData.funnel.values[i]) }} | {{ sharePct(mongoData.funnel.values[i], mongoData.funnel.values[0] || mongoData.kpis.users) }} |
FR-11.5 / 11.6 · Monetization & ratios
Cash revenue mix
Detail table
| Source | GMV (৳) | Share |
|---|---|---|
| Coin packs | {{ formatBdt(mongoData.revenue_mix.coin) }} | {{ sharePct(mongoData.revenue_mix.coin, mongoCashGmv) }} |
| VIP / Subscription | {{ formatBdt(mongoData.revenue_mix.subscription) }} | {{ sharePct(mongoData.revenue_mix.subscription, mongoCashGmv) }} |
| Ad (no BDT in dump) | {{ formatBdt(mongoData.revenue_mix.ad) }} | — |
{{ mongoData.revenue_mix.note || 'Ad revenue (money) is not present in the dump.' }}
GMV by payment gateway
Detail table
| Gateway | GMV (৳) | Share |
|---|---|---|
| {{ lab }} | {{ formatBdt(mongoData.gateway_gmv.values[i]) }} | {{ sharePct(mongoData.gateway_gmv.values[i], mongoGatewayTotal) }} |
Target mix reference (FR-11.6)
Detail table
| Segment | Target % |
|---|---|
| Coin | {{ mongoData.revenue_mix.target_pct.coin }}% |
| Ad | {{ mongoData.revenue_mix.target_pct.ad }}% |
| Subscription | {{ mongoData.revenue_mix.target_pct.subscription }}% |
Business target 60% Coin / 35% Ad / 5% Subscription — for comparison only; Ad BDT absent.
ALERT
{{ r.title }}
{{ r.value }}
{{ r.target }}
{{ r.basis }}
{{ r.note }}
Coin pack distribution (orders)
Detail table
| Pack | Orders | Share |
|---|---|---|
| {{ lab }} | {{ formatNum(mongoData.pack_distribution.values[i]) }} | {{ sharePct(mongoData.pack_distribution.values[i], mongoPackTotal) }} |
VIP tier distribution (orders)
Detail table
| VIP tier | Orders | Share |
|---|---|---|
| {{ lab }} | {{ formatNum(mongoData.vip_distribution.values[i]) }} | {{ sharePct(mongoData.vip_distribution.values[i], mongoVipTotal) }} |
Content performance · episode & series
Data note
{{ mongoContentNote }}
{{ kpi.display }}
{{ kpi.label }}
{{ kpi.hint }}
{{ mongoData.content?.completion_rule || 'Watch event counted complete when totalWatchTime >= 90% of episode duration.' }}
Top episodes by views
Detail table (chart top 10)
| # | Episode | Views |
|---|---|---|
| {{ i + 1 }} | {{ ep.label }} | {{ formatNum(ep.views) }} |
Top episodes by total watch time
Detail table (chart top 10)
| # | Episode | Watch time |
|---|---|---|
| {{ i + 1 }} | {{ ep.label }} | {{ formatWatchMinutes(ep.total_watch_sec) }} |
Top episodes (full detail)
| # | Series | Episode | Views | Unique viewers | Watch time | Avg watch | Likes | Completion | Avg % of duration |
|---|---|---|---|---|---|---|---|---|---|
| {{ i + 1 }} | {{ ep.series_name || '—' }} | {{ ep.orphan ? 'Deleted episode' : (ep.episode_label || ('Ep ' + ep.episode_number)) }} | {{ formatNum(ep.views) }} | {{ formatNum(ep.unique_viewers) }} | {{ formatWatchMinutes(ep.total_watch_sec) }} | {{ formatWatchMinutes(ep.avg_watch_sec) }} | {{ formatNum(ep.likes) }} | {{ Math.round(ep.completion_pct || 0) }}% | {{ Math.round(ep.avg_pct_of_duration || 0) }}% |
Top series (full detail)
| # | Series | Views | Unique viewers | Watch time | Episodes touched | Likes | Completion |
|---|---|---|---|---|---|---|---|
| {{ i + 1 }} | {{ s.series_name }} | {{ formatNum(s.views) }} | {{ formatNum(s.unique_viewers) }} | {{ formatWatchMinutes(s.total_watch_sec) }} | {{ formatNum(s.episodes_watched) }} | {{ formatNum(s.likes) }} | {{ Math.round(s.completion_pct || 0) }}% |
Retention & streaks
Signup cohorts — activity retention
Detail table
| Cohort | Size | D+1 | D+7 | D+30 |
|---|---|---|---|---|
| {{ c.cohort }} | {{ formatNum(c.size) }} | {{ Math.round(c.d1_pct) }}% ({{ formatNum(c.d1) }}) | {{ Math.round(c.d7_pct) }}% ({{ formatNum(c.d7) }}) | {{ Math.round(c.d30_pct) }}% ({{ formatNum(c.d30) }}) |
% of cohort with any tracked activity after signup (not classic open-app retention).
Check-in streak distribution
Detail table
| Streak (days) | Users | Share |
|---|---|---|
| {{ lab }} | {{ formatNum(mongoData.streak_distribution.values[i]) }} | {{ sharePct(mongoData.streak_distribution.values[i], mongoStreakTotal) }} |
Source: checkins.consecutiveDays