Instagram Posts Scraper
Pricing
from $2.50 / 1,000 results
Instagram Posts Scraper
Extract Instagram posts, engagement metrics, and profile data from user profiles, individual posts, or Reels. Supports multiple input formats (usernames, profile URLs, post URLs) with date filtering. No login required. Perfect for social media analysis, competitor research, and content monitoring.
Pricing
from $2.50 / 1,000 results
Rating
2.2
(4)
Developer
ParseForge
Maintained by CommunityActor stats
4
Bookmarked
179
Total users
37
Monthly active users
0.28 hours
Issues response
3 days ago
Last modified
Categories
Share

📸 Instagram Posts Scraper
🚀 Extract Instagram posts, Reels, and profile data in minutes. Pull from any public account by username, profile URL, or post URL. Filter by media type and date range. No login, no API keys, no Instagram developer approval.
🕒 Last updated: 2026-04-21 · 📊 25 fields per post · 🎬 Reels/images/video/carousel · 📅 Date filtering · 🚫 No auth required
🎁 Paid plan adds
| 📈 Virality metrics | 📝 Caption intelligence | 💸 Sponsorship detection | 📍 Location coords |
The Instagram Posts Scraper collects post data from any public Instagram profile, returning 25 fields per post: caption, hashtags, mentions, like count, comment count, view count, play count, media type, video URL, image URLs, location, tagged users, collaborators, alt text, video duration, and timestamps. Runs support up to 1,000,000 posts on a paid plan.
The Actor accepts three input formats in the same run: usernames (nike), profile URLs (https://instagram.com/nike), and individual post URLs (https://instagram.com/p/ABC123). Filter by media type (image, video, Reel, carousel) and date range (absolute dates, ISO timestamps, or relative like "30 days"). No Instagram account, Graph API credentials, or developer approval needed.
| 🎯 Target Audience | 💡 Primary Use Cases |
|---|---|
| Social media analysts, influencer marketing teams, brand managers, growth hackers, academic researchers, content strategists | Competitor analysis, engagement benchmarking, influencer vetting, hashtag research, content audits, trend tracking |
📋 What the Instagram Posts Scraper does
Three input formats with media and date filters:
- 👤 Username mode. Enter usernames like
nikeorcristianoto pull their recent posts. - 🔗 URL mode. Paste profile URLs (
instagram.com/nike) or individual post URLs (instagram.com/p/ABC123). - 🎬 Media type filter. Restrict to
image,video,reel, orcarouselposts only. - 📅 Date filter. Limit results by absolute dates (
2025-01-01), ISO timestamps, or relative periods (30 days,3 months,1 year).
Each post record includes caption, parsed hashtag and mention arrays, engagement metrics (likes, comments, views, plays), media type and product type, video URL, all image URLs, carousel count, location, tagged users, collaborators, alt text, video duration, post URL, shortcode, and timestamps.
💡 Why it matters: the official Instagram Graph API only returns data for accounts you own or manage. This Actor reads the same public data any visitor sees and returns it as structured JSON, CSV, or Excel, making competitor analysis, influencer vetting, and hashtag research practical at scale.
🎬 Full Demo
🚧 Coming soon: a 3-minute walkthrough showing how to go from sign-up to a downloaded dataset.
⚙️ Input
| Input | Type | Default | Behavior |
|---|---|---|---|
startUrls | array | [] | Usernames, profile URLs, or individual post URLs. All three formats accepted in the same run. |
maxItems | integer | 10 | Max posts per profile. Free: up to 10. Paid: up to 1,000,000. |
maxItemsTotal | integer | - | Optional total cap across all profiles combined. |
mediaTypeFilter | string | "all" | Filter: all, image, video, reel, or carousel. |
dateFilter | string | "" | Date range: 2025-01-01, 30 days, 3 months, 1 year. |
proxyConfiguration | object | Apify residential | Residential proxies recommended for large runs. |
Example: last 30 days of Reels from two profiles.
{"startUrls": ["cristiano", "https://www.instagram.com/nike/"],"maxItems": 50,"mediaTypeFilter": "reel","dateFilter": "30 days"}
Example: all posts from a single profile URL.
{"startUrls": ["https://www.instagram.com/natgeo/"],"maxItems": 100}
⚠️ Good to Know: residential proxies are recommended for runs over 50 posts. Instagram rate-limits aggressively on datacenter IPs. The proxy configuration is pre-filled with recommended settings.
📊 Output
Each post record contains 25 fields. Download the dataset as CSV, Excel, JSON, or XML.
🧾 Schema
| Field | Type | Example |
|---|---|---|
🖼️ thumbnailUrl | string | "https://scontent-..." |
📝 caption | string | "Golden hour over the canyon." |
👤 username | string | "natgeo" |
👍 likeCount | number | 42891 |
💬 commentCount | number | 1204 |
📈 viewCount | number | 980000 |
▶️ playCount | number | 850000 |
🎬 mediaType | string | "video" |
🎬 productType | string | "feed" |
🎥 videoUrl | string | "https://scontent-..." |
🖼️ imageUrls | array | ["https://scontent-..."] |
🖼️ carouselCount | number | 0 |
#️⃣ hashtags | array | ["goldenhour", "canyon"] |
@ mentions | array | [] |
📍 location | string | "Grand Canyon National Park" |
👥 taggedUsers | array | [] |
🤝 collaborators | array | [] |
🔇 commentsDisabled | boolean | false |
🙈 likesHidden | boolean | false |
🌿 altText | string | null | null |
⏱️ videoDuration | number | null | 45.2 |
🔗 postUrl | string | "https://www.instagram.com/p/DPwJzEVDbwC/" |
🆔 shortcode | string | "DPwJzEVDbwC" |
📅 timestamp | ISO 8601 | "2025-10-13T14:40:07.000Z" |
🕒 scrapedAt | ISO 8601 | "2026-04-16T00:00:00.000Z" |
📦 Sample records
✨ Why choose this Actor
| Capability | |
|---|---|
| 📸 | 25 fields per post. Caption, hashtags, mentions, engagement, media URLs, location, tagged users, and timestamps. |
| 🎬 | Media type filter. Restrict to images, videos, Reels, or carousels in a single parameter. |
| 📅 | Date filtering. Absolute dates, ISO timestamps, or relative periods like "30 days" or "3 months". |
| 🔗 | Three input formats. Usernames, profile URLs, and individual post URLs in the same run. |
| ⚡ | Fast. Pulls hundreds of posts per minute with residential proxy. |
| 📊 | Per-profile and total caps. Control exactly how many posts to collect from each account. |
| 🚫 | No authentication. No Instagram login, Graph API credentials, or developer approval needed. |
📊 Instagram has over 2 billion monthly active users. Having structured access to public post data is the foundation for any social media analysis, influencer marketing, or competitive intelligence workflow.
📈 How it compares to alternatives
| Approach | Cost | Coverage | Refresh | Filters | Setup |
|---|---|---|---|---|---|
| ⭐ Instagram Posts Scraper (this Actor) | $5 free credit, then pay-per-use | Any public profile | Live per run | media type, date range, per-profile cap | ⚡ 2 min |
| Instagram Graph API | Free with restrictions | Only your own accounts | Real-time | Many | 🐢 Days (app review) |
| Third-party social analytics tools | $99-499/month | Multi-platform | Varies | Many | ⏳ Hours |
| Manual browsing | Free | Manual | Manual | Instagram UI only | 🕒 Hours per account |
Pick this Actor when you want public Instagram data on demand, without Graph API credentials, without managing tokens, and without paying for a full social analytics subscription.
🚀 How to use
- 📝 Sign up. Create a free account with $5 credit (takes 2 minutes).
- 🌐 Open the Actor. Go to the Instagram Posts Scraper page on the Apify Store.
- 🎯 Set input. Add usernames, profile URLs, or post URLs. Set media type filter, date range, and
maxItems. - 🚀 Run it. Click Start and let the Actor collect your data.
- 📥 Download. Grab your results in the Dataset tab as CSV, Excel, JSON, or XML.
⏱️ Total time from signup to downloaded dataset: 3-5 minutes. No coding required.
💼 Business use cases
🌟 Beyond business use cases
Data like this powers more than commercial workflows. The same structured records support research, education, civic projects, and personal initiatives.
🤖 Ask an AI assistant about this scraper
Open a ready-to-send prompt about this ParseForge actor in the AI of your choice:
- 💬 ChatGPT
- 🧠 Claude
- 🔍 Perplexity
- 🅒 Copilot
💰 How much does it cost?
Apify gives you $5 in free monthly credits on the Apify Free plan, enough to test Instagram Posts Scraper and pull a real sample dataset. For ongoing usage:
- Starter plan ($49/month) — Recommended for individuals running Instagram Posts Scraper regularly. Includes higher concurrency and larger datasets.
- Scale plan ($499/month) — Recommended for teams running Instagram Posts Scraper at production scale.
Pay-Per-Event pricing means you only pay for what you actually use. Failed runs are never charged. See the Pricing tab on this Actor's page for exact event prices.
💡 Tips for using Instagram Posts Scraper
- Start with a small
maxItems(3-10) to validate output format before running larger jobs. - Use Apify Schedules to run Instagram Posts Scraper on a recurring basis and keep your dataset fresh.
- Export via Integrations: Apify connects to Google Sheets, Airbyte, Make, Zapier, and direct webhooks — pipe your data anywhere.
- Monitor with webhooks: trigger downstream workflows the moment a run finishes.
- Re-run failed items: if any individual records error out, re-run with their inputs only. Failed events are not charged.
⚖️ Is it legal to use Instagram Posts Scraper?
Yes. Instagram Posts Scraper only collects publicly available data. Web scraping public data has been confirmed as legal by US courts (see hiQ Labs v. LinkedIn) and is widely used for research, market analysis, and business intelligence.
However, you are responsible for:
- Respecting the source website's Terms of Service.
- Complying with GDPR, CCPA, and other applicable data-protection laws when personal data is involved.
- Not republishing copyrighted content without permission.
If you have specific compliance concerns, consult your legal team. See the Apify legal docs for more.
❓ Frequently Asked Questions
🔌 Automating Instagram Posts Scraper
Control the scraper programmatically for scheduled runs and pipeline integrations:
- 🟢 Node.js. Install the
apify-clientNPM package. - 🐍 Python. Use the
apify-clientPyPI package. - 📚 See the Apify API documentation for full details.
The Apify Schedules feature lets you trigger this Actor on any cron interval. Weekly pulls keep your social-listening dashboards in sync automatically.
🔌 Integrate with any app
Instagram Posts Scraper connects to any cloud service via Apify integrations:
- Make - Automate multi-step workflows
- Zapier - Connect with 5,000+ apps
- Slack - Get run notifications in your channels
- Airbyte - Pipe Instagram data into your warehouse
- GitHub - Trigger runs from commits and releases
- Google Drive - Export datasets straight to Sheets
You can also use webhooks to trigger downstream actions when a run finishes. Push fresh Instagram data into your social-listening dashboard, or alert your team in Slack.
🔗 Recommended Actors
- 👤 Instagram Profile Scraper - Bio, follower counts, verification, and profile metadata
- 🎬 Instagram Reel Scraper - Reels data with views, likes, comments, and audio tracks
- #️⃣ Instagram Hashtag Analytics Scraper - Top and recent posts by hashtag with volume stats
- 🐦 X.com Tweets Scraper - Tweet data, engagement metrics, and author details
- 📱 Reddit Posts Scraper - Reddit posts with score, comments, and flair filters
💡 Pro Tip: browse the complete ParseForge collection for more social media scrapers.
🆘 Need Help? Open our contact form to request a new scraper, propose a custom data project, or report an issue.
⚠️ Disclaimer: this Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Instagram, Meta Platforms, Inc., or any of their subsidiaries. All trademarks mentioned are the property of their respective owners. Only publicly available post data is collected.