Skip to content

Product Analytics / Metrics for Pro #12

@Sancus

Description

@Sancus

Objective

Support the Earlybird/Community rollout by instrumenting Thunderbird Pro services with privacy-respecting usage metrics, so we can answer one question per service: are people actually using it? Success is a single PostHog dashboard that gives a daily bird's-eye view of Pro health across all services.

🟢 In Scope

  • Aggregate daily snapshot metrics (subscription counts, waitlist, mail provisioning)
  • Per-user activity signals (boolean flags and byte counts only — no message content, filenames, or calendar details)
  • PostHog event emission following existing telemetry.capture() patterns
  • Instrumentation changes in Appointment and Send services
  • Dashboard configuration in PostHog with escalation alerts

🔴 Out of Scope

  • Reading or indexing email/file/calendar content
  • Building custom analytics UI inside the accounts app

Technical and/or Business Requirements

  • All distinct_id values must be SHA-256 hashed; no raw UUIDs or emails reach PostHog
  • All collection gated behind POSTHOG_API_KEY — zero events without it
  • Test accounts excluded from all counts

Proposed Metrics

Pro General

Metric Source Cadence
Total active (paying) subscribers Subscription model, status=active Daily
Remaining waitlist users AllowListEntry where user is null Daily
Waitlist conversion rate Converted / total AllowListEntry Daily

Thundermail

Metric Source Cadence
Quota usage per user (bytes + %) Stalwart API usedQuota Daily
Users at storage extremes (<1%, >90%) Derived from quota data Daily
Active mail accounts provisioned Account model, active=True Daily
Email sending activity Stalwart metrics/logs Daily
Email reading activity Stalwart JMAP/IMAP session data Daily
Connected device / sync count Stalwart active sessions Daily

Appointment

Metric Source Cadence
Weekly active users (page views) Appointment service Per-event
% of users with availability configured Appointment service Daily
Bookings created by clients Appointment service Per-event
% of users receiving bookings Appointment service Weekly

Send

Metric Source Cadence
MAU / WAU Send service Per-event
Median storage usage Send service Daily
Users at storage extremes Send service Daily
File downloads by recipients Send service Per-event
Files reported (abuse) Send service Per-event

Accounts

Metric Source Cadence
Dashboard WAU accounts.login events (already tracked) Derived
Login frequency accounts.login events (already tracked) Derived
Login errors accounts.login_error events (already tracked) Derived

Metadata

Metadata

Assignees

Labels

No labels
No labels

Priority

None yet

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions