Instagram Reels & Video Downloader — MP4, Likes & Captions avatar

Instagram Reels & Video Downloader — MP4, Likes & Captions

Pricing

$11.99/month + usage

Go to Apify Store
Instagram Reels & Video Downloader — MP4, Likes & Captions

Instagram Reels & Video Downloader — MP4, Likes & Captions

Download Instagram Reels, Videos and IGTV posts with full metadata. Extract captions, hashtags, likes, views, comments and direct MP4 download URLs. Supports single posts and bulk downloads. No account needed. RESIDENTIAL proxy included.

Pricing

$11.99/month + usage

Rating

0.0

(0)

Developer

Scrape Pilot

Scrape Pilot

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

📸 Instagram Reels & Video Downloader — Posts, Stories & IGTV

The fastest Instagram Reels & Video Downloader on Apify. Extract direct download URLs, captions, hashtags, engagement metrics, and full metadata from Instagram Reels, posts, stories, and IGTV — powered by yt. No login. Residential proxy ready. Bulk URL support.


📌 Table of Contents


🔍 What Is This Actor?

Instagram Reels & Video Downloader is a production-ready Apify actor that extracts direct video download URLs and complete metadata from any public Instagram content — Reels, feed posts, IGTV videos, and stories.

Powered by yt-, it handles Instagram's internal API negotiation automatically. Provide one or many Instagram URLs and receive back clean, structured records with everything you need: caption, hashtags, mentions, owner profile, engagement metrics (views, likes, comments), thumbnail, duration, and a ready-to-use direct download URL — all without logging in or running a browser.


🚀 Why Use This Instagram Reels & Video Downloader?

FeatureThis ActorBrowser ScrapersManual ToolsInstagram API
Download Instagram Reels & videos✅ Bulk⚠️ One-by-one✅ One-by-one❌ Restricted
No Instagram login required❌ OAuth needed
Hashtags & mentions extracted⚠️ Partial⚠️ Limited
Engagement metrics (views, likes)⚠️⚠️ Rate limited
Multiple format URLs returned✅ Up to 5
Reels + Posts + Stories + IGTV✅ All types⚠️⚠️❌ Stories restricted
Residential proxy built-in⚠️ Extra setup
Bulk URL processing

🎬 Supported Content Types

This Instagram Reels & Video Downloader auto-detects the content type from the URL:

TypeURL PatternSupported
Reels/reel/XXXXX
Feed Posts/p/XXXXX
IGTV/tv/XXXXX
Stories/stories/username/
Profile / Highlight pages/@username, /user/✅ (up to 50 items)

Note: Only publicly accessible content is supported. Private accounts are not supported.


🎯 Use Cases

📥 Content Archiving & Repurposing

  • Download Instagram Reels and posts for backup before they are deleted or accounts go private
  • Archive brand content, campaign videos, and influencer posts with full metadata
  • Preserve viral Reels with timestamps and engagement data for trend documentation

🤖 AI & Machine Learning Datasets

  • Build video datasets from Instagram Reels for short-form content AI models
  • Collect captions and hashtags for NLP, sentiment analysis, or hashtag trend research
  • Extract thumbnail images for visual style classification or computer vision training

📊 Social Media Analytics & Research

  • Scrape engagement data (views, likes, comments) from Reels for influencer benchmarking
  • Collect hashtag sets from niche content for social media strategy research
  • Monitor brand or competitor Instagram video performance over time

🛠️ Developer Integrations

  • Build a video pipeline that resolves Instagram Reel download URLs on demand
  • Automate content moderation workflows by extracting and analyzing Instagram video metadata
  • Integrate Instagram video metadata into dashboards or CMS platforms

📰 Journalism & Evidence Preservation

  • Download Instagram Reels and posts as evidence for investigative reporting
  • Archive public statements, event coverage, and news clips from Instagram
  • Preserve content that may be removed after publication of a report

⚙️ Input Parameters

{
"urls": [
"https://www.instagram.com/reel/ABC123xyz/",
"https://www.instagram.com/p/DEF456uvw/"
],
"url": "",
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
}
}
ParameterTypeDefaultDescription
urlsarray or string[]Instagram URLs to process — Reels, posts, stories, IGTV, or profile pages (newline-separated string also accepted)
urlstring""Single URL shortcut — automatically merged with urls
proxyConfigurationobjectResidentialApify proxy config — residential proxy is required for Instagram

Tip: Both url (singular) and urls (plural) are accepted. You can mix Reels, posts, stories, and IGTV URLs in a single run.


📋 Output Fields

Every record returned by this Instagram Reels & Video Downloader includes:

FieldTypeDescriptionExample
post_typestringContent type auto-detected from URL"reel", "post", "story", "igtv"
titlestringPost title (max 300 chars)"Golden hour in the Sahara 🌅"
captionstringFull post caption (max 2000 chars)"Nothing compares to this view..."
video_idstringInstagram internal video ID"Cx1a2B3cDe4"
post_urlstringCanonical URL of the post"https://www.instagram.com/reel/..."
owner_usernamestringCreator's Instagram username"natgeo"
owner_namestringCreator's display name"National Geographic"
owner_urlstringLink to creator's profile"https://www.instagram.com/natgeo/"
duration_secondsintegerVideo length in seconds28
durationstringHuman-readable duration"0:28"
thumbnailstringVideo thumbnail image URL"https://scontent.cdninstagram.com/..."
upload_datestringDate posted (YYYYMMDD)"20240315"
view_countintegerTotal video views4500000
like_countintegerTotal likes230000
comment_countintegerTotal comments18500
hashtagsarrayHashtags extracted from caption["#travel", "#sahara", "#desert"]
mentionsarray@mentions extracted from caption["@partner", "@brand"]
download_urlstringBest available direct video download URL"https://scontent.cdninstagram.com/..."
formatsarrayUp to 5 available formats (id, url, ext, resolution)[{"id":"hls-1080","res":"1080x1920"}]

📦 Example Input & Output

Input:

{
"url": "https://www.instagram.com/reel/ABC123xyz/",
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
}
}

Output:

{
"post_type": "reel",
"title": "Golden hour in the Sahara 🌅",
"caption": "Nothing compares to this view. #travel #sahara #desert #goldenhour @natgeo",
"video_id": "Cx1a2B3cDe4",
"post_url": "https://www.instagram.com/reel/ABC123xyz/",
"owner_username": "natgeo",
"owner_name": "National Geographic",
"owner_url": "https://www.instagram.com/natgeo/",
"duration_seconds": 28,
"duration": "0:28",
"thumbnail": "https://scontent.cdninstagram.com/.../thumb.jpg",
"upload_date": "20240315",
"view_count": 4500000,
"like_count": 230000,
"comment_count": 18500,
"hashtags": ["#travel", "#sahara", "#desert", "#goldenhour"],
"mentions": ["@natgeo"],
"download_url": "https://scontent.cdninstagram.com/.../video.mp4",
"formats": [
{ "id": "hls-1080", "url": "https://...", "ext": "mp4", "res": "1080x1920" },
{ "id": "hls-720", "url": "https://...", "ext": "mp4", "res": "720x1280" }
]
}

⚙️ How It Works

Step 1 — URL Type Detection

The actor inspects each URL path to identify content type automatically: /reel/ → Reel, /p/ → Post, /stories/ → Story, /tv/ → IGTV, /@ or /user/ → Profile page.

Step 2 — yt Extraction

yt- communicates directly with Instagram's internal CDN and media endpoints — no browser, no Playwright, no cookies required. A residential proxy is passed to bypass Instagram's IP-based access controls.

Step 3 — Best Format Selection

The actor scans all available format streams and selects the best combined video+audio URL for download_url. Up to 5 additional format objects are returned in the formats array for flexible quality selection.

Step 4 — Metadata & Enrichment

Caption, hashtags (#tag), and @mentions are parsed from the description field via regex. Engagement metrics (views, likes, comments), thumbnail, duration, upload date, and owner profile data are extracted from the yt info object.

Step 5 — Output

All records are pushed to the Apify dataset and saved as results.json in the Key-Value Store. Profile and highlight URLs return up to 50 items per page.

⚠️ Important: Instagram CDN URLs are signed and time-limited (typically valid for a few hours). Use them immediately, or re-run the actor to refresh them.


🌐 Proxy Configuration

Why Is Residential Proxy Required?

Instagram aggressively blocks datacenter IP addresses. Without a residential proxy, most requests return a 401 or redirect to a login page instead of the video content. A residential proxy makes requests appear to originate from a real home internet connection — which Instagram allows.

{
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
}
}

Running without proxy will trigger a warning in the actor logs and will likely result in failed extractions for most Instagram URLs.


⚡ Performance & Limits

ModeCountEstimated Time
Single Reel or post1~10–20 seconds
Batch of Reels10~2–3 minutes
Profile page1 page (up to 50 items)~3–5 minutes
  • 3 automatic retries with backoff on failed requests
  • 30-second socket timeout per URL
  • Per-URL isolation — one failure never stops the rest of the batch
  • Profile and highlight pages return up to 50 items per URL

❓ FAQ

Q: Does this actor download the video file to Apify's servers? A: No. The actor extracts and returns the direct signed CDN URL. The video file is never stored on Apify — you download it to your own system using download_url.

Q: How long is download_url valid? A: Instagram CDN URLs expire within a few hours. Use them immediately after the run, or re-run the actor to get a fresh URL.

Q: Can I download from private Instagram accounts? A: No. Only publicly accessible content is supported. Private accounts and login-gated content are not supported.

Q: Why is view_count or like_count null? A: Instagram does not always expose engagement metrics — especially for stories or older posts. The field will be null when the data is unavailable.

Q: Can I scrape an entire Instagram profile's videos? A: Yes — provide a profile URL (https://www.instagram.com/@username/) and the actor extracts up to 50 video items from that page.

Q: What happens if a URL fails? A: The error is logged and the actor continues processing all remaining URLs. One failed URL never stops the run.

Q: Are hashtags and mentions extracted automatically? A: Yes. The hashtags and mentions fields are parsed from the post caption using regex — no extra configuration needed.


📜 Changelog

v1.0.0 (Current)

  • ✅ yt- integration for Instagram Reels, posts, stories, and IGTV
  • ✅ Auto content-type detection from URL pattern (/reel/, /p/, /tv/, /stories/)
  • ✅ Best format selection with up to 5 format objects per record
  • ✅ Caption, hashtag (#tag), and @mention extraction via regex
  • ✅ Engagement metrics: view count, like count, comment count
  • ✅ Owner profile fields: username, display name, profile URL
  • ✅ Profile page support (up to 50 items per URL)
  • ✅ Residential proxy support with built-in warning when proxy is off
  • ✅ Results exported to Apify dataset + results.json in Key-Value Store

This actor extracts publicly accessible Instagram video metadata and CDN stream URLs in the same way a regular user views content through a browser.

Please note:

  • Use this tool only for research, archiving, journalism, education, and personal use
  • Only download content that you have the right to access and store
  • Redistributing copyrighted Instagram content without authorization may violate copyright law and Instagram's Terms of Service
  • Do not use this tool to scrape personal data or target private individuals
  • The actor developer is not responsible for how users choose to use the extracted content

🤝 Support & Feedback

  • Bug report? Open a GitHub issue or contact us via the Apify actor page
  • Feature request? Post in the Apify Community forum
  • Works great? Please leave a ⭐ review on the Apify Store!

Built with ❤️ on Apify · Powered by yt-
The most reliable Instagram Reels & Video Downloader — no login, no browser, bulk-ready