ofapisv1
capability

OnlyFans Statistics API

Turn a creator's numbers into JSON instead of screenshots. ofapis doesn't expose a single "statistics" endpoint that mirrors the OnlyFans Statistics tab — instead you assemble the same metrics from the read endpoints that do exist, each scoped to a linked account so an agency can chart a whole roster from one key.

Which endpoint gives which metric

Metric Endpoint
Active subscribers, new joins GET /accounts/{accountId}/subscribers
People the account follows GET /accounts/{accountId}/following
Fans you have chats with GET /accounts/{accountId}/chats/users
Activity events (subs, tips, messages) GET /accounts/{accountId}/notifications
Unread activity count GET /accounts/{accountId}/notifications/count

There is no aggregate /statistics or /earnings route — revenue is reconstructed from the monetary fields on messages and notifications (see the transactions and earnings pages).

Read subscriber metrics

curl "https://api.ofapis.com/api/public/v1/accounts/42/subscribers?limit=50" \
  -H "Authorization: Bearer ofapis_sk_..."

Page through subscribers to count active fans and detect new joins between snapshots. GET /notifications/count is the cheapest way to see whether anything changed before you page the full list — one successful call, one credit; failed calls are free.

Build a snapshot

The pattern for a stats dashboard is snapshot-and-diff, because these endpoints return current state, not a pre-aggregated report:

  1. On a schedule, read subscribers (count) and notifications (recent events).
  2. Store each pull with a timestamp.
  3. Diff consecutive snapshots for growth, churn and activity trends.

Use cases

Gotchas

FAQ

Is there a single OnlyFans statistics endpoint?

No. ofapis exposes the underlying reads — subscribers, following, chats/users and notifications — and you assemble the headline metrics from them. This keeps the data raw and current rather than locking it into one report shape.

How do I get subscriber growth over time?

Snapshot GET /subscribers (and GET /notifications/count) on a schedule, store each pull with a timestamp, and diff consecutive snapshots. The API returns current state, so trends are computed on your side.

Where do revenue numbers come from?

From the monetary fields on messages and notifications, not a dedicated stats route — see the transactions API and earnings API for how to aggregate them.

Does reading metrics cost credits?

One credit per successful call. Failed calls, including an expired session, are never billed. See pricing for plan allowances.

Start free · Build a dashboard · API reference

Related guides

All guides
Start free — 250 credits, no card
Generate a token and make your first call in minutes.
Get started