Twitter/X Profile Scraper
Pricing
Pay per usage
Twitter/X Profile Scraper
Scrape Twitter/X profiles and tweets. Extract followers, following, tweet text, engagement metrics, media, and profile metadata.
Pricing
Pay per usage
Rating
0.0
(0)
Developer

Vhub Systems
Actor stats
0
Bookmarked
1
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Twitter Profile Scraper: Extract Tweets, Engagement Metrics & Analytics
Extract comprehensive Twitter/X profile data including tweets, engagement metrics, follower counts, and media attachments without requiring API keys or developer accounts.
What is Twitter Profile Scraper?
Twitter Profile Scraper is a powerful data extraction tool designed for marketers, researchers, and analysts who need detailed Twitter profile information and tweet-level engagement metrics. Unlike traditional Twitter scrapers that only capture basic text content, this actor provides structured data including views, likes, retweets, replies, quote counts, hashtags, mentions, and media URLs for every tweet.
This scraper is ideal for competitive intelligence, brand monitoring, influencer vetting, content performance analysis, and social media research. Track how competitors engage their audience, identify trending hashtags and mentions, analyze posting patterns, and measure real engagement rates without the complexity of the Twitter API. The tool works with both twitter.com and x.com URLs and automatically handles username extraction from profile links.
Built on public syndication endpoints, this scraper requires no Twitter Developer account, API keys, or authentication. Simply provide usernames or profile URLs, set your tweet limit, and receive clean JSON data ready for analysis in spreadsheets, databases, or analytics platforms. Perfect for agencies managing multiple clients, research teams collecting social media data, and businesses tracking brand mentions across Twitter.
Data Fields
| Field | Type | Description |
|---|---|---|
username | String | Twitter handle without @ symbol |
displayName | String | User's display name as shown on profile |
bio | String | Profile biography/description text |
followers | Integer | Number of followers |
following | Integer | Number of accounts followed |
tweetsCount | Integer | Total number of tweets posted |
favoritesCount | Integer | Total number of likes given by user |
verified | Boolean | Legacy Twitter verification status |
isBlueVerified | Boolean | Twitter Blue subscription status |
profileImageUrl | String | High-resolution profile image URL (400x400) |
profileBannerUrl | String | Profile banner/header image URL |
joinDate | String | Account creation date and time |
location | String | User-specified location |
url | String | Website link from profile |
profileUrl | String | Direct link to Twitter profile |
scrapedAt | String | ISO timestamp when data was collected |
tweets | Array | Array of tweet objects (see below) |
Tweet Object Fields
| Field | Type | Description |
|---|---|---|
id | String | Unique tweet ID |
text | String | Full tweet text content |
createdAt | String | Tweet publication date and time |
likes | Integer | Number of likes/favorites |
retweets | Integer | Number of retweets |
replies | Integer | Number of replies |
quotes | Integer | Number of quote tweets |
views | Integer | Tweet impression count (may be null) |
language | String | Detected language code (e.g., 'en', 'es') |
tweetUrl | String | Direct link to tweet |
isRetweet | Boolean | Whether this is a retweet |
isReply | Boolean | Whether this is a reply to another tweet |
hashtags | Array | List of hashtags with # symbol |
mentions | Array | List of mentioned users with @ symbol |
urls | Array | List of expanded URLs in tweet |
media | Array | List of media objects (photos, videos) |
Media Object Fields
| Field | Type | Description |
|---|---|---|
type | String | Media type (photo, video, animated_gif) |
url | String | Direct URL to media file |
expandedUrl | String | Full URL to media on Twitter |
Tutorial: How to Scrape Twitter Profiles in 7 Steps
Step 1: Find the Actor
Navigate to the Apify Store and search for "Twitter Profile Scraper" or access it directly from your saved actors. Click "Try for free" to add it to your account.
Step 2: Prepare Your Target List
Gather the Twitter usernames or profile URLs you want to scrape. You can provide usernames in multiple formats: plain handles (elonmusk), handles with @ symbol (@elonmusk), or full URLs (https://twitter.com/elonmusk or https://x.com/elonmusk).
Step 3: Configure Input Parameters
In the actor's input tab, paste your list of profiles. Set the maximum number of tweets per profile (default is 20, but you can increase for deeper analysis). Decide whether to include replies by toggling the "Include Replies" option.
Step 4: Start the Scraper
Click "Start" to begin extraction. The actor will process profiles sequentially with automatic retries for reliability. Processing time depends on the number of profiles and tweets requested.
Step 5: Monitor Progress
Watch the log output to see which profiles are being processed. You'll see real-time information about collected tweets and follower counts. If a profile is private, suspended, or doesn't exist, the actor will log a warning and continue.
Step 6: Access Your Data
Once complete, navigate to the "Storage" tab to access your dataset. Data is available in multiple formats: JSON for developers, CSV/Excel for spreadsheets, or HTML table for quick viewing in browser.
Step 7: Analyze and Export
Download your data or integrate it directly with Google Sheets, databases, or analytics tools using Apify's API. Use the structured fields to calculate engagement rates, identify top hashtags, map mention networks, or track content performance over time.
Input Parameters
| Parameter | Type | Required | Description | Default |
|---|---|---|---|---|
profiles | Array of Strings | Yes | List of Twitter usernames or profile URLs. Accepts handles with or without @, or full twitter.com/x.com URLs. | - |
maxTweets | Integer | No | Maximum number of tweets to extract per profile. Minimum: 0 (profile info only), Maximum: unlimited (limited by availability). | 20 |
includeReplies | Boolean | No | Whether to include replies in the extracted tweets. When false, only original tweets and retweets are collected. | false |
Example Input
{"profiles": ["elonmusk","https://x.com/OpenAI","@ycombinator","twitter.com/TechCrunch"],"maxTweets": 30,"includeReplies": false}
Example Output
{"username": "TechCrunch","displayName": "TechCrunch","bio": "Reporting on the business of technology, startups, venture capital funding, and Silicon Valley","followers": 12500000,"following": 1850,"tweetsCount": 185000,"favoritesCount": 8500,"verified": true,"isBlueVerified": false,"profileImageUrl": "https://pbs.twimg.com/profile_images/1234567890/techcrunch_400x400.jpg","profileBannerUrl": "https://pbs.twimg.com/profile_banners/816653/1640000000","joinDate": "Mon Jun 26 03:30:00 +0000 2007","location": "San Francisco, CA","url": "https://techcrunch.com","profileUrl": "https://x.com/TechCrunch","scrapedAt": "2026-02-15T10:30:45.123Z","tweets": [{"id": "1890234567890123456","text": "Breaking: AI startup raises $150M Series C led by Sequoia Capital. The company's revenue grew 300% YoY. Full story: https://tcrn.ch/example #AI #startup","createdAt": "Sat Feb 15 08:15:00 +0000 2026","likes": 3200,"retweets": 890,"replies": 156,"quotes": 78,"views": 450000,"language": "en","tweetUrl": "https://x.com/TechCrunch/status/1890234567890123456","isRetweet": false,"isReply": false,"hashtags": ["#AI","#startup"],"mentions": [],"urls": ["https://techcrunch.com/2026/02/15/ai-startup-series-c"],"media": [{"type": "photo","url": "https://pbs.twimg.com/media/AbCdEfGhIjKl.jpg","expandedUrl": "https://x.com/TechCrunch/status/1890234567890123456/photo/1"}]},{"id": "1890123456789012345","text": "Tesla announces new Gigafactory in Texas with 10,000+ jobs planned. Production starts Q4 2026.","createdAt": "Sat Feb 15 06:30:00 +0000 2026","likes": 5600,"retweets": 1450,"replies": 320,"quotes": 145,"views": 780000,"language": "en","tweetUrl": "https://x.com/TechCrunch/status/1890123456789012345","isRetweet": false,"isReply": false,"hashtags": [],"mentions": ["@Tesla","@elonmusk"],"urls": [],"media": []},{"id": "1890012345678901234","text": "Google's new AI model shows human-level performance on coding benchmarks. Details: https://tcrn.ch/google-ai #Google #ArtificialIntelligence","createdAt": "Fri Feb 14 22:45:00 +0000 2026","likes": 2100,"retweets": 560,"replies": 89,"quotes": 42,"views": 320000,"language": "en","tweetUrl": "https://x.com/TechCrunch/status/1890012345678901234","isRetweet": false,"isReply": false,"hashtags": ["#Google","#ArtificialIntelligence"],"mentions": [],"urls": ["https://techcrunch.com/2026/02/14/google-ai-coding"],"media": [{"type": "photo","url": "https://pbs.twimg.com/media/XyZwVuTsRqPo.jpg","expandedUrl": "https://x.com/TechCrunch/status/1890012345678901234/photo/1"}]}]}
Legal and Ethical Considerations
This actor extracts publicly available data from Twitter profiles using the platform's public syndication endpoints. The data collected is identical to what any visitor can see when browsing Twitter without logging in. However, users should ensure compliance with Twitter's Terms of Service and applicable data protection regulations when collecting and using this data.
When using this scraper, consider the privacy and consent of Twitter users whose data you collect. Avoid scraping private or protected accounts, and ensure your use case aligns with ethical data collection practices. If you plan to publish, analyze, or share the scraped data, review GDPR, CCPA, and other relevant privacy laws in your jurisdiction. This tool is designed for legitimate purposes such as market research, competitive analysis, and academic studies, not for spam, harassment, or unauthorized commercial use of personal information.
Pricing
This actor runs on the Apify platform with consumption-based pricing. Scraping is highly efficient due to the use of lightweight HTTP requests to public syndication endpoints rather than browser automation.
Typical Costs:
- Scraping 1 profile with 20 tweets: ~0.001 compute units ($0.00025)
- Scraping 100 profiles with 20 tweets each: ~0.1 compute units ($0.025)
- Scraping 1,000 profiles with 50 tweets each: ~1.5 compute units ($0.375)
Apify provides 5 USD free credit monthly for personal accounts, which covers approximately 20,000 profiles with 20 tweets each. Costs scale linearly with the number of profiles and tweets requested. No proxy costs are incurred as this actor uses public endpoints without rate limiting.
Frequently Asked Questions
Q: Do I need a Twitter API key or developer account?
No. This actor uses Twitter's public syndication endpoints that are accessible without authentication. You don't need any API keys, Twitter Developer account, or login credentials.
Q: Can I scrape private or protected Twitter accounts?
No. This actor only accesses publicly available profile data. If an account is private, protected, or suspended, the actor will log a warning and skip it. You'll receive profile info and tweets only for public accounts.
Q: How many tweets can I extract per profile?
You can set any number using the maxTweets parameter. However, the syndication endpoint typically provides access to the most recent 100-200 tweets per profile. For historical tweet archives, you may need to use Twitter's official API.
Q: What's the difference between 'verified' and 'isBlueVerified'?
verified indicates legacy Twitter verification (the old blue checkmark given to notable accounts). isBlueVerified indicates whether the account has a Twitter Blue subscription (the new paid verification). An account can have one, both, or neither.
Q: Can I scrape tweet replies and conversations?
By default, replies are excluded to focus on original content. Set includeReplies: true in the input to include replies. Note that only direct replies from the profile owner are included, not entire conversation threads from other users.
Related Actors
Explore more social media scrapers by lanky_quantifier:
- Instagram Profile Scraper - Extract Instagram posts, follower counts, engagement metrics, and hashtags from public profiles
- LinkedIn Company Scraper - Collect company information, employee counts, job postings, and follower data from LinkedIn
- YouTube Channel Scraper - Scrape video metadata, view counts, subscriber numbers, and comment data from YouTube channels
- Facebook Page Scraper - Extract posts, likes, shares, and page information from public Facebook pages
- TikTok Profile Scraper - Gather video data, follower metrics, and engagement analytics from TikTok creators
Need help or have questions? Open an issue in the actor's GitHub repository or contact support through the Apify platform.