Implementation:Helicone Helicone Stats Page
| Knowledge Sources | |
|---|---|
| Domains | Internal Analytics, Platform Metrics |
| Last Updated | 2026-02-14 06:32 GMT |
Overview
Internal platform statistics dashboard that visualizes Helicone's key growth metrics including active organizations, user growth, request volumes, and retention rates using Tremor bar charts.
Description
The Stats page (internally named Home) is an internal admin dashboard that fetches platform-wide statistics from the /api/stats endpoint and renders them as a series of Tremor BarChart components. The data is fetched using TanStack Query with a revalidation interval.
The page processes and displays the following metrics, each sorted chronologically and formatted using getTimeMap("day"):
Active Organizations:
- Monthly Active Orgs - Organizations with activity per month
- Weekly Active Orgs - Organizations with activity per week
- Daily Active Orgs - Organizations with activity per day
User Growth:
- Total Users - Cumulative integrated user count over time
- User Growth Per Month - New user registrations per month
- User Growth Per Week - New user registrations per week
- User Growth Per Day - New user registrations per day
Request Volumes:
- Requests Week over Week - Total request counts by week
- Requests Day by Day - Total request counts by day
Retention Rates:
- Monthly Retention Rate - Percentage of organizations active for more than 1 day per month
- Weekly Retention Rate - Percentage of organizations active for more than 1 day per week
The page wraps content in BasePageV2 for the authenticated layout and MetaData for page title management.
Usage
This page is accessed at the /stats route. It is intended for internal Helicone team use to monitor platform health and growth.
Code Reference
Source Location
- Repository: Helicone
- File: web/pages/stats.tsx
Signature
const Home: React.FC<HomeProps>;
export default Home;Import
// This is a Next.js page component, accessed via routing at /stats
I/O Contract
Data Source
| Property | Value |
|---|---|
| Endpoint | /api/stats
|
| Method | GET |
| Query Key | ["issues"]
|
| Response Type | Result<HeliconeStats, string>
|
| Revalidation | 1000 seconds |
HeliconeStats Data Fields
| Field | Data Shape | Chart Title |
|---|---|---|
| monthlyActiveUsers | { time_step, user_count_step } |
Active Orgs/Month |
| weeklyActiveUsers | { time_step, user_count_step, request_count_step } |
Active Orgs/week, Requests week over week |
| dailyActiveUsers | { time_step, user_count_step, request_count_step } |
Active Orgs/day, Requests day by day |
| integratedUsers | { time_step, count_step } |
Total Users |
| growthPerMonth | { time_step, count_step } |
User Growth Per Month |
| growthPerWeek | { time_step, count_step } |
User Growth Per Week |
| growthOverTime | { time_step, count_step } |
User Growth Per Day |
| monthlyRetentionRate | { time_step, rate } |
Monthly Retention Rate |
| weeklyRetentionRate | { time_step, rate } |
Weekly Retention Rate |
Chart Configuration
All charts use Tremor's BarChart component with:
| Prop | Value |
|---|---|
| categories | ["value"]
|
| index | "time"
|
| Container height | h-96 (384px)
|
Usage Examples
// The stats page is accessed via Next.js routing at /stats
// It requires authentication (wrapped in BasePageV2)
// Data is automatically fetched and displayed
// The /api/stats endpoint returns:
{
data: {
monthlyActiveUsers: [{ time_step: "2025-01-01", user_count_step: "150" }],
weeklyActiveUsers: [{ time_step: "2025-01-06", user_count_step: "80", request_count_step: "5000" }],
// ... more metrics
}
}