TwitterAPIs Docs
API ReferenceFollower Graph

Twitter Followers API v2 | Richer Follower Data

The v2 variant of the followers endpoint. Same data, with a more consistent cursor model and additional user fields. Prefer v2 for new integrations. Cost: $0.0008 per call.

User Followers v2 is the upgraded followers endpoint: the same follower data with a more consistent cursor model and additional user fields such as created_at. Prefer it for new integrations. Page until the users array comes back empty, since the cursor stays non-null on the last page. Each page is one $0.0008 read.

GET
/user/followers_v2

Authorization

bearerAuth
AuthorizationBearer <token>

Pass your API key as a bearer token on every request: Authorization: Bearer <API_KEY>.

In: header

Query Parameters

username*string

Handle without the leading @.

user_id?string

Numeric user ID; provide either username or user_id.

cursor?string

Pagination cursor from a previous response.

count?integer

Max items to return for this page. Default 20; clamped to 1-100.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/user/followers_v2?username=naval&user_id=44196397&count=20"
{  "users": [    {      "id": "9921",      "username": "devjane",      "name": "Jane",      "followers_count": 4200,      "verified": false,      "created_at": "Wed Jan 04 09:11:00 +0000 2023"    }  ],  "next_cursor": "DAABCgABF..."}
{  "error": "bad_request",  "message": "Missing or malformed parameter. Fix the request before retrying."}
{  "error": "unauthorized",  "message": "The API key is missing, malformed, or revoked. Check the Authorization header."}
{  "error": "insufficient_credits",  "message": "Your balance is exhausted. Top up your credits to continue."}
{  "error": "not_found",  "message": "The resource does not exist, for example a deleted tweet or a private account."}
{  "error": "rate_limited",  "message": "Too many requests. Back off and retry with exponential backoff."}
{  "error": "server_error",  "message": "Something failed on our side. Retry with backoff; if it persists, contact support."}

Pricing

UnitPrice
Per call$0.0008
Per 1,000 calls$0.80
Per 1,000 records (~20 per call)~$0.04

Each page is one $0.0008 read, so a large follower export costs one call per page. Budget big pulls and stop at the depth you need.

When to use

Use it for new follower-export builds, for example exporting followers when you also need each account's creation date.

Pagination

This endpoint is cursor-paginated and returns roughly 20 records per call. Pass the next_cursor from each response back as the cursor parameter to read the next page. Stop when the records array comes back empty: follower-graph endpoints return a non-null cursor even on the final page, so the empty array is the only reliable stop signal. See Pagination for the full loop.

FAQ

Why choose v2 over v1 followers?

v2 returns the same followers with a more consistent cursor model and extra user fields like created_at. It is the recommended choice for new builds.

Does v2 change how paging stops?

No. As with v1, the follower graph keeps a non-null cursor on the last page, so stop when the users array comes back empty.

Is v2 priced differently from v1?

No. Both are standard reads at $0.0008 per page. v2 simply returns richer fields for the same cost.