X (Twitter) Video Downloader | $0.00015/Media | Pay-Per-Result avatar

X (Twitter) Video Downloader | $0.00015/Media | Pay-Per-Result

Pricing

from $0.00015 / media rows

Go to Apify Store
X (Twitter) Video Downloader | $0.00015/Media | Pay-Per-Result

X (Twitter) Video Downloader | $0.00015/Media | Pay-Per-Result

Twitter video downloader & image downloader. Download X videos, photos & GIFs from $0.00015 per delivered media row. Get MP4 links or stored files from posts or profiles, with subtitles. No X login. World's fastest & cheapest X (Twitter) scraper service. Not affiliated with X Corp.

Pricing

from $0.00015 / media rows

Rating

5.0

(2)

Developer

Xquik

Xquik

Maintained by Community

Actor stats

1

Bookmarked

11

Total users

6

Monthly active users

7 hours ago

Last modified

Share

English · Español · Türkçe · 简体中文 · 日本語 · 한국어 · Deutsch · Français · Italiano

Framer connects Xquik MCP to coding agents
Watch how Framer uses Xquik scrapers with Claude Code, Codex, Cursor & more, from 6:07.

Xquik is the world's fastest & cheapest X (Twitter) scraper service with the most complete X data. Xquik's X Media Downloader extracts or stores photos, videos & GIFs from posts & profiles. Most other Apify Actors charge before filtering or deduplicating. Xquik charges only for delivered, unique, filter-matching results.

Download Twitter media or extract direct URLs from posts & profile Media tabs. You pay $0.00015 per delivered row, & Apify bills platform usage separately. You need no X API key or login.

Xquik is an independent third-party service. Not affiliated with X Corp. "Twitter" and "X" are trademarks of X Corp.

Media files & metadata

  • Media from posts, profiles, replies, quotes & threads in bulk.
  • Photos, GIFs, MP4 qualities & HLS playlists.
  • Subtitles of video posts, with timed cues & full text.
  • Metadata, direct URLs & available filters.
  • File storage within run limits, with output links.
  • Duplicate removal before billing.

How to download X media

New to Apify? Create a free account first. The free plan needs no credit card & gives $5 to spend each month. At $0.00015 per media row, $5 pays for up to 33,000 media rows before platform usage. Then come back here & press Try for free.

  1. Open Xquik's X Media Downloader in Apify Console.
  2. Add handles to twitterHandles or post URLs to startUrls.
  3. Pick sources & turn on downloadMedia to store files.
  4. Set maxItems to cap delivered rows, then click Start.
  5. Download the dataset as JSON, CSV or Excel, or use the Apify API.

startUrls & profileUrls take each URL as a plain string or as a { "url": "..." } object.

{ "profileUrls": ["https://x.com/nasa", { "url": "https://x.com/OpenAI" }] }

profileUrls & tweetIds work as targets too.

Input

{
"twitterHandles": ["OpenAI"],
"sources": ["profiles"],
"downloadMedia": true,
"maxItems": 10000
}

One target is enough. Turn on downloadMedia to store files. Files above 80 MB stay URL-only.

Turn on includeSubtitles to get the subtitles of posts in tweetIds or startUrls. Each post whose video has captions adds 1 row with every caption track. A post without video or captions adds no row & costs nothing.

{ "tweetIds": ["2104593672624886205"], "includeSubtitles": true }

Small runs that go well skip run-report & save Apify usage. Turn on alwaysSaveRunRecords to write it on every run.

Output

Rows include availability, metadata & action URLs. Stored rows add storedMediaUrl & downloadStatus: "stored". Stored Media Files opens the stored records.

Examples use sample values. Results reflect live data. A photo row looks like this.

{
"type": "photo",
"width": 1200,
"height": 675,
"altText": "Sample alt text",
"sourceTarget": "OpenAI"
}

A subtitles row has resultType: "subtitles" & its caption tracks in tracks.

{
"resultType": "subtitles",
"tweetId": "2104593672624886205",
"tracks": [
{
"language": "en",
"name": "Sample captions.srt",
"autoGenerated": false,
"url": "https://video.twimg.com/subtitles/sample.vtt",
"text": "Sample caption text.",
"cues": [{ "startMs": 0, "endMs": 3370, "text": "Sample caption text." }]
}
]
}

autoGenerated is true when X transcribed the audio itself. url links the track's WebVTT file. Media filters leave subtitles rows in. With downloadMedia on, a subtitles row has downloadStatus: "url-only".

Output columns

8 inputs shape each row after the run reads it. They run no code & change no price.

FieldWhat it does
fieldsKeep only these fields, in the order & spelling you write
omitFieldsDrop these fields & keep the rest
renameFieldsMove a field to a column with a new name
flattenTurn each nested object into top-level columns
fillMissingFieldsFill a kept field a row lacks with null. On by default
joinFieldsTurn each of these lists into 1 text value
joinSeparatorText between joined items. The default is a comma & a space
constantFieldsAdd a column with the same text on every row
  • Use a dot for a field inside an object. Case & underscores do not matter.
  • Every row keeps its id.
  • With fields, a field a row lacks arrives as null. Every row then has the same columns.
  • A wrong field name stops the run before it reads & charges nothing.
  • If names cannot be checked, the run reads on & lists unseen names last.
  • The run ignores a map function or jq filter written for another Actor.

How much does it cost to download X media?

Every Apify plan costs $0.00015 per delivered row. Apify bills your platform usage separately.

For more volume, pick an Apify plan with more prepaid usage.

  • One charge per delivered data row. Diagnostics are free in diagnostics.
  • A subtitles row is 1 row, whatever its track count.
  • No start, URL, file or quality fee.
  • Deduplication runs before billing.

Limits & recovery

Interrupted extraction writes a free partial diagnostic. Available results stay intact. Read availableResults, failedTargets, retryable & nextAction before you retry. A successful Actor exit confirms delivery, not complete extraction.

The run status names every cause of an early stop. stopCauses lists each cause with its own message, retryable & nextAction. The causes are target_not_found, target_suspended, target_failed, pagination_safety_limit, reply_reach & deadline_reached. target_suspended names the accounts X suspended. reply_reach means X served only part of a reply thread. A missing or suspended target joins the list only when another cause stopped the run. The run is retryable when any cause is.

Every Xquik Actor shares the same extraction engine, filter-first billing & diagnostics. Pick the one that matches the data you need.

  • X Tweet Scraper scrapes tweets from searches, profile timelines, Lists & tweet IDs with 50+ filters & flat exports. Use it when you need tweet data without analysis. From $0.00015 per row.
  • X Profile Scraper scrapes profiles plus their posts, replies, media & followers from handles, IDs or URLs. Use it when you start from accounts rather than searches. From $0.00015 per row.
  • X Reply Scraper scrapes replies, comments & whole conversations under posts with 25+ filters. Use it when you need the discussion beneath tweets. From $0.00015 per row.
  • X Engagement Scraper scrapes replies, quotes, retweeters & threads for post URLs or IDs in bulk. Use it when you measure who engaged with posts. From $0.00015 per row.
  • X Quote Tweets Scraper scrapes the quote tweets of posts with text, media, counts, authors & 11 filters. Use it when you study who quoted posts & what they said. From $0.00015 per tweet.
  • X Follower Scraper scrapes followers, following, List members, subscribers & Community members as profile rows. Use it when you need audience or member lists. From $0.00015 per profile.
  • X User Search Scraper searches users by handle, bio & location with follower, verification, age & location filters. Use it when you build account lists from search. From $0.00015 per profile.
  • X Account Location Scraper checks where accounts are based with X's "Account based in" label, "connected via" & username changes. Use it when you vet where accounts are based. From $0.00015 per account.
  • X Email Scraper gets the emails, phones & links accounts publish on their profiles, from handles, followers or user searches. Use it when you need the emails profiles publish. From $0.00015 per profile.
  • X List Scraper scrapes List posts, members & followers from List URLs or IDs. Use it when a curated List defines your sources. From $0.00015 per row.
  • X Community Scraper scrapes Community info, posts, searches, members & moderators. Use it when your sources are X Communities. From $0.00015 per row.
  • X Space Scraper finds Spaces by keyword & reads their titles, states, times, listener counts, hosts & speakers. It also reads broadcasts by URL or ID. Use it when you track live audio & video on X. From $0.00015 per Space or broadcast.
  • X Trends Scraper scrapes real-time trends by location with rank, volume, query & WOEID. Use it when you track what is trending where. From $0.00015 per trend.
  • X Jobs Scraper scrapes X job listings by keyword, place, workplace, seniority & company, with salaries & apply links. Use it when you collect job openings posted on X. From $0.00015 per job.
  • X Article Scraper scrapes long-form X Articles as Markdown & text with covers, authors, dates & metrics. Use it when you need article bodies, not tweets. From $0.00015 per article.
  • X (Twitter) Brand Monitoring with AI Analysis tracks brand mentions with AI relevance, sentiment & customer-experience answers & compares runs. Use it when you watch a brand over time. From $0.0003 per analyzed tweet.
  • X Tweet Sentiment Analysis with AI labels attitude, intensity & sarcasm probability for every tweet with AI. Use it when you need general sentiment on any topic. From $0.0003 per analyzed tweet.
  • X (Twitter) Stock & Crypto AI Trading Signals labels bullish, bearish, neutral or mixed stance, content type, conviction & asset relevance with AI. Use it when you follow stocks, crypto or trading talk. From $0.0003 per analyzed tweet.
  • X (Twitter) News Monitor with AI Analysis labels news posts by format, source attribution & topic relevance with AI. Use it when you separate reporting from commentary. From $0.0003 per analyzed tweet.
  • X Tweet Classifier with AI Analysis answers your own category, score & yes/no questions for every tweet with AI. Use it when the preset analyses do not fit your labels. From $0.0003 per analyzed tweet.
  • X Tweet Viral Score Analyzer with AI estimates a Viral Score from 0 to 100 & a verdict for every tweet from 8 AI trait answers. Use it when you study why tweets spread or flop. From $0.0003 per analyzed tweet.

FAQ

Answers to common questions, then where to get help.

Do I need an X API key or login?

No. Xquik's X Media Downloader needs no X API key, login or credentials.

Xquik's X Media Downloader requests public X fields. Results can contain personal data. Confirm a lawful purpose & follow applicable privacy rules. Ask qualified counsel when uncertain.

Why did my run return no results?

Read the run status first. An empty run's status says to check your targets & filters. The free diagnostics output appears when something needs attention. Its stopCauses gives each cause a nextAction to follow. The run lists each input it cannot read & says how to fix it.

Can I use the API, schedules & integrations?

Yes. Choose from 50 public tasks or the Xquik REST API. The API tab has Python, JavaScript & cURL examples. Apify schedules run Xquik's X Media Downloader on a cron. Agents use Apify MCP. Use latest unless you need an older build.

Where do I get help?

Open an issue in the Issues tab with the run ID. Free diagnostics in the key-value store explain runs that need attention. A run that gets no row back says why in its status.

Can I get a custom solution?

Yes. Describe what you need in the Issues tab. Xquik also offers a dashboard, a REST API, an MCP server & webhooks. Find Xquik's website on its Apify profile.