Twitter / X Scraper Goat avatar

Twitter / X Scraper Goat

Pricing

Pay per usage

Go to Apify Store
Twitter / X Scraper Goat

Twitter / X Scraper Goat

All-in-one Twitter/X scraper. One run gives you profile metadata, recent tweets, media URLs, and engagement counts for every handle. No API key, no login.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Goutam Soni

Goutam Soni

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

14 hours ago

Last modified

Categories

Share

Twitter / X Scraper Goat - Profile + Tweets + Media in One Run

The all-in-one Twitter / X scraper. Pass a list of usernames; get one clean record per user containing full profile metadata, recent tweets, media URLs, and engagement counts. No Twitter / X API key, no login, no per-run start fee. Built for spreadsheets, CRMs, dashboards, and AI / NLP pipelines.

What this Twitter scraper does

For each username, the actor returns one normalised record containing the full profile object plus recent tweets with media and engagement counts. All records share a single ordered schema.

Perfect for lead generation, audience research, influencer outreach, content / sentiment pipelines, brand monitoring, archive projects, and competitor analysis.

Why use this all-in-one Twitter scraper

  • One actor, one run, one record per user with both profile + tweets.
  • No Twitter / X API key required.
  • No login. Public profiles only.
  • Multi-tier resilient fetch so a single upstream blip never breaks your run.
  • Media URLs included for every tweet that has media (photos, video, animated GIF).
  • Exact engagement counts - likes, retweets, replies, quotes, views.
  • Residential proxy rotation built in.

What data you get per user

{
"ok": true,
"username": "elonmusk",
"profile": {
"id": "44196397",
"username": "elonmusk",
"name": "Example User",
"description": "Example bio text",
"location": "Austin, Texas",
"url": "https://example.com",
"created_at": "2009-06-02T20:12:29.000Z",
"verified": true,
"verified_type": "business",
"protected": false,
"profile_image_url": "https://pbs.twimg.com/profile_images/.../avatar.jpg",
"profile_banner_url": "https://pbs.twimg.com/profile_banners/.../1500x500",
"metrics": {
"followers": 240100000,
"following": 1348,
"tweets": 103545,
"listed": 145000,
"likes": 231653,
"media": 4517
}
},
"tweets": [
{
"id": "2061625841298317639",
"url": "https://twitter.com/elonmusk/status/2061625841298317639",
"text": "Outrageous double-standard!",
"created_at": "2026-06-02T01:47:00.000Z",
"lang": "en",
"is_reply": false,
"is_retweet": false,
"metrics": { "likes": 130300, "retweets": 15800, "replies": 3100, "quotes": 0, "views": 6300000 },
"media": [{ "type": "photo", "url": "https://pbs.twimg.com/media/HJwx5MvW0AASf35.jpg", "preview_url": "...", "alt": null }]
}
],
"scrapedAt": "2026-06-02T11:30:00.000Z"
}

How to use the Twitter Scraper

  1. Click Try for free on the actor page.
  2. Enter the usernames to scrape.
  3. Set Max tweets per user (default 20). Set to 0 if you only want the profile.
  4. Click Save & Start. Download in JSON, CSV, Excel, XML, or HTML.

Top use cases

  • Lead generation + content audit in one pass - enrich a list of handles with bios, follower counts, and last 20 tweets.
  • Influencer outreach - filter by follower count + post recency for outreach lists.
  • Sentiment / brand monitoring - feed downstream NLP with both profile and tweets per account.
  • Competitor analysis - track what your competitors are saying alongside their audience size.
  • CRM enrichment - one row per contact handle with Twitter footprint.
  • AI / NLP training data - clean structured input for fine-tuning or classification.

Pricing

Pay-per-event. No per-run start fee. Failed lookups are never billed.

EventPrice
Per profile returned$0.005
Per tweet returned$0.001

Example: 50 handles with 20 tweets each = $0.005 × 50 + $0.001 × 1000 = $1.25. Apify's $5 platform free credit applies on first use.

Integrations

Apify API

$curl "https://api.apify.com/v2/datasets/{DATASET_ID}/items?format=json"

Python

from apify_client import ApifyClient
client = ApifyClient("YOUR_API_TOKEN")
run = client.actor("goat255/twitter-scraper-goat").call(run_input={
"usernames": ["NASA", "OpenAI"],
"maxTweetsPerUser": 20,
})
for r in client.dataset(run["defaultDatasetId"]).iterate_items():
p = r["profile"]
print(f"@{p['username']:15} {p['metrics']['followers']:>12,} tweets={len(r['tweets'])}")

JavaScript / Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });
const run = await client.actor('goat255/twitter-scraper-goat').call({
usernames: ['jack'],
maxTweetsPerUser: 50,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach(r => console.log(`@${r.username}: ${r.profile.metrics.followers} followers, ${r.tweets.length} tweets`));

No-code

Send results to Google Sheets, Slack, Zapier, Make, Amazon S3, HubSpot, or any webhook via Apify Integrations.

FAQ

Do I need a Twitter / X API key?

No. Public profiles only, no developer account required.

Why use this instead of the separate profile and tweet actors?

This actor is the right choice when you need both in one place per handle - one Apify run, one dataset row per account, paired profile + tweets. If you only need one or the other, the dedicated Twitter / X Profile Scraper or Twitter / X Tweet Scraper are cheaper per result.

What if a profile is private or suspended?

The actor returns ok: false with an error field. You are not billed for failed lookups.

Are the follower counts exact?

Yes - exact integer follower / following / tweet / listed / favourites / media counts.

Can I export to CSV / Google Sheets / Excel?

Yes - JSON / CSV / Excel / XML / HTML all supported, plus native integrations.

Support

Found a missing field or a bug? Open an issue on the actor page. Reviews are read and replied to.