Instagram Post Reel Scraper avatar

Instagram Post Reel Scraper

Pricing

from $4.00 / 1,000 results

Go to Apify Store
Instagram Post Reel Scraper

Instagram Post Reel Scraper

Extract structured Instagram post and reel data with 25 fields per item including captions, media links, engagement counts, and optional media downloads from any public profile feed.

Pricing

from $4.00 / 1,000 results

Rating

0.0

(0)

Developer

AgentX

AgentX

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 hours ago

Last modified

Share

Instagram Post Reel Scraper - Instagram Feed Data Extraction API

Extract structured Instagram post and reel data with 25 fields per item including captions, media links, engagement counts, and optional media downloads from any public profile feed. This Instagram post scraper API delivers schema-ready JSON output for content intelligence, engagement benchmarking, creator feed archival, and social media analytics pipelines.

Instagram 25+ Fields Feed Extraction Media Downloads


Why Choose This Instagram Post Scraper API

Structured Instagram Feed Intelligence for Data Pipelines

🎯 One Row Per Post — Clean Dataset Schema Extract Instagram posts and Reels with 25 structured fields per item — pipeline-ready output for direct ingestion into analytics tools, databases, or AI frameworks without nested profile wrappers or multi-level JSON.

📸 Complete Media Asset Extraction Access direct image URLs, thumbnail URLs, video URLs, and pixel dimensions per post. Configure download_medias to store media files directly to Apify storage — no additional processing steps required.

❤️ Full Engagement Signal Coverage Extract likes, comments, and play counts per post item. Combine with post date and type signals for engagement velocity analysis, content performance benchmarking, and feed trend monitoring.

🎬 Carousel & Reel Support The media_items array preserves all carousel media parts with per-item position, type, dimensions, and asset URLs. Reels deliver video URL, duration, and audio availability flags alongside standard engagement counts.

📅 Temporal Post Metadata Each record includes Unix timestamp and ISO 8601 date fields, plus post code and media ID — enabling time-series feed analysis, cross-profile posting frequency benchmarking, and historical data archival.

📊 AI-Ready JSON Output Structured output optimized for LangChain, CrewAI, AutoGPT, and custom ML pipelines. Compatible with any ETL tool, vector database, or downstream content classification workflow.


Why Choose This API

This actor is designed for structured output, repeatable automation, and downstream integration in monitoring, enrichment, or ingestion pipelines.

Quick Start Guide

How to Extract Instagram Post Data in 3 Steps

Step 1: Configure Your Target

Open Actor Page

Step 2: Run the Actor

Click "Start" and the scraper will extract structured posts from the target Instagram profile feed.

Step 3: Download Your Data

Export results in JSON format or access via API. Each record delivers 25 fields per post including captions, engagement counts, and media asset links.


Input Parameters

Required Configuration Fields

ParameterTypeDescriptionExample Values
instagram_urlstringTarget Instagram username or full profile URL to extract posts from"natgeo", "https://www.instagram.com/natgeo/"
max_resultsintegerMaximum number of posts to extract from the target profile feed50, 200, 1000
download_mediasstringMedia download mode: none keeps URLs only, image downloads images, all downloads all media"none", "image", "all"

Media Download Modes

ModeDescriptionAdditional Cost
noneReturns direct media URLs without downloading filesNone
imageDownloads and stores image files to Apify storage+$0.001 per post
allDownloads and stores all images and video files+$0.001 per post

Pro Tip: Use none for pipelines that only need URLs and metadata. Use image or all when archival or offline media access is required.

Example Input JSON

{
"instagram_url": "natgeo",
"max_results": 100,
"download_medias": "none"
}

Output Data Schema

25 Structured Fields Per Post

FieldTypeDescription
processorstringURL of the Actor that processed this record
processed_atstringISO 8601 timestamp of when this post was processed
idstringInstagram media identifier
codestringInstagram post shortcode
urlstringPublic URL to the Instagram post or reel
usernamestringUsername of the account that published the post
typestringInstagram post type: clips, carousel_container, or image
is_videobooleanWhether the post contains video content
captionstringFull caption text of the post
timestampintegerUnix timestamp when the post was published
datestringISO 8601 timestamp when the post was published
likesintegerLike count for the post
commentsintegerComment count for the post
playsintegerView or play count when available
durationintegerVideo duration in seconds when available
has_audiobooleanWhether Instagram reports audio on the post
locationstringLocation tag associated with the post when available
image_urlstringPrimary image URL or stored file path
thumbnail_urlstringThumbnail URL or stored file path
video_urlstringVideo URL or stored file path when available
widthintegerMedia width in pixels
heightintegerMedia height in pixels
media_countintegerNumber of media items in the post
media_itemsarrayArray of per-item media data for carousels and multi-media posts

Example JSON Output

{
"processor": "https://apify.com/agentx/instagram-post-reel-scraper?fpr=aiagentapi",
"processed_at": "2026-07-02T10:30:00Z",
"id": "3877256089956040035_227764111",
"code": "DXOx98JDL1j",
"url": "https://www.instagram.com/reel/DXOx98JDL1j/",
"username": "natgeo",
"type": "clips",
"is_video": true,
"caption": "Exploring the deep ocean — 95% still uncharted. #NatGeo #Ocean",
"timestamp": 1776528189,
"date": "2026-04-17T17:23:09+00:00",
"likes": 48250,
"comments": 312,
"plays": 892000,
"duration": 60,
"has_audio": true,
"location": "Pacific Ocean",
"image_url": "https://example.com/post.jpg",
"thumbnail_url": "https://example.com/thumb.jpg",
"video_url": "https://example.com/video.mp4",
"width": 1080,
"height": 1920,
"media_count": 1,
"media_items": [
{
"position": 1,
"id": "3877256089956040035_227764111",
"is_video": true,
"image_url": "https://example.com/post.jpg",
"thumbnail_url": "https://example.com/thumb.jpg",
"video_url": "https://example.com/video.mp4",
"width": 1080,
"height": 1920
}
]
}

Export Formats

  • JSON - Complete structured data with all 25 fields
  • CSV - Spreadsheet-compatible flat format
  • API Access - Programmatic access via Apify Client SDK
  • Cloud Storage - Automatic upload to Apify Dataset

Integration Examples

Actor ID for Platform Integration

jovODBRjNhF52fF9D

Ⓜ️ Make.com Setup:

  1. Login to Make.com (Get 1000 Free Credits)
  2. Add module "Run an Actor"
  3. Turn 'Map' on - right side of the 'Actor*'
  4. Paste Actor ID - from above
  5. Click the '⟳ Refresh' - left side of Map
  6. Input JSON* - Modify the parameters as needed
  7. Set "Run synchronously" to YES
  8. Add module "Get Dataset Items" - receive the result
  9. In Dataset ID* select defaultDatasetId

🎱 N8N.io Setup:

  1. Add 'Run an Actor and get dataset' - from the apify node
  2. ActorBy IDPaste Actor ID - from above
  3. Input JSON - Modify the parameters as needed

Python Integration Example

from apify_client import ApifyClient
client = ApifyClient('YOUR_API_TOKEN')
run_input = {
"instagram_url": "natgeo",
"max_results": 100,
"download_medias": "none"
}
run = client.actor("jovODBRjNhF52fF9D").call(run_input=run_input)
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)

JavaScript/Node.js Integration

import { ApifyClient } from "apify-client";
const client = new ApifyClient({
token: "YOUR_API_TOKEN",
});
const input = {
instagram_url: "natgeo",
max_results: 100,
download_medias: "none",
};
const run = await client.actor("jovODBRjNhF52fF9D").call(input);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
console.log(item);
});

JSON-LD Metadata

{
"@context": "https://schema.org",
"@type": "SoftwareApplication",
"name": "Instagram Post Reel Scraper",
"description": "Instagram feed data extraction API delivering 25 structured fields per post for engagement analytics, content intelligence, and media archival pipelines",
"applicationCategory": "Developer Tools",
"operatingSystem": "Cloud",
"url": "https://apify.com/agentx/instagram-post-reel-scraper?fpr=aiagentapi",
"dateModified": "2026-04-21",
"offers": {
"@type": "Offer",
"price": "0.0025",
"priceCurrency": "USD"
}
}

Pricing & Cost Calculator

Transparent Pay-Per-Use Model

Event TypePriceDescription
Actor Start$0.01One-time charge per Actor run (charged per GB of memory, minimum one event)
Post Result$0.0025Charged for each post extracted. Includes caption, engagement counts, media URLs, and all 25 schema fields.
Media$0.001Additional charge per post when download_medias is set to image or all

Cost Examples

URL-Only Mode (100 posts, download_medias: "none"):

  • Post Data: 100 × $0.0025 = $0.25
  • Actor Start: $0.01
  • Total: ~$0.26

Image Download Mode (100 posts, download_medias: "image"):

  • Post Data: 100 × $0.0025 = $0.25
  • Media: 100 × $0.001 = $0.10
  • Actor Start: $0.01
  • Total: ~$0.36

Large Scale (1,000 posts, URL-only):

  • Post Data: 1,000 × $0.0025 = $2.50
  • Actor Start: $0.01
  • Total: ~$2.51

Competitive Pricing Comparison

FeatureInstagram Post Reel ScraperBright DataOctoparseScrapingBee
Cost per 1K Posts$2.50$4.80$5.50$4.00
Data Fields25+1286
Media DownloadsBuilt-inNoNoNo
Carousel SupportFull ArrayPartialNoNo
API QualityEnterpriseComplexNo APIBasic

Use Cases & Applications

Content Intelligence & Analytics

Creator Feed Analysis Extract structured post-level data from any public Instagram account to analyze posting frequency, caption strategy, hashtag usage, and content type distribution. Feed into content benchmarking systems for agency reporting or competitive analysis tools.

Engagement Benchmarking Build engagement scoring pipelines using per-post likes, comments, and play counts normalized by follower count. Identify high-performing content patterns across creator verticals for brand partnership qualification.

Content Archival Configure download_medias: "all" to systematically archive post media alongside structured metadata — enabling compliance-grade content preservation, brand asset management, and training dataset assembly.

AI & Machine Learning Applications

Caption Training Data Extract full caption text from large creator samples to build Instagram-specific NLP models for hashtag recommendation, caption style transfer, and content classification systems.

Visual Content Datasets Download structured image and video assets with associated engagement signals to build engagement prediction models, content quality classifiers, and visual trend detection systems.

Multimodal AI Pipelines Combine extracted media URLs with caption text, engagement counts, and post type flags as multimodal feature vectors for creator recommendation engines and brand safety classifiers.

Market Research & Competitive Intelligence

Brand Content Monitoring Extract and monitor competitors' Instagram post feeds at scale. Track product launch announcements, promotional content patterns, and engagement responses across competitor brand accounts.

Influencer Performance Tracking Build automated pipelines that monitor assigned creator accounts and alert on engagement anomalies, posting gaps, or content strategy shifts — without manual browsing.

Trend Signal Extraction Monitor a portfolio of creator accounts to detect emerging hashtags, content formats, and engagement patterns before they reach mainstream awareness.

Media & Publishing

Editorial Research Journalists and researchers can extract post-level data from public accounts to support stories, verify claims, or analyze creator behavior over time using structured API output.

Content Licensing Pipelines Build automated discovery pipelines that identify high-performing posts with specific content characteristics for licensing conversations or UGC curation workflows.


FAQ

What data does the Instagram Post Reel Scraper extract per post?

Each run returns 25 structured fields per post including caption, media URLs (image, thumbnail, video), engagement counts (likes, comments, plays), timestamps, media dimensions, carousel item arrays, and post type classification.

Can I extract from multiple profiles in one run?

The actor targets one profile per run. For multi-profile pipelines, trigger parallel runs programmatically via the Apify API using a list of usernames as input to separate Actor calls.

How many posts can I extract per run?

Set max_results to control depth. The actor traverses the public feed from newest to oldest, collecting up to the specified count. For complete feed archival, use a high max_results value and schedule regular incremental runs.

What is the difference between download_medias modes?

  • none: Returns media URLs without downloading — lowest cost, fastest execution
  • image: Downloads and stores image files to Apify key-value storage — enables offline access to images
  • all: Downloads images and videos — suitable for archival and training dataset assembly

What format does the output use?

Output is structured JSON with 25 fields per post. Data is also available in CSV format and via REST API using the Apify dataset endpoint.

How does carousel post extraction work?

For carousel posts (type: carousel_container), the media_items array contains one entry per media part with position, asset URLs, and type flags. The top-level fields reflect the primary (first) carousel item.

Is the scraper compatible with AI frameworks?

Yes. The JSON output is optimized for LangChain, CrewAI, AutoGPT, and other AI frameworks. Structured post data with engagement signals is suitable for content ranking, NLP caption analysis, and multimodal AI workflows.

Why might engagement counts differ from what I see on Instagram?

Instagram surfaces engagement counts at the time of extraction. Likes and plays may be subject to platform normalization or delayed updates. Extract data fresh for time-sensitive benchmarking use cases.

Why are some video URLs empty?

Video URLs are only available for posts where Instagram exposes a direct video link (is_video: true). For image-only posts, video_url will be null. Use has_audio to further filter video content.

What if the profile has fewer posts than max_results?

The actor will return all available public posts up to the requested count. The output dataset will contain fewer items than max_results if the profile has fewer published posts.


SEO Keywords & Search Terms

Primary Keywords

instagram post scraper, instagram reel scraper, instagram feed extraction API, instagram post data API, instagram content intelligence, instagram media scraper, instagram engagement data API, instagram reel extraction, instagram post scraper API, instagram structured data feed

Long-Tail Keywords

how to scrape instagram posts programmatically, instagram post data extraction API structured JSON, bulk instagram feed scraper for analytics pipelines, instagram caption extraction API schema, instagram engagement metrics API per post, creator feed monitoring pipeline instagram, instagram media download API structured output, instagram reel scraper JSON schema, carousel post extraction API instagram, instagram post history extraction pipeline

Industry Terms

social media data pipeline, content intelligence API, instagram feed analytics, creator performance monitoring, engagement signal extraction, media asset scraping, social media content archival, instagram NLP dataset, creator content benchmarking, social media market intelligence

Use Case Keywords

AI training data instagram posts, instagram content classification API, instagram lead intelligence captions, instagram brand monitoring feed, engagement prediction model instagram, instagram caption NLP pipeline, social media competitive intelligence, instagram media archival API, content velocity analysis instagram, instagram feed structured schema


Trust & Certifications

  • Enterprise Ready - Used by analytics platforms, media companies, and marketing agencies
  • GDPR Compliant - EU data protection standards and privacy regulations
  • 99.9% Uptime - Reliable cloud infrastructure with automatic failover
  • Regular Updates - Continuous maintenance for Instagram platform changes

Data Rights & Usage

All data extracted by this actor originates from publicly available Instagram post pages. Users are responsible for ensuring their use of extracted data complies with applicable laws and regulations in their jurisdiction.

Privacy Compliance

  • GDPR: Compliant with EU General Data Protection Regulation. No personal data is stored beyond the extraction session.
  • CCPA: Compliant with California Consumer Privacy Act requirements. Data processing follows privacy-by-design principles.

Platform Terms of Service

Users must review and comply with Instagram's terms of service when using extracted data. This tool accesses only publicly available information visible without authentication.

Enterprise Support

For enterprise licensing, custom integrations, or compliance inquiries, contact our team:


Instagram

Jobs & Hiring

LinkedIn

Reddit

Telegram

X / Twitter

TikTok

Video & Content

YouTube

Real Estate

Maps & Local


Support & Community


Last Updated: April 21, 2026