OnlyFans API
FanvueInsights

Get Subscriber Trend

Get the creator's subscriber events bucketed over time, so growth and churn can be charted. Proxies Fanvue's GET /v1/insights/subscribers.

This is an analytics time series, not a current audience count: total is the cumulative net change since the start of the requested range, not the number of subscribers the creator has. Use List Smart Lists for a live audience.

newSubscribersCount counts subscription starts rather than distinct people, so a returning fan is counted again. It also includes free trials, starts later refunded or charged back, and fans later banned or deleted, which is why it usually runs higher than the "New" figure on the creator's own Insights dashboard.

Buckets are always UTC calendar days. The offsets on startDate and endDate pick the window, but they do not move the bucket boundaries, and there is no timezone parameter here.

GET
/api/fanvue/{fanvueAccount}/insights/subscribers
AuthorizationBearer <token>

Get your API Key from OnlyFansAPI Console - https://app.onlyfansapi.com/api-keys

In: header

Path Parameters

fanvueAccount*string

The Fanvue Account ID

Query Parameters

cursor?string

Opaque pagination cursor from a previous response's nextCursor.

size?integer

Number of buckets to return (1 - 50). Default = 20

startDate?string

Only include events on or after this ISO 8601 datetime.

endDate?string

Only include events before this ISO 8601 datetime (non-inclusive).

Response Body

application/json

curl -X GET "https://app.onlyfansapi.com/api/fanvue/fanvue_acct_XXXXXXXXXXXXXXX/insights/subscribers?cursor=eyJ2IjoxfQ&size=20&startDate=2026-01-01T00%3A00%3A00Z&endDate=2026-02-01T00%3A00%3A00Z"
{
  "data": {
    "data": [
      {
        "date": "2026-01-15T00:00:00.000Z",
        "total": 56,
        "newSubscribersCount": 45,
        "cancelledSubscribersCount": 12
      },
      {
        "date": "2026-01-14T00:00:00.000Z",
        "total": 23,
        "newSubscribersCount": 38,
        "cancelledSubscribersCount": 15
      }
    ],
    "nextCursor": "eyJ2IjoyfQ"
  },
  "_meta": {
    "_credits": {
      "used": 1,
      "balance": 10055811,
      "note": "Always"
    },
    "_cache": {
      "is_cached": false,
      "note": "Cache disabled for this endpoint"
    },
    "_rate_limits": {
      "limit_minute": 5000,
      "limit_day": null,
      "remaining_minute": 4999,
      "remaining_day": null,
      "notice": "We have decided to remove our daily rate limits. Please remove any references to these in your integrations."
    }
  }
}