Single Tweet Scraper — Tweet Data by URL or ID, No Login
Pricing
from $0.30 / 1,000 tweet scrapeds
Single Tweet Scraper — Tweet Data by URL or ID, No Login
Look up single tweets by URL or tweet ID and get full tweet data — text, likes, retweets, replies, views, bookmarks, media, hashtags, plus the author's profile. Tweet lookup without login, cookies or API key; long-form posts are not truncated. Charged only for tweets actually returned.
Pricing
from $0.30 / 1,000 tweet scrapeds
Rating
0.0
(0)
Developer
Nicholas Cheng
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
9 hours ago
Last modified
Categories
Share
Single Tweet Scraper
Give it tweet links or tweet IDs, get one full record per tweet — with the author's profile embedded. No login, no cookies, no API key. Paste https://x.com/NASA/status/2090487779268407625, a twitter.com/…/status/… link, or the bare numeric ID.
You are charged only for tweets that actually came back. A deleted, protected, or withheld tweet produces an explanatory row and costs nothing.
| Input | Tweet URLs or numeric tweet IDs |
| Output | One row per tweet: text, all engagement counters, media, links, hashtags, mentions, author profile |
| Price | $0.005 per tweet — the same on every Apify plan |
| Timelines | Not fetched. This Actor is the single-tweet mode of the X (Twitter) Profile & Tweets Scraper; use that one to pull an account's recent tweets |
What you get
Real output for the NASA tweet above:
{"itemType": "tweet","lookedUp": true,"type": "tweet","id": "2090487779268407625","url": "https://x.com/NASA/status/2090487779268407625","text": "Paint with all the colors of the (stellar) wind 🎨 …","isLongform": false,"lang": "en","createdAt": "2026-08-20T16:05:03.000Z","replyCount": 214, "retweetCount": 1032, "quoteCount": 61,"likeCount": 6940, "bookmarkCount": 312, "viewCount": 1661487,"isRetweet": false, "isQuote": false, "isReply": false,"hashtags": [], "cashtags": [], "mentions": [],"urls": ["https://science.nasa.gov/…"],"media": [{ "type": "photo", "url": "https://pbs.twimg.com/media/….jpg", "altText": "…" }],"authorUserName": "NASA","author": { "userId": "11348282", "userName": "NASA", "followers": 92359333, "verifiedType": "Government", "…": "…" }}
- Full text. Long-form posts are returned whole, not cut at 280 characters (
isLongform: true). - All six counters: replies, reposts, quotes, likes, bookmarks, views.
- Lineage for reposts and quote tweets:
retweetedTweetId,quotedTweetId,quotedText. - Author profile embedded (40+ fields including
verifiedType,verifiedSince,createdAt). Turn it off withincludeAuthorProfile: falsefor a slimmer row.
Input
{"tweetUrls": ["https://x.com/NASA/status/2090487779268407625","https://twitter.com/NASA/status/2092744659667673582","2093063226351136958"]}
| Option | Default | Notes |
|---|---|---|
tweetUrls | — | x.com or twitter.com status links (including /i/web/status/…), or bare numeric IDs. De-duplicated |
includeAuthorProfile | true | Embed the author's full profile in each row |
maxItems | 0 | Hard cap on rows for the run |
Pricing
$0.005 per tweet, on every Apify plan — Free, Bronze, Silver, Gold, Platinum, Diamond. Check the Pricing tab: all six columns are identical. The price a listing advertises in its title is not always the price a free-plan run pays; here it is.
One request, one record, one charge — the same price as an account lookup, because it is the same amount of work.
What you are not charged for
| What happens here | |
|---|---|
| Tweets that are gone | Deleted, protected, withheld, or mistyped IDs produce one row marked chargedForThis: false. Nothing is billed. |
| Empty or placeholder rows | If the tweet did not come back, no tweet row is written. |
| The free plan | Same code path, same fields. No demo mode, no row cap, no nulls in place of data. |
What this Actor cannot do
- No reply threads, likers, or quote-tweet lists for a tweet. X does not expose those to logged-out clients, and this Actor deliberately does not use logged-in accounts to get around that.
- No keyword or hashtag search. Same restriction.
- No timelines. To pull an account's recent tweets — with engagement filters and incremental runs — use the X (Twitter) Profile & Tweets Scraper.
How it stays working
X rotates the internal query identifiers its own web app uses. This Actor reads them from X's live frontend at runtime and caches them for six hours; if a call is rejected it re-reads them and retries once. No login is used anywhere, which is why it is not exposed to the account-ban failures that take login-based scrapers offline.
Integrating
curl -X POST "https://api.apify.com/v2/acts/nick.cheng~single-tweet-scraper/run-sync-get-dataset-items?token=<TOKEN>" \-H 'Content-Type: application/json' \-d '{"tweetUrls":["https://x.com/NASA/status/2090487779268407625"]}'
Official clients exist for JavaScript and Python, and results export as JSON, CSV, or Excel.