Social Video Downloader - TikTok, Instagram, Facebook, X avatar

Social Video Downloader - TikTok, Instagram, Facebook, X

Pricing

from $17.00 / 1,000 video downloadeds

Go to Apify Store
Social Video Downloader - TikTok, Instagram, Facebook, X

Social Video Downloader - TikTok, Instagram, Facebook, X

Download TikTok, Instagram Reels, Facebook, X (Twitter), Reddit and Vimeo videos by URL as MP4 up to 1080p or MP3/M4A audio, from 1,000+ sites. A direct download link per video with title, author, duration and file size. Bulk links, no login. Errors are free.

Pricing

from $17.00 / 1,000 video downloadeds

Rating

0.0

(0)

Developer

Scrapewise Data

Scrapewise Data

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

1

Monthly active users

7 hours ago

Last modified

Share

Social Video Downloader: TikTok, Instagram, Facebook, X (Twitter), Reddit

Social Video Downloader saves public videos as MP4 files from TikTok, Instagram reels and video posts, Facebook videos and reels, X (Twitter), Reddit, Vimeo, Dailymotion and 1,000+ other video pages. Paste the links, run, and get one row per video with a direct download link to the file, plus title, author, date, duration, resolution, codec and file size.

Need only the sound? Turn on Audio only and get M4A or MP3 files instead.

No login, no cookies, no browser extension. US$ 0.02 per file downloaded. Errors are free.

Social video downloader at a glance

  • Price: US$ 0.02 per video (or audio file) delivered, no run start fee, no monthly fee
  • Quality: best available (up to 1080p), or cap it at 1080p, 720p, 480p or 360p
  • Formats: MP4 video; M4A or MP3 audio
  • Download link: every row has downloadUrl, a public link to the file that opens in a browser, curl or any app
  • What we charge for: only files saved and delivered. Private, deleted, too-large, unsupported and duplicate links are free rows with an errorCode
  • Speed: a short TikTok or reel takes about 2 to 5 seconds; 3 videos are downloaded at the same time

What it fixes

  • Many links in one run, from different sites mixed together: TikTok, Instagram, Facebook, X, Reddit, Vimeo and more. One row per video.
  • Every site, not only TikTok. Each site in the table below is tested on Apify with real public links, and a link that fails gives a row that says why (LOGIN_REQUIRED, NOT_FOUND, NOT_A_VIDEO...) instead of an empty run marked as a success.
  • Best quality by default, the same from the Console and from the API: the highest resolution the site serves (up to 1080p), or the cap you set with quality. width, height and the codecs are on every row.
  • Duration always in seconds (durationSeconds), and file size in bytes, on every site.
  • No third-party download service in the middle, so no expiring API keys, no "invalid API key" or "server error" outages, and no garbled binary text in the output: the file is in the run's storage and downloadUrl opens it.
  • Share text works. Paste the whole text copied from an app ("Watch this! https://vm.tiktok.com/... #fyp"): the link inside is used.
  • Clear answers for what cannot be saved: stories and private videos need a login (LOGIN_REQUIRED), and YouTube, Spotify and other DRM or unsupported pages return a free row instead of a broken file.

Switching from another video downloader? Your existing input works

Paste the input you already use. These names and values are read as they are:

You may already sendRead as
postUrls, posts, videoUrls, tweetUrls, startUrls, link, videoUrl (text or { "url": ... })urls
quality: best, 1080, 720, 480, 360 (also 1080p, hd, max, low)quality
audioOnly; downloadMusic: true with downloadVideo: falseaudioOnly
maxItems, maxFileSizeMbsame names
{ "postUrls": ["https://www.instagram.com/reel/DaSz9gXgFla/"] }
{ "videoUrls": ["https://www.tiktok.com/@natgeo/video/7549930445127896333"], "quality": "720" }

Options for other services (cloud buckets, link expiry, cover images, transcription) are accepted and ignored: files always go to the run's key-value store with a signed downloadUrl.

What the video downloader returns

TikTok video downloaded on Apify on 2026-10-07 (quality: best):

{
"type": "video",
"url": "https://www.tiktok.com/@natgeo/video/7549930445127896333",
"pageUrl": "https://www.tiktok.com/@natgeo/video/7549930445127896333",
"platform": "TikTok",
"id": "7549930445127896333",
"title": "Ever wondered where you'd end up if you started digging a hole throug...",
"author": "natgeo",
"authorId": "6780344874811442181",
"authorUrl": "https://www.tiktok.com/@natgeo",
"publishedAt": "2025-09-14T13:07:07Z",
"durationSeconds": 74.4,
"width": 720,
"height": 1280,
"videoCodec": "hevc",
"audioCodec": "aac",
"fileSizeBytes": 3823392,
"format": "mp4",
"downloadUrl": "https://api.apify.com/v2/key-value-stores/qV9T0xMS4V1dpoVxw/records/tiktok-7549930445127896333.mp4?signature=1QpduAg0Bv4CRruUUsurm",
"fileKey": "tiktok-7549930445127896333.mp4",
"thumbnail": "https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/...",
"viewCount": 1400000,
"likeCount": 98900,
"commentCount": 727,
"errorCode": null
}

The row also carries description (the full caption), source (the link exactly as you gave it) and scrapedAt.

Supported video sites

Tested on Apify on 2026-10-06 and 2026-10-07 with real public links:

SiteLinks that workTested
TikToktiktok.com/@user/video/ID2 of 2, up to 1080p
Instagraminstagram.com/reel/CODE/, /p/CODE/, /tv/CODE/2 of 2, up to 1080p
Facebookfacebook.com/PAGE/videos/ID, /reel/ID, /watch/?v=ID3 of 3, up to 1080p
X (Twitter)x.com/user/status/ID, twitter.com/...2 of 2; a post with several videos gives one file per video
Redditreddit.com/r/.../comments/ID/..., redd.it/ID, v.redd.it/ID, share links2 of 2
Vimeovimeo.com/ID, player.vimeo.com/video/ID1 of 1, 720p
Dailymotiondailymotion.com/video/ID1 of 1
Other sitesany page the open-source yt-dlp reads (Twitch clips, Loom, Bilibili, SoundCloud, news sites and more)best effort

Single videos only for now: profile, channel and playlist links come back as a free NOT_A_SINGLE_VIDEO row.

Video downloader input

FieldWhat it does
urlsVideo links, one per line
qualitybest (default), 1080, 720, 480 or 360. Counts the short side, so 1080 means 1080x1920 for vertical videos
maxCompatibilityPrefer H.264 MP4, which plays in every player and editor, even at a lower resolution
audioOnlyDeliver the sound only, as audioFormat
audioFormatm4a (default, original AAC sound) or mp3 (192 kbps)
maxItemsStop after this many files; 0 = every link
maxFileSizeMbLarger files become a free MEDIA_TOO_LARGE row. Default 300, up to 2,000
proxyConfigurationUsed only when a site refuses the first try

Example: three short videos in H.264, up to 720p, ready for any video editor:

{
"urls": [
"https://www.tiktok.com/@natgeo/video/7549930445127896333",
"https://www.instagram.com/reel/DaSz9gXgFla/",
"https://x.com/historyinmemes/status/1790637656616943991"
],
"quality": "720",
"maxCompatibility": true
}

Example: the sound of a reel as MP3:

{
"urls": ["https://www.instagram.com/reel/DaSz9gXgFla/"],
"audioOnly": true,
"audioFormat": "mp3"
}

Where the downloaded videos are

Each file is saved in the key-value store of the run (Storage tab of the run, or the "Downloaded files" link in the Output tab), and downloadUrl points straight to it. The link is signed, so it opens without an Apify token: share it, send it to your app, or fetch it with curl -o video.mp4 "<downloadUrl>".

Files of a run are kept as long as your Apify plan keeps run storage (7 days on most plans). Copy them to your own storage if you need them longer, for example with an Apify integration or a webhook that reads the dataset.

Video guides from Apify: how to schedule an Actor and how to connect it to other apps.

Error codes (never charged)

errorCodeMeaning
NOT_FOUNDDeleted, private or wrong link
LOGIN_REQUIREDThe site shows this video only to logged-in users (private accounts, friends-only posts, age-restricted videos)
UNSUPPORTED_PLATFORMA YouTube link (see FAQ)
NOT_A_SINGLE_VIDEOA profile, channel or playlist link instead of a video
NOT_A_VIDEOA photo, carousel, text post or audio-only page (turn on audioOnly for audio pages)
MEDIA_TOO_LARGEThe file is above maxFileSizeMb; lower quality or raise the limit
NO_AUDIOaudioOnly was on and the video has no sound
DRM_PROTECTED, LIVE_STREAMProtected streams and live broadcasts cannot be saved
UNSUPPORTED_URL, INVALID_URL, INVALID_INPUTA link or value the Actor does not understand
BLOCKED, DOWNLOAD_FAILED, CONVERSION_FAILED, STORAGE_FAILEDThe site or the file did not cooperate after retries; run again
TIMEOUT_TOO_SHORTThe run timeout was too short to download even one video; raise it
NOT_REACHED, UNEXPECTEDThe run timeout or your spending limit arrived first, or something unforeseen broke; only that link is lost

Video downloader pricing

EventPrice
Video downloaded (MP4, or M4A/MP3 with Audio only)US$ 0.02
  • 100 videos cost US$ 2.00; 1,000 videos cost US$ 20.
  • An X post with two videos gives two files and costs US$ 0.04.
  • Errors, duplicates in the same run and links not reached before the timeout are free. There is no Apify compute bill on top.
  • On the Apify Free plan each run delivers up to 20 files.

Social video downloader FAQ

Can I download YouTube videos? No. YouTube refuses requests from cloud servers, so every YouTube download would need a paid residential proxy, and the price per video would be many times higher. YouTube links come back as a free UNSUPPORTED_PLATFORM row. If what you need is the words spoken in a YouTube video, YouTube Transcript returns its transcript.

Why not the official TikTok or Instagram APIs? Those APIs are built for apps acting on behalf of a logged-in account, need an approved developer app, and cover that account's own content; they do not hand you the MP4 of any public video by its link. This Actor takes public links from many sites in one run, with no account or app review, and returns a direct download link per video.

Does it remove the TikTok watermark? It downloads the video stream TikTok's web player uses, which normally has no watermark (the watermarked "save video" file is not used).

Why is my video VP9 or HEVC? Instagram, Facebook and TikTok often serve their highest resolution in these codecs. They play on phones and modern browsers. If your editor or player refuses them, turn on maxCompatibility for H.264.

Can it download private videos or stories? No. Only videos anyone can watch without logging in.

Can I give a profile and get all its videos? Not yet; paste the links of the videos you want.

How do I get the files into my own storage? Read the dataset (JSON, CSV or Excel from the Output tab or the API) and fetch each downloadUrl. Integrations such as Make, Zapier or n8n can do it after each run.

Download only content you own, content you have a license for, or content whose owner allows it. Videos on social networks are protected by copyright and by each platform's terms. You are responsible for how you use the files; this Actor only saves videos that are already public and does not bypass logins, paywalls or DRM.

Changelog

  • 2026-10-09: input from other video downloaders works as it is (see the table above); links inside pasted share text; quality names such as 1080p, hd or max.
  • 2026-10-07, 0.1: first release. TikTok, Instagram, Facebook, X, Reddit, Vimeo, Dailymotion and other yt-dlp pages; quality cap, H.264 option, M4A/MP3 audio, signed download links, free error rows.