Instagram Posts Scraper avatar

Instagram Posts Scraper

Pricing

$19.99/month + usage

Go to Apify Store
Instagram Posts Scraper

Instagram Posts Scraper

๐Ÿ“ธ Instagram Posts Scraper extracts captions, hashtags, likes, comments, media URLs & timestamps from public posts at scale. ๐Ÿ”Ž Perfect for analytics, social listening, competitor research & influencer marketing. ๐Ÿ“Š Clean JSON/CSV output for fast insights & growth.

Pricing

$19.99/month + usage

Rating

0.0

(0)

Developer

ScrapeBase

ScrapeBase

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

11 hours ago

Last modified

Share

Instagram Posts Scraper

Instagram Posts Scraper is a fast, reliable Instagram post data extractor that collects public profile posts at scale โ€” including captions, media URLs, engagement metrics, and timestamps โ€” in clean, structured JSON. Built for marketers, developers, data analysts, and researchers, this Instagram profile posts scraper helps you analyze content performance, benchmark competitors, and power automation pipelines without manual copyโ€‘paste. With automatic username detection, robust pagination, and production-ready proxies, it enables scalable data collection across many profiles for growth and insights. ๐Ÿš€

What data / output can you get?

Below are real output fields this Instagram posts scraping tool returns (from the dataset). Example values are taken from an actual run:

Data typeDescriptionExample value
idComposite post identifier"3727992219681477950_173560420"
pkPost primary key"3727992219681477950"
codePost shortcode used in URLs"DO8fSwLiNU-"
taken_atPost publish timestamp (epoch)1758631325
like_countNumber of likes7141379
comment_countNumber of comments72516
media_typeMedia type (e.g., 1=photo, 8=carousel)8
product_typePost product type"carousel_container"
caption.textFull caption text"Happy Saudi National Day to everyone in Saudi Arabia! ๐Ÿ‡ธ๐Ÿ‡ฆ Wishing you a day filled with pride, unity, and celebration with your loved ones."
image_versions2.candidates[0].urlDirect media URL (one of many sizes)"https://scontent-iad3-1.cdninstagram.com/v/t51.2885-15/552825156_18648550693056421_6760424445129157822_n.jpg?..."
user.usernameOwner username"cristiano"
carousel_media_countNumber of items in a carousel3
scraped_usernameUsername the actor scraped"cristiano"
scraped_atScrape timestamp (epoch)1758728197
post_urlCanonical post URL"https://www.instagram.com/p/DO8fSwLiNU-/"

Notes:

  • Output preserves Instagramโ€™s native structure (e.g., image_versions2, carousel_media, caption, user) and adds minimal metadata: scraped_username, scraped_at, post_url.
  • Export your dataset in JSON, CSV, or Excel directly from Apify for downstream analytics and reporting.

Key features

  • ๐Ÿ”Ž Automatic input detection
    Provide profile URLs, plain usernames, or post shortcodes โ€” the actor validates and extracts the correct profile to scrape.

  • ๐Ÿงญ Reliable pagination with retry logic
    Robust request retries, backoff, and pagination keep your runs stable even when rate limits occur.

  • ๐Ÿงฑ Original Instagram structure + minimal enrichments
    Keeps Instagramโ€™s post JSON intact while adding scraped_username, scraped_at, and post_url for easier joins and auditability.

  • ๐Ÿ›ก๏ธ Always-on residential proxy
    The scraper automatically uses a residential proxy for stability and success; no proxy setup required on your end.

  • โšก Scalable batch runs
    Queue multiple profiles/usernames at once to bulk download Instagram posts for research, benchmarking, and analysis.

  • ๐Ÿง‘โ€๐Ÿ’ป Developer-friendly (Apify datasets & API)
    Query datasets via the Apify API and plug results into pipelines โ€” perfect for an Instagram posts scraper API workflow in Python or any stack.

  • ๐Ÿ“Š Sorted output control
    Choose sortOrder (newest or oldest) and limit by maxPosts for predictable, consistent exports.

  • ๐Ÿงฐ Production-ready infrastructure
    Built on Apify with retrying, proxy fallback strategies, and clean output โ€” ideal for teams needing the best Instagram posts scraper for automation.

How to use Instagram Posts Scraper - step by step

  1. ๐Ÿ”‘ Sign in to Apify
    Create a free Apify account or log in.

  2. ๐Ÿ” Find the actor
    Search for โ€œInstagram Posts Scraperโ€ in the Apify Store and open the actor.

  3. ๐Ÿงพ Add input data
    In the โ€œInputโ€ tab, paste Instagram profile URLs (e.g., https://www.instagram.com/username/), usernames (e.g., username), or post shortcodes.

  4. โš™๏ธ Configure options

    • maxPosts: Limit how many posts to collect per profile.
    • sortOrder: Choose "newest" or "oldest".
    • proxyConfiguration: Optional in UI; the actor will use a residential proxy automatically.
  5. โ–ถ๏ธ Run the actor
    Click Start. The scraper will detect usernames, fetch tokens, handle pagination, and collect structured post data.

  6. โณ Monitor progress
    Watch logs for real-time status (pages scraped, rate-limit handling, and totals).

  7. ๐Ÿ’พ Download your data
    Go to the Dataset tab to export results in JSON, CSV, or Excel for analytics, BI tools, or warehousing.

Pro tip: Orchestrate scheduled runs and consume the dataset through the Apify API to build an Instagram feed scraper pipeline that updates your dashboards or ML models automatically.

Use cases

Use case nameDescription
Digital marketing โ€“ competitor post trackingBenchmark posting cadence, formats, and engagement by extracting public posts from competitor profiles and measuring like_count and comment_count.
Social listening โ€“ content themesAnalyze captions and media from public profiles to identify themes that resonate and drive growth with an Instagram photo and caption scraper workflow.
Influencer & creator researchEvaluate creatorsโ€™ recent posts and engagement before campaigns, using an Instagram profile posts scraper to audit performance at scale.
Analytics & BI enrichmentPipe structured post metadata into dashboards to track performance over time using an Instagram post metadata scraper approach.
Editorial & content researchCompile visual references and captions for trend reporting by exporting media URLs and captions from public feeds.
Academic & research studiesStudy public user behavior and posting patterns by collecting time series data (taken_at) for longitudinal analysis.
Developer pipelines (API)Integrate datasets into Python/ETL jobs to automate bulk download Instagram posts and run downstream processing.

Why choose Instagram Posts Scraper?

Built for precision, automation, and reliability, this Instagram posts scraping tool outperforms unstable, extension-based alternatives.

  • โœ… Accurate, structured data: Keeps Instagramโ€™s native JSON fields for easy parsing and joins.
  • ๐ŸŒ Public data only: No login required; designed for public profiles and responsible use.
  • ๐Ÿ“ˆ Scales with your needs: Batch scrape many profiles with stable pagination and retries.
  • ๐Ÿ”Œ Developer access: Fetch datasets via the Apify API โ€” ideal for an Instagram posts scraper API or Python workflows.
  • ๐Ÿ›ก๏ธ Safe & robust: Always-on residential proxy and fallback strategies reduce blocks and rate-limit issues.
  • ๐Ÿ’ฐ Cost-effective: Test on the free tier, then scale as your volume grows.
  • ๐Ÿ”— Integration-ready: Export to JSON/CSV/Excel and connect to your BI or automation stack.

In short, itโ€™s a production-grade Instagram post scraper tool for teams that value clean structure, stability, and automation.

Yes โ€” when used responsibly. This actor targets publicly available Instagram posts and does not access private accounts or require authentication.

Guidelines for compliant use:

  • Scrape only public content and respect platform terms.
  • Use data for analysis, research, or monitoring โ€” not misuse or spam.
  • Ensure adherence to applicable laws and regulations (e.g., GDPR, CCPA) and consult your legal team for edge cases.
  • Avoid collecting or republishing sensitive or personal information.

Input parameters & output format

Example JSON input

{
"startUrls": [
"https://www.instagram.com/cristiano/",
"neymarjr"
],
"maxPosts": 10,
"sortOrder": "newest",
"maxComments": 0,
"proxyConfiguration": { "useApifyProxy": false }
}

Parameters

  • startUrls (array of strings, required)
    Description: Instagram profile URLs (e.g., https://www.instagram.com/username), usernames (e.g., username), or post shortcodes (e.g., ABC123DEF). Automatically detects type and extracts the profile username.
    Default: none (required).

  • maxPosts (integer, optional)
    Description: Maximum number of posts to scrape per profile (1โ€“1000).
    Default: 10.

  • sortOrder (string, optional)
    Description: Order in which to sort the posts. One of ["newest", "oldest"].
    Default: "newest".

  • maxComments (integer, optional)
    Description: Maximum number of comments to extract per post (0โ€“100).
    Default: 0.

  • proxyConfiguration (object, optional)
    Description: You can configure proxy settings here, but this actor always uses a residential proxy automatically regardless of your selection.
    Default prefill: { "useApifyProxy": false }.

Example JSON output

[
{
"id": "3727992219681477950_173560420",
"pk": "3727992219681477950",
"code": "DO8fSwLiNU-",
"taken_at": 1758631325,
"like_count": 7141379,
"comment_count": 72516,
"media_type": 8,
"product_type": "carousel_container",
"caption": {
"text": "Happy Saudi National Day to everyone in Saudi Arabia! ๐Ÿ‡ธ๐Ÿ‡ฆ Wishing you a day filled with pride, unity, and celebration with your loved ones."
},
"image_versions2": {
"candidates": [
{
"url": "https://scontent-iad3-1.cdninstagram.com/v/t51.2885-15/552825156_18648550693056421_6760424445129157822_n.jpg?..."
}
]
},
"user": {
"username": "cristiano"
},
"carousel_media_count": 3,
"scraped_username": "cristiano",
"scraped_at": 1758728197,
"post_url": "https://www.instagram.com/p/DO8fSwLiNU-/"
}
]

Notes:

  • The actor preserves Instagramโ€™s original response fields and adds: scraped_username, scraped_at, post_url.
  • Some fields may be absent on certain posts (e.g., carousel_media on single-image posts), depending on the source data.

FAQ

Is there a free Instagram posts scraper option?

Yes. You can start on Apifyโ€™s free tier to test this Instagram posts scraper tool with limited runs and exports before scaling up.

Do I need to log in to scrape Instagram posts?

No. This Instagram post data extractor targets publicly available profiles and does not require login or cookies. It fetches public post data and metadata.

Can I scrape Instagram posts by hashtag or location?

This actor focuses on profiles, usernames, and post shortcodes. It does not accept hashtag or location inputs โ€” use profile-based inputs to scrape Instagram user posts reliably.

It returns media URLs (e.g., image_versions2 candidates) so you can download assets downstream if needed. The actor itself stores structured links and metadata in the dataset.

Can I integrate the results via API or Python?

Yes. Results are stored in an Apify dataset you can access via the Apify API, making it easy to build an Instagram posts scraper API workflow or connect to Python ETL pipelines.

How many posts can I scrape per run?

You control this with maxPosts (1โ€“1000). The actor handles pagination with retries and proxy fallbacks to improve stability at scale.

Does it extract comments?

The output includes comment_count for each post. Comment text is not fetched in this actorโ€™s current implementation.

How does it handle blocks or rate limits?

The actor always uses a residential proxy and implements retry/backoff logic. It also includes proxy fallback strategies to maximize success rates on consecutive pages.

Closing CTA / Final thoughts

Instagram Posts Scraper is built for scalable, structured extraction of public Instagram profile posts. It delivers clean JSON with original Instagram fields, post URLs, and helpful metadata โ€” ideal for marketers, analysts, researchers, and developers.

Start tracking competitors, enriching BI dashboards, and automating workflows with a reliable Instagram feed scraper. Developers can plug into the Apify dataset API for streamlined pipelines and bulk automation. Begin extracting smarter Instagram insights today and turn public content into actionable data. โœจ