# Supported metrics

A complete list of metrics available through the Analytics API.

This page lists every metric available through the [Analytics API](https://docs.stripe.com/data/analytics.md).

The following details apply to every metric below unless noted otherwise:

- **Granularity**: `day`, `week`, `month`, and `year` are all supported.
- **Freshness**: Results are typically updated within 1 hour of the underlying activity.
- **Currency conversion**: Monetary values are converted to the `currency` you specify (or to your account’s default currency).
- **Time zone**: Results are aligned to the timezone you specify (or to your account’s default timezone).

## Summary 

| Common name | Namespace | What it measures |
| --- | --- | --- |
| [revenue.mrr](https://docs.stripe.com/data/analytics/supported-metrics.md#revenue-mrr) | `revenue` | Monthly recurring revenue from active and past-due subscriptions. |
| [revenue.arr](https://docs.stripe.com/data/analytics/supported-metrics.md#revenue-arr) | `revenue` | Annual recurring revenue from active and past-due subscriptions. |
| [revenue_growth.mrr](https://docs.stripe.com/data/analytics/supported-metrics.md#revenue-growth-mrr) | `revenue_growth` | Net change in MRR over time, broken down by `change_type`. |
| [revenue_growth.arr](https://docs.stripe.com/data/analytics/supported-metrics.md#revenue-growth-arr) | `revenue_growth` | Net change in ARR over time, broken down by `change_type`. |
| [revenue_growth_rate.mrr](https://docs.stripe.com/data/analytics/supported-metrics.md#revenue-growth-rate-mrr) | `revenue_growth_rate` | 30-day rolling MRR growth rate, expressed in basis points. |
| [new_trials.count](https://docs.stripe.com/data/analytics/supported-metrics.md#new-trials-count) | `new_trials` | Subscription-level and item-level trials started during the period. |
| [active_trials.count](https://docs.stripe.com/data/analytics/supported-metrics.md#active-trials-count) | `active_trials` | Subscription-level and item-level trials active at the end of the period. |
| [converted_trials.count](https://docs.stripe.com/data/analytics/supported-metrics.md#converted-trials-count) | `converted_trials` | Subscription-level and item-level trials converted during the period. |
| [trial_conversion.rate](https://docs.stripe.com/data/analytics/supported-metrics.md#trial-conversion-rate) | `trial_conversion` | 30-day rolling trial conversion rate, expressed in basis points. |
| [usage_based_billing.gross_usage_revenue](https://docs.stripe.com/data/analytics/supported-metrics.md#usage-based-billing-gross-usage-revenue) | `usage_based_billing` | Gross usage revenue across all meters, excluding taxes and discounts. |
| [metered_usage.total_aggregate_usage](https://docs.stripe.com/data/analytics/supported-metrics.md#metered-usage-total-aggregate-usage) | `metered_usage` | Aggregate usage totals per meter and customer. |
| [connect_connections.new_connection_count](https://docs.stripe.com/data/analytics/supported-metrics.md#connect-connections-new-connection-count) | `connect_connections` | New connected account connections in a period. |
| [connect_connections.disconnection_count](https://docs.stripe.com/data/analytics/supported-metrics.md#connect-connections-disconnection-count) | `connect_connections` | Connected account disconnections in a period. |
| [connect_connections.net_connection_delta](https://docs.stripe.com/data/analytics/supported-metrics.md#connect-connections-net-connection-delta) | `connect_connections` | Net change in connected account connections (new connections minus disconnections) in a period. |
| [connect_revenue.revenue](https://docs.stripe.com/data/analytics/supported-metrics.md#connect-revenue-revenue) | `connect_revenue` | Platform revenue earned from Stripe Connect activity. |
| [connect_margin.margin](https://docs.stripe.com/data/analytics/supported-metrics.md#connect-margin-margin) | `connect_margin` | Platform net margin (revenue minus costs) from Stripe Connect activity. |
| [connect_volume.payment_volume](https://docs.stripe.com/data/analytics/supported-metrics.md#connect-volume-payment-volume) | `connect_volume` | Gross Connect pay-in volume. |
| [connect_take_rate.take_rate](https://docs.stripe.com/data/analytics/supported-metrics.md#connect-take-rate-take-rate) | `connect_take_rate` | Platform take rate for payments, expressed in basis points. |
| [connect_support_cases.count](https://docs.stripe.com/data/analytics/supported-metrics.md#connect-support-cases-count) | `connect_support_cases` | Support cases created by connected accounts, excluding cases created by platforms on their behalf. Requires separate preview access. |

## revenue.mrr 

Monthly recurring revenue (MRR) from all active and past-due subscriptions.

| Detail | Value |
| --- | --- |
| Live mode ID | `metric_61UYCfg0c4d6wCgE05` |
| Sandbox ID | `metric_test_61UYCfgFqfg8KWGdo5` |
| Namespace | `revenue` |
| Unit | Minor units of `currency` (for example, cents for USD) |
| Dimensions | `price`, `product`, `customer`, `subscription` |

## revenue.arr 

Annual recurring revenue (ARR) from all active and past-due subscriptions.

| Detail | Value |
| --- | --- |
| Live mode ID | `metric_61UYCgWhAExXw5Im65` |
| Sandbox ID | `metric_test_61UYCgW3o5Vro8w1q5` |
| Namespace | `revenue` |
| Unit | Minor units of `currency` (for example, cents for USD) |
| Dimensions | `price`, `product`, `customer`, `subscription` |

## revenue_growth.mrr 

Net change in MRR over time, broken down by change type: new, reactivation, expansion, contraction, churn, and FX adjustment. Filter on `change_type` to isolate specific components.

| Detail | Value |
| --- | --- |
| Live mode ID | `metric_61UYCgg29rvcx97dr5` |
| Sandbox ID | `metric_test_61UYCgg07FN065QHA5` |
| Namespace | `revenue_growth` |
| Unit | Minor units of `currency` (for example, cents for USD) |
| Dimensions | `change_type` |

## revenue_growth.arr 

Net change in ARR over time, broken down by change type: new, reactivation, expansion, contraction, churn, and FX adjustment. Filter on `change_type` to isolate specific components.

| Detail | Value |
| --- | --- |
| Live mode ID | `metric_61UYCgq54uoObgYFC5` |
| Sandbox ID | `metric_test_61UYCgqZbqDuBRmEX5` |
| Namespace | `revenue_growth` |
| Unit | Minor units of `currency` (for example, cents for USD) |
| Dimensions | `change_type` |

## revenue_growth_rate.mrr 

30-day rolling MRR growth rate, computed as `((MRR_today / MRR_30_days_ago) - 1) × 10,000` (so 5% growth is returned as `500`). Returns 0 when prior-period MRR is zero.

| Detail | Value |
| --- | --- |
| Live mode ID | `metric_61UYCh0pUXR6JZulP5` |
| Sandbox ID | `metric_test_61UYCh098vd7Wwwoe5` |
| Namespace | `revenue_growth_rate` |
| Unit | Basis points (1 percent = 100 basis points). The `currency` field on results is `null` because this is a percentage, not a monetary value. |
| Dimensions | `price`, `product`, `customer` |

## new_trials.count 

Number of subscription-level and item-level trials started during the period.

| Detail | Value |
| --- | --- |
| Live mode ID | `metric_61VQY4rHa5tcmBdnp5` |
| Sandbox ID | `metric_test_61VQY4rVVFtWwE4gR5` |
| Namespace | `new_trials` |
| Unit | Number of trials started. The `currency` field on results is `null`. |
| Dimensions | No supported dimensions. |

## active_trials.count 

Number of subscription-level and item-level trials active at the end of the period.

| Detail | Value |
| --- | --- |
| Live mode ID | `metric_61VQsQ30IGkZqmbXv5` |
| Sandbox ID | `metric_test_61VQsQ32RebJK5Axf5` |
| Namespace | `active_trials` |
| Unit | Number of active trials. The `currency` field on results is `null`. |
| Dimensions | No supported dimensions. |

## converted_trials.count 

Number of subscription-level and item-level trials converted during the period.

| Detail | Value |
| --- | --- |
| Live mode ID | `metric_61VQuGOfUsrhzd84W5` |
| Sandbox ID | `metric_test_61VQuGOFDvnLPl9FD5` |
| Namespace | `converted_trials` |
| Unit | Number of converted trials. The `currency` field on results is `null`. |
| Dimensions | No supported dimensions. |

## trial_conversion.rate 

30-day rolling percentage of subscription-level and item-level trials converted out of trials that ended.

| Detail | Value |
| --- | --- |
| Live mode ID | `metric_61VQuSeIQNAuwamT05` |
| Sandbox ID | `metric_test_61VQuSejiD51bcZqZ5` |
| Namespace | `trial_conversion` |
| Unit | Basis points (1 percent = 100 basis points). The `currency` field on results is `null` because this is a percentage, not a monetary value. |
| Dimensions | No supported dimensions. |

## usage_based_billing.gross_usage_revenue 

Gross monetary revenue generated from usage events across all meters during a given time period, excluding taxes and discounts.

| Detail | Value |
| --- | --- |
| Live mode ID | `metric_61UYChCzdsDwmJDRi5` |
| Sandbox ID | `metric_test_61UYChCcFUOh6ieln5` |
| Namespace | `usage_based_billing` |
| Unit | Minor units of `currency` (for example, cents for USD) |
| Dimensions | `price`, `product`, `customer`, `meter` |
| Constraints | Meters with the `LAST` or `MAX` aggregation formula aren’t supported. Data is available starting 2025-04-02. |

## metered_usage.total_aggregate_usage 

Aggregate usage totals per meter and customer, computed using each meter’s aggregation formula (for example, `SUM` or `COUNT`).

| Detail | Value |
| --- | --- |
| Live mode ID | `metric_61UYChMzN9s7jD5Nj5` |
| Sandbox ID | `metric_test_61UYChMHjW6SV6wcS5` |
| Namespace | `metered_usage` |
| Unit | Determined by the meter’s aggregation formula (counts or summed amounts in the meter’s units). The `currency` field on results is `null`. |
| Dimensions | `meter`, `customer` |
| Constraints | Meters with the `LAST` or `MAX` aggregation formula aren’t currently supported. |

## connect_connections.new_connection_count 

Number of new connections established between your platform and connected accounts over the requested period. Related metrics include `connect_connections.disconnection_count` for disconnected accounts and `connect_connections.net_connection_delta` for new connections minus disconnections.

| Detail | Value |
| --- | --- |
| Live mode ID | `metric_61VO0vxnFoYf7Mg5g5` |
| Sandbox ID | `metric_test_61VO0vxK3lPF4SeXR5` |
| Namespace | `connect_connections` |
| Unit | Number of connected account connections. The `currency` field on results is `null`. |
| Dimensions | `connected_account_country`, `account_configuration`, `capability_status` |

## connect_connections.disconnection_count 

Number of connected account disconnections over the requested period. Related metrics include `connect_connections.new_connection_count` for new connections and `connect_connections.net_connection_delta` for new connections minus disconnections.

| Detail | Value |
| --- | --- |
| Live mode ID | `metric_61VO0w47zcyaMeEWw5` |
| Sandbox ID | `metric_test_61VO0w4JnclXHnaQe5` |
| Namespace | `connect_connections` |
| Unit | Number of connected account disconnections. The `currency` field on results is `null`. |
| Dimensions | `connected_account_country`, `account_configuration`, `capability_status` |

## connect_connections.net_connection_delta 

Net change in active connected account connections over the requested period, computed as new connections minus disconnections.

| Detail | Value |
| --- | --- |
| Live mode ID | `metric_61VO0wCWq9f73O3fT5` |
| Sandbox ID | `metric_test_61VO0wCuMG9j1Ji2S5` |
| Namespace | `connect_connections` |
| Unit | Net number of connected account connections. The `currency` field on results is `null`. |
| Dimensions | `connected_account_country`, `account_configuration`, `capability_status` |

## connect_revenue.revenue 

Platform revenue earned from the payments activity of your connected accounts.

| Detail | Value |
| --- | --- |
| Live mode ID | `metric_61VCm94osfoFqZcoL5` |
| Sandbox ID | `metric_test_61VCm944Sh2Uxix9j5` |
| Namespace | `connect_revenue` |
| Unit | Minor units of `currency` (for example, cents for USD) |
| Dimensions | `connected_account`, `connected_account_country`, `payment_method`, `product_category`, `platform_currency` |

## connect_margin.margin 

Platform net margin from connected account payments activity, calculated as the platform revenue minus platform costs. Related cost-component metrics (`stripe_fees`, `network_costs`, `refunds`, `disputes`, `application_fees`, `application_fee_refunds`, `account_debits`) are also available under the `connect_margin` namespace.

| Detail | Value |
| --- | --- |
| Live mode ID | `metric_61VCm88p4L0twgRpy5` |
| Sandbox ID | `metric_test_61VCm88gVnWoMljqO5` |
| Namespace | `connect_margin` |
| Unit | Minor units of `currency` (for example, cents for USD) |
| Dimensions | `connected_account`, `connected_account_country`, `payment_method`, `product_category`, `platform_currency` |

## connect_volume.payment_volume 

Gross Connect pay-in volume. The related `connect_volume.payment_count` metric returns the number of successful pay-in transactions.

| Detail | Value |
| --- | --- |
| Live mode ID | `metric_61VCm9BZxyRIpzAKQ5` |
| Sandbox ID | `metric_test_61VCm9BcyMuVazunw5` |
| Namespace | `connect_volume` |
| Unit | Minor units of `currency` (for example, cents for USD) |
| Dimensions | `connected_account`, `connected_account_country`, `payment_method`, `platform_currency` |

## connect_volume.transfer_volume 

Gross Connect transfer volume. The related `connect_volume.transfer_count` metric returns the number of successful transfers.

| Detail | Value |
| --- | --- |
| Live mode ID | `metric_61VFepxD4pTRD0tlN5` |
| Sandbox ID | `metric_test_61VFepxefEqftUFjF5` |
| Namespace | `connect_volume` |
| Unit | Minor units of `currency` (for example, cents for USD) |
| Dimensions | `connected_account_country`, `platform_currency` |

## connect_take_rate.take_rate 

Platform take rate for payments, calculated as the margin from payments divided by gross Connect pay-in volume. Returns 0 when volume is zero or null. Related metrics (`payments_margin`, `payment_volume`, `stripe_fees`, `network_costs`, `refunds`, `disputes`, `application_fees`, `application_fee_refunds`, `account_debits`) are also available under the `connect_take_rate` namespace.

| Detail | Value |
| --- | --- |
| Live mode ID | `metric_61VCm9P1Qn3GQXgoI5` |
| Sandbox ID | `metric_test_61VCm9PyIMtNGHggy5` |
| Namespace | `connect_take_rate` |
| Unit | Basis points (1 percent = 100 basis points). The `currency` field on results is `null` because this is a ratio, not a monetary value. |
| Dimensions | `connected_account`, `connected_account_country`, `payment_method` |

## Connect support cases count 

`connect_support_cases.count` returns the number of support cases created by connected accounts, grouped by case creation time. It excludes cases created by platforms on behalf of connected accounts. Response time, resolution time, and customer satisfaction (CSAT) dimensions describe count distributions, not averages.

This metric requires separate private preview enablement for your platform, in addition to Analytics API access. Your caller needs both analytics read access (`analytics_read`) and support case read access (`support_case_read`) on your platform. Results stay scoped to your platform and request mode; filtering by a connected account that’s connected to another platform doesn’t grant access to the other platform’s cases.

| Detail | Value |
| --- | --- |
| Common name | `connect_support_cases.count` |
| Live mode ID | `metric_61VR1epCUG31ECvvA5` |
| Sandbox ID | `metric_test_61VR1epA6ZjCB7PPL5` |
| Namespace | `connect_support_cases` |
| Unit | Integer number of cases. |
| Time | Case creation time, with `day`, `week`, `month`, or `year` granularity. Set the `timezone` parameter in the request body to select a time zone. If you omit this parameter, the API uses your platform’s default time zone. |
| Freshness | Refreshed daily. `refreshed_at` reports the source data watermark for successful queries; it isn’t the response creation time. |

### Dimensions

You can filter and group by every dimension in this table. Each filter accepts up to 10 values. `product` and `topic` are support classifications; `product` doesn’t refer to a Stripe Product ID.

| Dimension | Values or meaning |
| --- | --- |
| `connected_account` | Connected account ID. |
| `status` | `new`, `open`, `solved`, `closed`, or `invalid`. `invalid` represents an unexpected source status after normalization. |
| `product` | Support product classification string. |
| `topic` | Support topic classification string. |
| `channel` | `chat`, `request_a_call`, `email`, or `critical_issue`. |
| `resolution_time_bucket` | - `lt_1d`: less than 24 hours.
- `lt_3d`: at least 24 and less than 72 hours.
- `lt_7d`: at least 72 and less than 168 hours.
- `gte_7d`: at least 168 hours. |
| `first_response_time_bucket` | - `lt_12h`: less than 12 hours.
- `gte_12h`: at least 12 hours. |
| `csat_rating_bucket` | - `gte_4`: rating of 4 or higher.
- `eq_3`: rating of 3.
- `lte_2`: rating of 2 or lower. |

The total count includes cases without a response-time measurement, resolution-time measurement, or CSAT rating, but their corresponding source buckets are null. To query a distribution that excludes unmeasured cases, filter that dimension to its complete list of valid bucket values, as in the following example.

### Query behavior

Consider the following when querying connected account support cases:

- Queries always return time series; `all` and `quarter` aren’t supported granularities.
- Grouping can select the highest-count dimension values and combine remaining values into an `Other` bucket.
- The `limit` parameter caps the total number of returned rows across all time buckets and groups. For example, `limit: 5` doesn’t request the exact top-five account table shown in the Dashboard.
- Ungrouped queries without data return zero-valued time buckets.
- Grouped queries without groups return an empty result.
- Without grouping, you can filter on at most two dimensions. With grouping, you can filter the grouping dimensions and at most one additional dimension.
- All metrics in a request must share the `connect_support_cases` namespace.
- Omit the `currency` parameter from your request. This count metric doesn’t accept it and returns no currency value.

### Query a resolution-time distribution

The following example request returns daily counts for measured resolution-time buckets. Omit the filter to include cases without a resolution-time measurement in the population.

```curl
curl -X POST https://api.stripe.com/v2/data/analytics/metric_query \
  -H "Authorization: Bearer <<YOUR_SECRET_KEY>>" \
  -H "Stripe-Version: 2026-09-30.preview" \
  --json '{
    "metrics": [
        {
            "name": "connect_support_cases.count"
        }
    ],
    "starts_at": "2026-09-01T00:00:00Z",
    "ends_at": "2026-09-08T00:00:00Z",
    "granularity": "day",
    "timezone": "UTC",
    "filters": {
        "resolution_time_bucket": [
            "lt_1d",
            "lt_3d",
            "lt_7d",
            "gte_7d"
        ]
    },
    "group_by": [
        "resolution_time_bucket"
    ]
  }'
```

The common name works in either mode. If your integration stores the metric ID returned in a response, you can use that ID in subsequent requests in the same mode. To query by ID, replace the metric selector with `{ id: "metric_test_61VR1epA6ZjCB7PPL5" }` in a sandbox or `{ id: "metric_61VR1epCUG31ECvvA5" }` in live mode. Whether you use the common name or a mode-specific ID, each result identifies the metric with its mode-specific ID.
