---
title: "KPI cards, MRR movements and churn by reason, in the request's timezone."
method: GET
path: "/api/v1/admin/metrics/overview"
tags: ["Metrics Admin"]
---

# KPI cards, MRR movements and churn by reason, in the request's timezone.

`GET /api/v1/admin/metrics/overview`

## Request

- Base URL: `https://api.avatarfactory.io` (the document declares no server; this is the origin it was published from)
- URL: `https://api.avatarfactory.io/api/v1/admin/metrics/overview`
- Auth: one of:
  - API key in cookie `session`
  - HTTP bearer

## Query parameters

- `tz` string, nullable
- `include_internal` '0' | '1', nullable
- `from` string, date, nullable
- `to` string, date, nullable
- `filters` string, nullable
- `granularity` 'day' | 'week' | 'month'
- `compare` 'previous' | 'yoy' | 'none'

## Response `200`

OK

- OverviewResponse
  - `churn_by_reason` ChurnReasonRow[], required
    - `mrr_cents` integer, required
    - `reason` 'canceled' | 'payment_failed' | 'other' | 'unknown' | 'plan_switch', required
    - `subscriptions` integer, required
  - `compare` 'previous' | 'yoy' | 'none', required
  - `compare_from` string, date, nullable, required
  - `compare_series` OverviewPoint[], nullable, required
    - `active_subscriptions` integer, required
    - `arpu_cents` integer, nullable, required
    - `bucket` string, date, required
    - `canceled_pending` integer, required
    - `cancellations` integer, required
    - `churned_mrr_cents` integer, required
    - `churned_subscriptions` integer, required
    - `contraction_mrr_cents` integer, required
    - `expansion_mrr_cents` integer, required
    - `is_estimated` boolean, required
    - `logo_churn_pct` number, nullable, required
    - `mrr_cents` integer, required
    - `mrr_start_cents` integer, nullable, required
    - `new_mrr_cents` integer, required
    - `new_paid` integer, required
    - `refunds_cents` integer, required
    - `signups` integer, required
    - `trials` integer, required
  - `compare_to` string, date, nullable, required
  - `currency` 'USD'
  - `env` 'production' | 'staging' | 'local' | 'test', required
  - `estimated_before` string, date, nullable
  - `filters` FilterEcho[]
    - `dimension` string, required
    - `op` 'is' | 'not', required
    - `values` string[], required
  - `freshness` FreshnessSummary, required
    - `is_mrr_carried` boolean, required
    - `is_stale` boolean, required
    - `last_success_at` string, date-time, nullable, required
    - `subscription_state_day` string, date, nullable, required
  - `from` string, date, required
  - `granularity` 'day' | 'week' | 'month', required
  - `kpis` OverviewKpis, required
    - `active_subscriptions` KpiValue, required
      - `compare_value` integer, nullable, required
      - `delta_pct` number, nullable, required
      - `value` integer, nullable, required
    - `arpu_cents` KpiValue, required
      - `compare_value` integer, nullable, required
      - `delta_pct` number, nullable, required
      - `value` integer, nullable, required
    - `canceled_pending` KpiValue, required
      - `compare_value` integer, nullable, required
      - `delta_pct` number, nullable, required
      - `value` integer, nullable, required
    - `cancellations` KpiValue, required
      - `compare_value` integer, nullable, required
      - `delta_pct` number, nullable, required
      - `value` integer, nullable, required
    - `churned_mrr_cents` KpiValue, required
      - `compare_value` integer, nullable, required
      - `delta_pct` number, nullable, required
      - `value` integer, nullable, required
    - `churned_subscriptions` KpiValue, required
      - `compare_value` integer, nullable, required
      - `delta_pct` number, nullable, required
      - `value` integer, nullable, required
    - `contraction_mrr_cents` KpiValue, required
      - `compare_value` integer, nullable, required
      - `delta_pct` number, nullable, required
      - `value` integer, nullable, required
    - `expansion_mrr_cents` KpiValue, required
      - `compare_value` integer, nullable, required
      - `delta_pct` number, nullable, required
      - `value` integer, nullable, required
    - `logo_churn_pct` KpiFloat, required
      - `compare_value` number, nullable, required
      - `delta_pct` number, nullable, required
      - `value` number, nullable, required
    - `mrr_cents` KpiValue, required
      - `compare_value` integer, nullable, required
      - `delta_pct` number, nullable, required
      - `value` integer, nullable, required
    - `mrr_start_cents` KpiValue, required
      - `compare_value` integer, nullable, required
      - `delta_pct` number, nullable, required
      - `value` integer, nullable, required
    - `new_mrr_cents` KpiValue, required
      - `compare_value` integer, nullable, required
      - `delta_pct` number, nullable, required
      - `value` integer, nullable, required
    - `new_paid` KpiValue, required
      - `compare_value` integer, nullable, required
      - `delta_pct` number, nullable, required
      - `value` integer, nullable, required
    - `refunds_cents` KpiValue, required
      - `compare_value` integer, nullable, required
      - `delta_pct` number, nullable, required
      - `value` integer, nullable, required
    - `signups` KpiValue, required
      - `compare_value` integer, nullable, required
      - `delta_pct` number, nullable, required
      - `value` integer, nullable, required
    - `trials` KpiValue, required
      - `compare_value` integer, nullable, required
      - `delta_pct` number, nullable, required
      - `value` integer, nullable, required
  - `meta` ResponseMeta, required: The zone the answer's dates are in (ruling 11). tz_applied is false where the data is UTC by nature (/freshness, /exports).
    - `tz` string, required
    - `tz_applied` boolean
  - `notes` string[]
  - `series` OverviewPoint[], required
    - `active_subscriptions` integer, required
    - `arpu_cents` integer, nullable, required
    - `bucket` string, date, required
    - `canceled_pending` integer, required
    - `cancellations` integer, required
    - `churned_mrr_cents` integer, required
    - `churned_subscriptions` integer, required
    - `contraction_mrr_cents` integer, required
    - `expansion_mrr_cents` integer, required
    - `is_estimated` boolean, required
    - `logo_churn_pct` number, nullable, required
    - `mrr_cents` integer, required
    - `mrr_start_cents` integer, nullable, required
    - `new_mrr_cents` integer, required
    - `new_paid` integer, required
    - `refunds_cents` integer, required
    - `signups` integer, required
    - `trials` integer, required
  - `to` string, date, required

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `422`: Unprocessable Entity
- `503`: Service Unavailable

---

[API](https://skmtc.dev/avatarfactory/apis/avatarfactory-api.md) · [All operations](https://skmtc.dev/avatarfactory/apis/avatarfactory-api/llms.txt) · [OpenAPI document](https://skmtc.dev/avatarfactory/apis/avatarfactory-api/revisions/66fc7aa3f296?raw)
