Twitter Profile Scraper avatar

Twitter Profile Scraper

Pricing

from $25.00 / 1,000 results

Go to Apify Store
Twitter Profile Scraper

Twitter Profile Scraper

Scrape any Twitter/X profile without login or API key. Get followers, bio, location, website, verification status and email from bio. Optionally fetch recent tweets with likes, retweets, views and engagement metrics. Bulk input, language filter, CSV/JSON export.

Pricing

from $25.00 / 1,000 results

Rating

0.0

(0)

Developer

Yuliia Kulakova

Yuliia Kulakova

Maintained by Community

Actor stats

0

Bookmarked

15

Total users

4

Monthly active users

20 days ago

Last modified

Share

X / Twitter Profile Scraper

X / Twitter Profile Scraper

Get any Twitter/X profile data in seconds — no login, no API key.

Drop in a list of handles and get back followers, bio, location, website, verification status, list and media counts — and optionally their recent tweets with full engagement metrics. Works on any public account.


Who uses this

Sales & lead generation — Build targeted outreach lists with follower counts, bios, websites and profile data for hundreds of prospects in one run.

Market research — Track competitors, monitor influencers, benchmark engagement. Know exactly what's working in your niche.

Recruitment — Find and qualify candidates by their Twitter presence, follower count, and what they tweet about.

PR & media — Instantly pull journalist and creator profiles before outreach. See reach, activity, and posting history without manual research.

Data & analytics — Feed clean, structured Twitter data into your dashboards, CRMs, or AI pipelines.


What you get

Profile data

FieldDescription
idNumeric account ID (stays the same even if the handle changes)
usernameTwitter handle
displayNameFull name
bioProfile description
emailEmail address, if the account wrote one into its bio — many don't, so expect this to be empty for most profiles
locationLocation as shown on profile
websiteWebsite URL
followerCountNumber of followers
followingCountNumber following
tweetCountTotal tweets posted
mediaCountTweets containing photos or video
listedCountHow many public lists include this account
likeCountTotal likes given
verifiedLegacy verified badge
isBlueVerifiedX Premium checkmark
isProtectedPrivate account flag
joinDateWhen the account was created
profileImageUrlFull-size profile photo
bannerUrlBanner image
pinnedTweetIdID of the pinned tweet, if the account has one
twitterUrlDirect link to profile

Tweet data (when maxTweetsPerUser > 0)

FieldDescription
idTweet ID
textClean tweet text
fullTextOriginal text including the trailing t.co links
createdAtDate posted
likeCountLikes
retweetCountRetweets
replyCountReplies
quoteCountQuote tweets
viewCountImpressions / views
bookmarkCountBookmarks
languageDetected language
isRetweetIs this a retweet?
isReplyIs this a reply?
isQuoteIs this a quote tweet?
hashtagsList of hashtags used
mentionsMentioned usernames
urlsExpanded URLs in tweet
mediaPhotos and videos with direct URLs
tweetUrlDirect link to the tweet
conversationIdThread ID — tweets sharing it belong to the same thread

Input

FieldTypeDescription
handlesarrayAccepts any format: elonmusk, @nasa, https://x.com/openai
profileUrlsarrayFull profile URLs
maxTweetsPerUserintegerTweets to fetch per profile. 0 = profile only (default). Max: 500
includeRetweetsbooleanInclude retweets in results. Default: true
tweetsLanguagestringOnly return tweets in this language. ISO 639-1 code: en, es, de, fr, ja...
deduplicationbooleanSkip duplicate profiles. Default: true

Example inputs

Profile data only — fastest:

{
"handles": ["elonmusk", "sama", "ycombinator", "openai"],
"maxTweetsPerUser": 0
}

Profile + recent tweets:

{
"handles": ["sundarpichai", "satyanadella"],
"maxTweetsPerUser": 50
}

English tweets only, no retweets:

{
"handles": ["NASA", "SpaceX"],
"maxTweetsPerUser": 100,
"includeRetweets": false,
"tweetsLanguage": "en"
}

Mix of formats — all work:

{
"handles": ["sama", "@BarackObama", "https://x.com/Apple", "https://twitter.com/Google"],
"maxTweetsPerUser": 0
}

Export formats

JSON · CSV · Excel · XML · HTML Table — download directly from Apify or access via API.


Pricing

$25.00 per 1,000 profiles — one profile is one result, and its tweets are included in that same result at no extra charge. A run also charges $0.01 to start.

RunProfilesTweetsEstimated cost
Quick lookup100~$0.26
Lead list1000~$2.51
With recent tweets10020 each~$2.51
Deep research50050 each~$12.51

Pay only for what you scrape — no subscriptions, no monthly fees.


Recent improvements (August 2026)

  • Retweet filtering now works as documented. X renamed the field that marks a retweet, which meant includeRetweets: false could still let retweets through. The Actor reads the current field, so the filter does what it says.
  • Two new fields: mediaCount and pinnedTweetId.
  • Resilient to X's changes. X is rolling out a new response format. The Actor understands both the current and the new one and switches over on its own, so runs keep working through the transition.

Found a problem? Please tell me

If a field comes back empty, a profile fails, or anything doesn't match what's described above — open an issue on the Issues tab. Including the input you ran and the run ID usually makes it possible to track down the cause quickly.

And if the Actor did what you needed, leaving a rating on this page helps other people find it. Both land in the same place, and both are read.