# Instagram Reels Scraper (`kingscraper/instagram-reels-scraper`) Actor

Extract complete Instagram Reels data 📊 including multiple quality video URLs 🎬, engagement metrics 👍💬 (likes/comments), creator profiles 👤, upload dates 📅, and multiple format options 🎥
Perfect for content analysis 📈 and archiving 📦✨

- **URL**: https://apify.com/kingscraper/instagram-reels-scraper.md
- **Developed by:** [King Scraper](https://apify.com/kingscraper) (community)
- **Categories:** Social media, Videos, Developer tools
- **Stats:** 4 total users, 0 monthly users, 100.0% runs succeeded, 1 bookmarks
- **User rating**: No ratings yet

## Pricing

$9.00/month + usage

To use this Actor, you pay a monthly rental fee to the developer. The rent is subtracted from your prepaid usage every month after the free trial period.You also pay for the Apify platform usage, which gets cheaper the higher Apify subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#rental-actors

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## 📱 Instagram Reels Scraper - Ultimate Instagram Reels Scraper for Data Extraction

**Powerful Instagram Reels Scraper that extracts comprehensive metadata, download URLs, and engagement metrics from Instagram Reels. This enterprise-grade Instagram Reels Scraper delivers structured data perfect for content analysis, archiving, and social media monitoring.**

***

### 🎯 Overview

Looking for a reliable **Instagram Reels Scraper**? This actor is your complete solution for extracting Reels data at scale. The **Instagram Reels Scraper** captures:

- 📥 Direct CDN download URLs for videos
- 📊 Complete engagement metrics (likes, comments)
- 👤 Creator profiles and channel information
- 🖼️ High-quality thumbnail images
- 🔍 Multiple format options per Reel

Perfect for social media analysts 📊, content creators 🎥, marketing agencies 📈, and data scientists 🔬 who need a robust **Instagram Reels Scraper**!

***

### ⚡ Core Capabilities of This Instagram Reels Scraper

#### 📥 Media Extraction

- **Direct Downloads**: Get CDN URLs for all available formats
- **Multi-Format Support**: Video+audio, video-only, and audio-only tracks
- **Quality Options**: Multiple resolutions (up to 1080p+) when available
- **Thumbnail Capture**: High-quality cover images for each Reel

#### 📊 Metadata That Matters

This **Instagram Reels Scraper** extracts 20+ data points per Reel:

- **Engagement Stats**: Like counts, comment counts, view counts
- **Creator Info**: Uploader name, channel ID, profile URL
- **Timestamps**: Upload date in YYYYMMDD format, Unix timestamps
- **Video Details**: Duration, dimensions, codec information
- **Content**: Titles, descriptions, hashtags from captions

#### 🔄 Advanced Format Detection

The **Instagram Reels Scraper** automatically detects and provides:

- Combined video+audio files (ready to use)
- Separate video-only streams (for editing)
- Audio-only M4A files (for music/sound extraction)
- Original source quality with technical specs

***

### 📝 Input Configuration

Simply provide your Reels URLs to this **Instagram Reels Scraper** in the following format:

```json
{
    "reel_urls": [
        {
            "url": "https://www.instagram.com/reel/DTwiNsDiqUa/?utm_source=ig_web_copy_link&igsh=NTc4MTIwNjQ2YQ=="
        },
        {
            "url": "https://www.instagram.com/reels/DVwDMdWDSe_/"
        },
        {
            "url": "https://www.instagram.com/reel/DVyIhIfk5i-/?utm_source=ig_web_copy_link&igsh=NTc4MTIwNjQ2YQ=="
        }
    ]
}
```

#### 📋 Input Specifications

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `reel_urls` | Array | Yes | Array of Instagram Reel URL objects |
| `url` | String | Yes | Valid Instagram Reel URL (supports /reel/ or /reels/ formats) |
| *UTM parameters* | String | No | Automatically handled by the Instagram Reels Scraper |

***

### 📤 Output Structure

Here's what this **Instagram Reels Scraper** returns for each URL:

```json
[
  {
    "input_url": "https://www.instagram.com/reel/DTwiNsDiqUa/?utm_source=ig_web_copy_link",
    "canonical_url": "https://www.instagram.com/reel/DTwiNsDiqUa/",
    "shortcode": "DTwiNsDiqUa",
    "metadata": {
      "download_url": "https://cdninstagram.com/.../video.mp4",
      "has_sound": true,
      "id": "DTwiNsDiqUa",
      "title": "Video by lostddi",
      "description": "Video description with hashtags...",
      "duration": 14.9,
      "like_count": 1550328,
      "comment_count": 8036,
      "timestamp": 1768967642,
      "upload_date": "20260121",
      "uploader": "LOSTDII // PAGE~",
      "uploader_id": "80217914247",
      "channel": "lostddi",
      "thumbnail": "https://cdninstagram.com/.../thumbnail.jpg",
      "width": 720,
      "height": 1280,
      "ext": "mp4",
      "available_formats": [...]
    }
  }
]
```

#### 📊 Output Field Documentation

##### 🔍 Request Metadata

| Field | Description |
|-------|-------------|
| `input_url` | Original URL provided to the Instagram Reels Scraper |
| `canonical_url` | Clean URL without tracking parameters |
| `shortcode` | Unique Reel identifier (used in URLs) |

##### 📈 Engagement & Creator Data

| Field | Description |
|-------|-------------|
| `like_count` | Total likes (when available) |
| `comment_count` | Total comments |
| `uploader` | Display name of content creator |
| `channel` | Instagram handle/username |
| `upload_date` | Publication date in YYYYMMDD format |
| `timestamp` | Unix timestamp of upload |

##### 🎬 Media Assets

| Field | Description |
|-------|-------------|
| `download_url` | Primary combined video+audio URL |
| `thumbnail` | High-quality preview image URL |
| `has_sound` | Boolean indicating if audio is present |
| `duration` | Video length in seconds |
| `width`/`height` | Video dimensions in pixels |

##### 📦 Available Formats Array

Each format object contains:
| Field | Description |
|-------|-------------|
| `format_id` | Unique identifier for this quality |
| `ext` | File extension (mp4, m4a) |
| `resolution` | Display resolution (e.g., "720x1280") |
| `type` | Content type (video+audio, video\_only, audio\_only) |
| `url` | Direct CDN download URL |
| `has_sound` | Whether this format includes audio |

***

### 🎚️ Format Types Available

This **Instagram Reels Scraper** automatically detects and provides:

1. **🎬 Combined Video+Audio** - Ready-to-use format for immediate playback
2. **🎥 Video Only** - Higher quality video streams for editing
3. **🎵 Audio Only** - M4A format for sound extraction
4. **📱 Multiple Resolutions** - From 360p up to 1080p+ when available

***

### 💼 Use Cases for This Instagram Reels Scraper

- **📊 Social Media Analysts** - Track engagement metrics and trending content
- **🎨 Content Creators** - Archive your own Reels with full metadata
- **📈 Marketing Agencies** - Monitor competitor content and campaign performance
- **🔬 Data Scientists** - Build datasets for trend analysis and prediction
- **🏢 Brand Managers** - Track brand mentions and sentiment across Reels
- **📚 Researchers** - Study viral content patterns and engagement factors

***

### ✨ Why Choose This Instagram Reels Scraper?

- **⚡ Blazing Fast** - Optimized for quick extraction of multiple Reels
- **📊 Comprehensive Data** - More metadata than any other Instagram Reels Scraper
- **🔄 Always Updated** - Regular maintenance ensures Instagram compatibility
- **🎯 Accurate Results** - Reliable extraction of public Reels content
- **🔧 Easy to Use** - Simple input format, rich output structure
- **🌐 Proxy Ready** - Built for reliable performance at scale

***

### ⚠️ Limitations

- Works only with **public** Instagram Reels
- Rate limits apply based on Instagram's restrictions
- Some engagement metrics may be unavailable for certain Reels
- Maximum video resolution depends on Instagram's original upload

***

### 🔗 Related Tools

Explore our complete social media scraping suite:

#### 🎥 **YouTube Tools**

- [YouTube Video Downloader](https://apify.com/kingscraper/youtube-video-downloader)
- [YouTube Shorts Downloader](https://apify.com/kingscraper/youtube-shorts-downloader)

#### 📘 **Snapchat Tools**

- [Snapchat Story Downloader](https://apify.com/kingscraper/snapchat-story-downloader)
- [Snapchat Spotlight Downloader](https://apify.com/kingscraper/snapchat-spotlight-downloader)

#### 📘 **Facebook Scraper Tools**

- [Facebook Post Scraper](https://apify.com/kingscraper/facebook-post-scraper)

### 📧 Need Custom Features?

Want this **Instagram Reels Scraper** customized for your specific needs?

- 🔄 Higher rate limits for bulk extraction
- 📊 Custom data formatting and delivery
- 🏢 Enterprise SLAs and dedicated support
- 🔌 API integration assistance

✉️ Email: **<mehedy7613@gmail.com>** for tailored solutions!

***

# Actor input Schema

## `reel_urls` (type: `array`):

A list of public Instagram Reel URLs to scrape. Each item can be a plain string URL or an object with {"url": "https://..."}.

## `proxy` (type: `object`):

Apify proxy settings. Residential proxies are enabled by default to avoid Instagram rate-limits.

## Actor input object example

```json
{
  "reel_urls": [
    {
      "url": "https://www.instagram.com/reel/DVfAlwnDSjl/?utm_source=ig_web_copy_link"
    }
  ],
  "proxy": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ],
    "apifyProxyCountry": "US"
  }
}
```

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "reel_urls": [
        {
            "url": "https://www.instagram.com/reel/DVfAlwnDSjl/?utm_source=ig_web_copy_link"
        }
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("kingscraper/instagram-reels-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "reel_urls": [{ "url": "https://www.instagram.com/reel/DVfAlwnDSjl/?utm_source=ig_web_copy_link" }] }

# Run the Actor and wait for it to finish
run = client.actor("kingscraper/instagram-reels-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "reel_urls": [
    {
      "url": "https://www.instagram.com/reel/DVfAlwnDSjl/?utm_source=ig_web_copy_link"
    }
  ]
}' |
apify call kingscraper/instagram-reels-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=kingscraper/instagram-reels-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/acts/Tc1BqPPsqu1FisxoN/builds/tap6RxoxJrYD7yFVZ/openapi.json
