Scweet Twitter/X Scraper
Pricing
from $0.25 / 1,000 tweets
Scweet Twitter/X Scraper
Scrape Twitter (X) tweets from search + profiles. Filter keywords/hashtags/users/dates. Export JSON/CSV/XLSX. Fast. $0.30/1k. Free plan.
Pricing
from $0.25 / 1,000 tweets
Rating
5.0
(4)
Developer

JEB
Actor stats
15
Bookmarked
654
Total users
54
Monthly active users
48 days
Issues response
3 days ago
Last modified
Categories
Share
Scweet is a Twitter/X scraper for search results and profile timelines. Extract tweets into JSON, CSV, and XLSX with a simple input model.
Run Actor on Apify | Open-Source Scweet Library
Quick Navigation
๐ฐ Pricing (Effective March 4, 2026)
You are billed for:
- Tweets collected
- A one-time run-start fee per run
| Plan | Tweet Price | Run-start |
|---|---|---|
| Free (No discount) | $3.00 / 1,000 tweets | $0.006 |
| Starter (Bronze) | $0.30 / 1,000 tweets | $0.0006 |
| Scale (Silver) | $0.28 / 1,000 tweets | $0.0006 |
| Business (Gold) | $0.25 / 1,000 tweets | $0.0006 |
Apify currently advertises monthly free platform credit (commonly $5/month, subject to change).
Why free pricing is higher:
- Free tier is for evaluation, not high-volume automation.
- Higher free pricing helps reduce abuse and repeated empty runs.
- It helps keep paid-tier pricing low for production users.
โก Quick Start
- Open Scweet on Apify.
- Paste one of the inputs below.
- Run the Actor.
- Export dataset results.
Input can be partial. Omitted fields use defaults.
๐ Minimal Twitter Search Input
{"source_mode": "search","search_query": "bitcoin lang:en from:elonmusk -filter:replies min_faves:100","since": "2025-02-17","until": "2026-02-19","search_sort": "Latest","max_items": 1000}
๐ค Minimal Twitter Profile Input
{"source_mode": "profiles","profile_urls": ["https://x.com/elonmusk","@apify"],"max_items": 1000}
๐ Combined Search + Profiles Input
{"source_mode": "auto","all_words": ["ai", "agent"],"since": "2025-02-17","profile_urls": ["https://x.com/apify"],"search_sort": "Top","max_items": 500}
โ Why Choose Scweet
- Actively maintained scraping logic for changing X/Twitter behavior.
- Reliability features: retries, account failover, task requeue, and deduplication.
- Flexible modes: search, profiles, or both in one run.
- Production-friendly export workflow in Apify datasets.
๐งฉ Inputs
Core fields
| Field | Type | Description |
|---|---|---|
source_mode | string | auto, search, or profiles (default: auto) |
search_query | string | Optional raw advanced query string : Twitter advanced search operators |
profile_urls | array[string] | Handles or profile URLs (@handle, x.com/<handle>, twitter.com/<handle>) |
max_items | integer | Global run target (default 1000) |
since, until | string | Date or UTC timestamp window |
search_sort | string | Top or Latest (default: Latest) |
Search builder fields (optional)
- Keywords:
all_words,any_words,exact_phrases,exclude_words - Hashtags/users:
hashtags_any,hashtags_exclude,from_users,to_users,mentioning_users - Filters:
tweet_type,verified_only,blue_verified_only,has_images,has_videos,has_links,has_mentions,has_hashtags,min_likes,min_replies,min_retweets - Location:
place,geocode,near,within - Advanced operator reference:
Important behavior
- Minimum requested run size is enforced: if
max_items < 100, it is auto-adjusted to100. max_itemsis global per run, not per profile.source_mode="search"ignores profile input.source_mode="profiles"ignores search input.- If both
sinceanduntilare missing, lookback defaults to:Top: 4 yearsLatest: 180 days
- Free plan guardrails (current):
1000tweets/day,10runs/day, minimum60sbetween runs.
๐ค Output
Results are stored in the Apify dataset for the run.
- Dataset output is deduplicated by tweet ID.
- Export formats: JSON, CSV, XLSX.
- Output includes source labeling fields (
source_root,source_value).
What each item contains
| Field | Description |
|---|---|
id | Tweet ID |
text | Tweet text |
handle | Author handle |
tweet_url | Tweet URL |
favorite_count, retweet_count, reply_count | Core engagement metrics |
source_root | search or profile_url |
source_value | Effective query or normalized profile URL |
user | Nested author object |
tweet | Nested tweet details object |
Full example output (generated sample values, not real user data)
[{"id": "tweet-1234567890123456789","sort_index": "1999999999999999999","entry_type": "TimelineTimelineItem","tweet_display_type": "Tweet","collected_at_utc": "2026-02-08T05:08:42.531721+00:00","source_root": "search","source_value": "(sample OR query) (#tag1 OR #tag2) lang:en since:2025-01-01 until:2025-01-31","user": {"id": "VXNlcjoxMjM0NTY3OA==","rest_id": "12345678","name": "Sample Account","verified": false,"verified_type": "None","is_blue_verified": true,"created_at": "Mon Jan 01 00:00:00 +0000 2020","description": "Sample profile description.","url": "https://t.co/example","urls": [{"url": "https://t.co/example","expanded_url": "https://example.com","display_url": "example.com"}],"favourites_count": 1200,"followers_count": 98000,"friends_count": 350,"listed_count": 45,"statuses_count": 15000,"location": "Sample City","media_count": 420,"handle": "sample_handle","profile_banner_url": "https://pbs.twimg.com/profile_banners/12345678/sample","profile_image_url_https": "https://pbs.twimg.com/profile_images/sample_normal.jpg"},"tweet": {"rest_id": "1234567890123456789","conversation_id": "1234567890123456789","in_reply_to_status_id": null,"in_reply_to_user_id": null,"quoted_status_id": null,"source": "<a href=\"https://example.com\" rel=\"nofollow\">Example App</a>","created_at": "Wed Jan 15 10:00:00 +0000 2025","mentions": ["example_user"],"tweet_url": "https://x.com/sample_handle/status/1234567890123456789","view_count": "150000","text": "This is a sample tweet text for documentation.","hashtags": ["tag1", "tag2"],"favorite_count": 1234,"quote_count": 56,"reply_count": 78,"retweet_count": 90,"bookmark_count": 12,"is_quote_status": false,"possibly_sensitive": false,"is_translatable": false,"edit_control": {"edit_tweet_ids": ["1234567890123456789"],"editable_until_msecs": "1762993800000","is_edit_eligible": true,"edits_remaining": "5"},"entities": {"hashtags": ["tag1", "tag2"],"mentions": ["example_user"],"urls": [{"url": "https://t.co/example","expanded_url": "https://example.com/page","display_url": "example.com/page"}],"symbols": [],"timestamps": []},"lang": "en","media": [{"id_str": "5555555555555555555","media_key": "3_5555555555555555555","type": "photo","media_url": "https://pbs.twimg.com/media/sample.jpg","expanded_url": "https://x.com/sample_handle/status/1234567890123456789/photo/1","display_url": "pic.x.com/sample","width": 1200,"height": 800}]}}]
โ๏ธ Responsible Usage
Use this Actor lawfully and ethically, and comply with applicable platform terms and local regulations.
๐ Data and Privacy Note
Run metadata (such as user ID, timestamps, input payload, and counters) may be stored for rate-limiting, support, and stability operations. This data is used internally and is not shared with third parties.
๐ค Support
For help with query tuning, limits, or workflow design, contact us on the Actor page or open an issue in the open-source repository.