---
title: "Platform snapshot (counts, plan mix, content, traffic, deltas)"
method: GET
path: "/stats/overview"
tags: ["Stats"]
---

# Platform snapshot (counts, plan mix, content, traffic, deltas)

`GET /stats/overview`

## Request

- Base URL: `https://api.nippy.host`
- URL: `https://api.nippy.host/stats/overview`
- Auth: `bearer` (a scheme the document does not define)

Admin-only point-in-time snapshot: headline counts, plan mix, content + traffic totals, and trailing-window deltas — everything the Overview tab shows except the growth series (see `GET /stats/growth`). Aggregate-only. Served from a short server-side cache.

## Query parameters

- `from` string
- `to` string
- `interval` '1m' | '5m' | '15m' | '1h' | '3h' | '6h' | '1d' | '1w'
- `tzOffset` number

## Response `200`

- APIStatsOverview
  - `accounts` APIAccountsStats, required
    - `total` number, required: All accounts (personal + organization).
    - `personal` number, required: Auto-provisioned personal accounts.
    - `organization` number, required: Explicitly created team/organization accounts.
  - `users` APIUsersStats, required
    - `total` number, required: All registered users.
    - `verified` number, required: Users who have verified their email address.
    - `unverified` number, required: Users who have not verified their email address yet. The remainder of `total` after `verified` — a signup that never came back to its inbox.
  - `sites` APISitesStats, required
    - `total` number, required: Sites in any non-pending lifecycle status (mid-upload sites excluded).
    - `live` number, required: Sites currently servable to the public.
    - `inactive` number, required: Sites toggled off by their owner.
    - `suspended` number, required: Sites suspended (billing or abuse).
    - `awaitingVerification` number, required: Sites finished uploading but blocked on email verification.
  - `customDomains` APICustomDomainsStats, required
    - `total` number, required: All connected custom-domain rows.
    - `active` number, required: Custom domains with an active certificate serving public traffic.
  - `plans` APIPlansStats, required
    - `free` number, required: Accounts on the free tier.
    - `basic` number, required: Accounts on the basic tier.
    - `pro` number, required: Accounts on the pro tier.
    - `max` number, required: Accounts on the max tier.
  - `billing` APIBillingStats, required
    - `paid` number, required: Accounts on a paid plan in an entitled state (active, trialing or past due).
    - `trialing` number, required: Paid accounts still inside the free trial.
    - `active` number, required: Paid accounts whose subscription is active.
    - `pastDue` number, required: Paid accounts whose latest payment failed (past due).
    - `canceling` number, required: Paid accounts that cancelled and keep access until the period ends.
    - `churned` number, required: Accounts that subscribed at some point and now hold a cancelled subscription.
    - `monthly` number, required: Paid accounts billed monthly.
    - `yearly` number, required: Paid accounts billed yearly.
  - `previews` APIPreviewsStats, required
    - `total` number, required: Previews in any state except `pending`.
    - `live` number, required: Previews that are live now.
    - `promoted` number, required: Previews promoted to a permanent site.
    - `expired` number, required: Previews that expired without a promotion.
  - `content` APIContentStats, required
    - `totalPublishes` number, required: Total successful publishes (finalized upload batches) ever.
    - `filesHosted` number, required: Files currently hosted: summed over each site’s most recent finalized version.
    - `bytesStored` number, required: Bytes currently stored: summed file sizes of each site’s most recent finalized version.
  - `traffic` APITrafficStats, required
    - `pageviews` number, required: Sample-corrected pageviews across all sites over the selected window.
    - `bytesServed` number, required: Sample-corrected bytes served across all sites over the selected window.
  - `deltas` APIDeltasStats, required
    - `windowDays` number, required: Length of each delta window, in days (the trailing period).
    - `accounts` APIStatDelta, required
      - `current` number, required: Count in the most recent delta window.
      - `previous` number, required: Count in the window immediately before the current one.
    - `verifiedUsers` APIStatDelta, required
      - `current` number, required: Count in the most recent delta window.
      - `previous` number, required: Count in the window immediately before the current one.
    - `sites` APIStatDelta, required
      - `current` number, required: Count in the most recent delta window.
      - `previous` number, required: Count in the window immediately before the current one.
    - `customDomains` APIStatDelta, required
      - `current` number, required: Count in the most recent delta window.
      - `previous` number, required: Count in the window immediately before the current one.
    - `pageviews` APIStatDelta, required
      - `current` number, required: Count in the most recent delta window.
      - `previous` number, required: Count in the window immediately before the current one.
  - `attribution` APIStatsAttribution, required
    - `signupsByRef` APIAttributionCount[], required
      - `key` string, required: Channel bucket: a signup/token `ref` slug, `oauth:<client>`, `organic`/`web` for unattributed, or `unknown` for legacy rows.
      - `count` number, required
    - `tokensByVia` APIAttributionCount[], required
      - `key` string, required: Channel bucket: a signup/token `ref` slug, `oauth:<client>`, `organic`/`web` for unattributed, or `unknown` for legacy rows.
      - `count` number, required
    - `deploysByPlatform` APIAttributionCount[], required
      - `key` string, required: Channel bucket: a signup/token `ref` slug, `oauth:<client>`, `organic`/`web` for unattributed, or `unknown` for legacy rows.
      - `count` number, required
  - `windowDays` number, required: Window the traffic figures cover, in days.
  - `from` string, required: Start of the windowed traffic figures (ISO 8601).
  - `to` string, required: End of the windowed traffic figures (ISO 8601).
  - `generatedAt` string, required: When this snapshot was computed (ISO 8601).

## Other responses

- `403`: Admin access required

---

[API](https://skmtc.dev/nippy/apis/nippy-backend-api.md) · [All operations](https://skmtc.dev/nippy/apis/nippy-backend-api/llms.txt) · [OpenAPI document](https://skmtc.dev/nippy/apis/nippy-backend-api/revisions/7ab23f040a55?raw)
