---
title: "Get Admin Stats"
method: GET
path: "/api/admin/stats"
tags: ["Admin"]
---

# Get Admin Stats

`GET /api/admin/stats`

Get platform statistics for admin dashboard.

## Query parameters

- `period` string, nullable — Time period: last_day, last_week, last_month, last_90_days, last_year, custom
- `start_date` string, nullable — Start date for custom period (ISO format: YYYY-MM-DD)
- `end_date` string, nullable — End date for custom period (ISO format: YYYY-MM-DD)
- `api_key_types` string, nullable — Filter by API key types (comma-separated): demo, completion, compress, or None for all
- `compression_models` string, nullable — Filter by compression models (comma-separated, e.g., americano, latte) or None for all
- `tiers` string, nullable — Filter by customer tiers (comma-separated, e.g., tier1, tier2, tier3) or None for all
- `skip_cache` boolean — Invalidate cache and fetch fresh from DB. (Legacy alias: refresh)
- `refresh` boolean — DEPRECATED — use skip_cache. Kept for backward compatibility.

## Response `200`

Successful Response

- AdminStatsResponse
  - `success` boolean
  - `total_users` integer
  - `total_admin_users` integer
  - `active_users` integer
  - `active_users_previous_period` integer
  - `new_signups` integer
  - `paying_users` integer
  - `churned_users` integer
  - `users_by_tier` object
  - `credit_spent` number
  - `credit_spent_in_period` number
  - `admin_credit_spent` number
  - `admin_credit_spent_in_period` number
  - `user_savings_usd` number
  - `admin_savings_usd` number
  - `revenue` number
  - `revenue_in_period` number
  - `revenue_previous_period` number
  - `enterprise_revenue` number
  - `enterprise_revenue_in_period` number
  - `total_requests` integer
  - `user_requests` integer
  - `admin_requests` integer
  - `anonymous_demo_requests` integer
  - `requests_per_minute` number
  - `all_time_requests` integer
  - `total_tokens` integer
  - `user_tokens` integer
  - `admin_tokens` integer
  - `user_tokens_saved` integer
  - `admin_tokens_saved` integer
  - `all_time_tokens` integer
  - `newsletter_total` integer
  - `newsletter_active` integer
  - `newsletter_unsubscribed` integer
  - `features_total` integer
  - `features_pending` integer
  - `features_approved` integer
  - `gateway_unique_users` integer
  - `gateway_total_requests` integer
  - `gateway_requests_in_period` integer
  - `downloads_total` integer
  - `downloads_in_period` integer
  - `downloads_gateway` integer
  - `daily_active_users` object[] — Daily active users: [{timestamp, count}]
  - `time_series` AdminTimeSeriesDataPoint[]
    - `timestamp` string, required — ISO timestamp
    - `requests` integer — Number of requests
    - `tokens` integer — Total tokens processed
    - `cost_usd` number — Cost in USD (user spending)
    - `revenue_usd` number — Revenue in USD
    - `compression_model` string, nullable — Compression model used
    - `api_key_type` string, nullable — API key type/scope (demo, user, enterprise)
    - `request_source` string, nullable — Request source: sdk, demo, or gateway
    - `tier` string, nullable — User tier
  - `usage_breakdown` object[] — Daily usage by category: [{timestamp, {user,admin,pilot}_{requests,tokens,usd}}]
  - `revenue_breakdown` RevenueBreakdown
    - `prepaid_total` number
    - `prepaid_in_period` number
    - `prepaid_active` number
    - `prepaid_churned` number
    - `enterprise_paid_total` number
    - `enterprise_pending_total` number
    - `enterprise_unbilled` number
    - `prepaid_mtd` number
    - `enterprise_mtd` number
    - `total_mtd` number
    - `prepaid_time_series` RevenueDataPoint[]
      - `timestamp` string, required
      - `amount` number
    - `enterprise_time_series` RevenueDataPoint[]
      - `timestamp` string, required
      - `amount` number
    - `enterprise_daily_time_series` RevenueDataPoint[]
      - `timestamp` string, required
      - `amount` number
    - `unbilled_time_series` RevenueDataPoint[]
      - `timestamp` string, required
      - `amount` number
    - `mrr_trend` MRRDataPoint[]
      - `month` string, required
      - `prepaid` number
      - `enterprise` number
      - `total` number
  - `model_stats` ModelStats[]
    - `model` string, required
    - `requests` integer
    - `tokens` integer
    - `cost_usd` number
  - `period` string
  - `period_start` string, nullable
  - `period_end` string, nullable

## Other responses

- `422` — Validation Error
- `500` — Internal Server Error

---

[API](https://skmtc.net/compresr/apis/compresr-platform-api.md) · [All operations](https://skmtc.net/compresr/apis/compresr-platform-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/compresr/compresr-platform-api/revisions/93ee959dfa51/schema)
