๐ฆ Twitter (X) Follower Scraper
Pricing
from $3.99 / 1,000 results
๐ฆ Twitter (X) Follower Scraper
Scrape Followers & Following lists of any public X (Twitter) profile in bulk. Returns rich, v1.1-compatible user records with pinned-tweet hydration, full bio, profile image, banner, verified badge and more โ streamed live to the dataset.
Pricing
from $3.99 / 1,000 results
Rating
0.0
(0)
Developer
Scraply
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
3 days ago
Last modified
Categories
Share
๐ฆ Twitter (X) Follower & Following Scraper
Bulk-scrape Followers & Following lists of any public X (Twitter) profile โ rich data, real-time output.
Paste any number of X profile URLs (or @handles), choose to scrape Followers, Following, or both, and receive v1.1-compatible user records with full bio, profile image, banner, pinned tweet, verified badge, follower/following counts, and more โ streamed live to the dataset so partial results are always preserved.
โจ Why Choose This Actor?
- โก Bulk input โ scrape dozens of profiles in a single run
- ๐ Both lists at once โ followers AND following in one go (toggleable)
- ๐ Pinned-tweet hydration โ full pinned-tweet payload embedded in every record
- ๐ Smart auto proxy ladder โ direct โ datacenter โ residential, only escalates if blocked
- ๐พ Live results โ every user streams to the dataset the moment it's parsed
- ๐ก๏ธ Anti-block resilient โ randomized delays, exponential backoff, sticky escalation
- ๐ฏ v1.1-compatible output โ drop-in replacement for legacy Twitter API consumers
๐ Key Features
| Feature | Description |
|---|---|
| ๐ Bulk URLs / usernames | One per line โ accepts x.com/elonmusk, twitter.com/elonmusk, @elonmusk, or elonmusk |
| ๐ฅ Followers + โก๏ธ Following | Toggle either or both per run |
| ๐ข Per-list caps | Hard cap with maxFollowers / maxFollowings |
| ๐ Pinned tweets | Auto-hydrated v1.1 status objects |
| ๐ Auto proxy fallback | No proxy โ Datacenter โ Residential (3 retries) |
| ๐ก Real-time output | Each user is pushed live to the dataset, grouped per-section via dataset views |
| โ Verified flag, banner, avatar, bio | Full profile metadata in every row |
๐ฅ Input
{"urls": ["https://x.com/elonmusk","@sama"],"getFollowers": true,"getFollowing": true,"maxFollowers": 200,"maxFollowings": 200,"auth_token": "YOUR_X_AUTH_TOKEN_COOKIE","ct0": "YOUR_X_CT0_COOKIE","proxyConfiguration": { "useApifyProxy": false }}
| Field | Type | Description |
|---|---|---|
๐ urls | array<string> | Required. X profile URLs or @handles, one per item. |
๐ฅ getFollowers | boolean | Scrape the Followers list. Default true. |
โก๏ธ getFollowing | boolean | Scrape the Following list. Default true. |
๐ข maxFollowers | integer | Cap on followers per profile. Default 200. |
๐ข maxFollowings | integer | Cap on followings per profile. Default 200. |
๐ auth_token | string | Required. Your X auth_token cookie (secret). |
๐ ct0 | string | Required. Your X ct0 cookie (secret). |
๐ proxyConfiguration | object | Optional. Override the auto proxy ladder. Default: no proxy. |
๐ How to find your auth_token and ct0 cookies
- Open https://x.com in your browser and log in.
- Open DevTools โ Application (Chrome) or Storage (Firefox) tab.
- Expand Cookies โ
https://x.com. - Copy the
Valueof theauth_tokenrow โ paste into the input. - Copy the
Valueof thect0row โ paste into the input. - Both fields are marked
secretโ they never appear in run output.
๐ค Output
Every row in the dataset is a v1.1-shaped user record carrying:
typeโ either"follower"or"following"target_usernameโ the profile whose list this row came from- Full v1.1 user payload (followers_count, friends_count, verified, description, urls, profile_image_url_https, profile_banner_url, โฆ)
statusโ embedded pinned tweet (v1.1 status object) when the user has one
Example:
{"type": "follower","target_username": "elonmusk","id": 95092020,"id_str": "95092020","name": "Dr Jordan B Peterson","screen_name": "jordanbpeterson","description": "Best-Selling Author | Clinical Psychologist | โฆ","url": "https://t.co/KgUEvmxeQD","followers_count": 6182005,"friends_count": 1653,"statuses_count": 51533,"verified": false,"profile_image_url_https": "https://pbs.twimg.com/profile_images/.../TKBC60e1_normal.jpg","profile_banner_url": "https://pbs.twimg.com/profile_banners/95092020/1768079001","status": {"id_str": "1949912864271323255","text": "The culmination of my life's work. โฆ","favorite_count": 10543,"retweet_count": 1312,"lang": "en"}}
The output table has three pre-built views so each section is visible separately:
| View | Shows |
|---|---|
| ๐ All Scraped Users | Mixed โ both follower and following rows |
| ๐ฅ Followers Only | Filter the table down to follower rows |
| โก๏ธ Following Only | Filter the table down to following rows |
You can also export the full dataset as JSON / CSV / XLSX from the Output tab.
๐ How to Use (Apify Console)
- Log in at https://console.apify.com โ Actors.
- Open ๐ฆ Twitter (X) Follower & Following Scraper.
- Paste your X profile URLs / @handles in the URLs field โ one per line.
- Toggle Scrape Followers / Scrape Following as needed.
- Set the per-profile caps (defaults are 200 each).
- Paste your
auth_tokenandct0cookies (see instructions above). - (Optional) Leave proxy as default โ the actor escalates automatically if blocked.
- Click โถ Start.
- Watch logs in real time โ every scraped user appears live in the Output tab.
- Export the dataset to JSON / CSV / XLSX when the run completes.
๐ค Use via API
Run synchronously and get the dataset directly:
curl -X POST \"https://api.apify.com/v2/acts/<ACTOR_ID>/run-sync-get-dataset-items?token=$APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"urls": ["https://x.com/elonmusk"],"getFollowers": true,"getFollowing": false,"maxFollowers": 100,"auth_token": "โฆ","ct0": "โฆ"}'
Or asynchronously (returns a run ID โ poll for status):
curl -X POST \"https://api.apify.com/v2/acts/<ACTOR_ID>/runs?token=$APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"urls":["https://x.com/sama"],"auth_token":"โฆ","ct0":"โฆ"}'
๐ Proxy Strategy
The actor uses a sticky tiered fallback:
1. ๐ข Direct (no proxy) โ start here2. ๐ก Apify Datacenter Proxy โ on first block3. ๐ด Apify Residential Proxy โ if datacenter blocked too (3 retries)
Once the actor escalates to a higher tier, it stays there for the rest of the run โ no flapping. Every escalation is logged clearly so you can see exactly what happened.
๐ฏ Best Use Cases
- ๐ Audience analysis โ who follows / is followed by influencers in your niche
- ๐ค Lead generation โ pull a Following list of a target buyer persona
- ๐ฌ Research & journalism โ map social graphs of public figures
- ๐ง Competitive intelligence โ see who key competitors follow
- ๐ Dataset enrichment โ feed v1.1-shaped user rows into existing pipelines
๐ฐ Pricing (Pay-Per-Event)
| Event | What it covers |
|---|---|
apify-actor-start | One-time charge per run (covers startup) |
apify-default-dataset-item | Charged per successfully pushed user record |
You only pay for users we actually scrape โ failed lookups don't charge the per-item event.
โ Frequently Asked Questions
Q: Why do I need to provide auth_token and ct0?
X's GraphQL endpoints for Followers/Following require an authenticated session. The actor cannot read these lists without your own logged-in cookies โ there is no public anonymous endpoint.
Q: Are my cookies safe?
Both fields are marked secret in the input schema and never appear in logs or output. They live only inside the run sandbox and are discarded when the run ends. Still, use a throwaway account when possible.
Q: How many followers can I scrape per profile? We've tested up to 5,000 per list. X starts rate-limiting harder above that โ increase patience (and/or add a residential proxy) if you push higher.
Q: Will I get rate-limited? Possible on huge lists. The actor handles this gracefully โ it slows down, retries, and escalates to datacenter / residential proxies automatically.
Q: What if a profile is private or suspended? The lookup logs a warning and skips that profile โ the rest continue normally.
Q: Is this legal? The actor only reads publicly-listed followers/following on profiles your account can already see. You are responsible for downstream compliance with X's ToS, GDPR/CCPA, and any applicable anti-spam laws.
โ๏ธ Cautions / Legal
- Data is collected only from publicly accessible profiles.
- Do not use this to scrape private/protected accounts.
- The end user is responsible for legal compliance (GDPR, CCPA, target site ToS, anti-spam laws).
- Be respectful โ keep per-profile caps reasonable.
๐ฌ Support & Feedback
Issues, feature requests, or just want to chat? Open an issue on the actor's Apify page or contact the maintainer through your Apify Console messages.