Twitter/X Followers Scraper — Audience & Following Lists
Pricing
Pay per usage
Twitter/X Followers Scraper — Audience & Following Lists
Extract follower and following lists from any public Twitter/X account. Get usernames, display names, bios, follower counts, verified status, and profile pictures. Supports multiple accounts in a single run. Perfect for influencer analysis, competitor audience research, lead generation, and socia...
Pricing
Pay per usage
Rating
0.0
(0)
Developer

Ricardo Akiyoshi
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
7 hours ago
Last modified
Categories
Share
Twitter/X Followers Scraper
Scrape follower and following lists from any public Twitter/X account. Extract usernames, display names, bios, follower counts, verified status, profile pictures, and more.
What does this actor do?
This actor scrapes Twitter/X profiles and their follower/following lists using Nitter mirrors (open-source Twitter front-ends). No Twitter API key or authentication required.
For each target handle, the actor:
- Scrapes the profile page (display name, bio, stats, verified status, join date)
- Paginates through the follower list and extracts each follower's data
- Optionally paginates through the following list too
Data extracted per follower
| Field | Description |
|---|---|
username | Twitter handle (without @) |
displayName | Full display name |
bio | Profile bio/description |
followerCount | Number of followers |
followingCount | Number of accounts they follow |
verified | Whether the account has a verified badge |
profilePicUrl | Profile picture URL |
joinDate | Account creation date |
listType | "profile", "followers", or "following" |
targetHandle | Which handle this entry was scraped from |
Use Cases
Influencer Analysis
Analyze an influencer's audience composition before committing to a sponsorship deal. Identify fake followers, engagement potential, and audience demographics.
Competitor Audience Research
Map out your competitors' follower bases to find shared audiences, untapped segments, and opportunities for targeted outreach.
Lead Generation
Extract follower lists from industry thought leaders to build targeted prospect lists. Filter by bio keywords (e.g., "CEO", "founder", "marketing") to find decision-makers.
Social Intelligence
Monitor who follows key accounts in your industry. Track audience growth and shifts over time by running periodic scrapes.
Network Mapping
Understand the social graph between key players in any niche. Identify mutual connections, community clusters, and bridge accounts.
Talent Sourcing
Find potential candidates by scraping followers of industry leaders, conference accounts, or community hubs in your target field.
Input Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
handles | Array of strings | Required | Twitter/X usernames to scrape (without @) |
maxFollowers | Integer | 100 | Max followers to scrape per handle |
scrapeFollowing | Boolean | false | Also scrape the "following" list |
maxConcurrency | Integer | 2 | Concurrent requests (keep low) |
proxyConfiguration | Object | None | Apify proxy settings |
Example Input
{"handles": ["openai", "ycombinator", "paulg"],"maxFollowers": 200,"scrapeFollowing": true,"maxConcurrency": 2}
How It Works
The actor uses a multi-strategy approach:
-
Nitter Instances (primary) — Probes 15+ public Nitter mirrors to find working instances, then scrapes follower/following pages as plain HTML. Handles pagination, rate limits, and automatic failover between instances.
-
Twitter Syndication API (fallback) — If all Nitter instances are down, attempts to retrieve basic profile data from Twitter's public syndication endpoint.
-
Instance Rotation — Distributes requests across multiple Nitter instances and automatically retries failed requests on alternative instances.
Rate Limit Handling
- Conservative request pacing (20 requests/minute max)
- Automatic detection of rate limit responses
- Failover to alternative Nitter instances when blocked
- Randomized User-Agent rotation (12 distinct browser signatures)
Output Example
[{"username": "openai","displayName": "OpenAI","bio": "Creating safe AGI that benefits all of humanity.","followerCount": 4200000,"followingCount": 120,"tweetCount": 3500,"verified": true,"profilePicUrl": "https://pbs.twimg.com/...","joinDate": "December 2015","location": "San Francisco","website": "https://openai.com","listType": "profile","targetHandle": "openai","source": "nitter:nitter.net","scrapedAt": "2026-03-01T12:00:00.000Z"},{"username": "johndoe","displayName": "John Doe","bio": "AI researcher at Stanford. Previously Google Brain.","followerCount": 15200,"followingCount": 890,"verified": false,"profilePicUrl": null,"joinDate": null,"listType": "followers","targetHandle": "openai","source": "nitter:nitter.net","scrapedAt": "2026-03-01T12:00:05.000Z"}]
Tips for Best Results
- Start small: Test with
maxFollowers: 20first to verify the actor works with current Nitter instances. - Use proxies: For large scrapes or multiple handles, enable Apify proxy configuration to rotate IPs.
- Keep concurrency low: Nitter instances are community-run and rate-limit aggressively. Keep
maxConcurrencyat 1-3. - Nitter availability: Nitter instances go up and down frequently. The actor probes 15 instances automatically, but if all fail, try again later.
- Handle limits: Accounts with private/protected profiles cannot be scraped.
- Pagination: Nitter pages show ~20 followers per page. Scraping 1,000 followers requires ~50 page loads.
Limitations
- Depends on Nitter instance availability (community-run, may go offline)
- Rate limits vary by Nitter instance (typically 100-300 requests/hour)
- Private/protected accounts cannot be scraped
- Follower counts in individual entries may not always be available (depends on Nitter instance)
- Very large accounts (millions of followers) may take significant time to paginate
Cost
This actor uses the pay-per-event (PPE) pricing model:
- 1 event per profile scraped
- 1 event per follower/following entry scraped
Support
Found a bug or have a feature request? Open an issue on GitHub or contact us at ricardo.yudi@gmail.com.