# How to Scrape Instagram Profiles and Posts

To scrape an Instagram profile's posts, put the profile URL, such as https://www.instagram.com/nike/, in the startUrls input of apidojo's Instagram Scraper on Apify, and set maxItems.

[![apidojo](/blog/authors/apidojo.png)**Apidojo** *15+ years of experience in data retrieval.*](/blog/authors/apidojo/)

**16 October 2026** Published

**3 min** Read

![Cover card reading 'How to Scrape Instagram Profiles and Posts'](/blog/covers/instagram-scrape-profiles.png)

**To scrape an Instagram profile’s posts, put the profile URL, such as `https://www.instagram.com/nike/`, in the `startUrls` input of apidojo’s [Instagram Scraper](https://apify.com/apidojo/instagram-scraper) on Apify, and set `maxItems`.** Each result is a post with its caption, date, likes, comments, media and location, plus an `owner` object with the account’s followers, following and post count. For profile details on their own, such as bio, website and business category, use apidojo’s [Instagram User Scraper](https://apify.com/apidojo/instagram-user-scraper).

Profile data answers questions like “how does this creator perform?” and “what does this competitor post?”. This guide covers both actors, the fields, the reels and tagged-post variants, and costs. The full overview is in [how to scrape Instagram data in 2026](/blog/instagram-scraping/how-to-scrape-instagram/). What people say under those posts is covered in [how to scrape Instagram comments](/blog/instagram-scraping/scrape-comments/).

## Which apidojo Actor Should You Use?

**Use the Instagram Scraper for an account’s posts and the User Scraper for an account’s profile details.** The table compares them (Apify, Apify).

| Need | Actor | Input | Price |
| --- | --- | --- | --- |
| Posts and reels from a profile | Instagram Scraper | Profile, reels or tagged URLs in startUrls | $0.50 per 1,000 posts |
| Bio, website, category, public email | Instagram User Scraper | handles, startUrls or userIds | $0.01 per profile |
| Profiles matching a keyword | Instagram User Scraper | keywords | $0.02 per search, first 40 profiles included |

## How Do You Scrape a Profile’s Posts?

**Add the profile URL and a cap, then run the Instagram Scraper.** Each profile should return at least 10 posts (Apify).

```
{
  "startUrls": [
    "https://www.instagram.com/nike/",
    "https://www.instagram.com/adidas/"
  ],
  "until": "2026-07-01",
  "maxItems": 400
}
```

`until` keeps only posts newer than the date. Avoid a very near date, which makes runs inefficient. To scrape only an account’s reels, use `https://www.instagram.com/username/reels/`, and for posts the account is tagged in, `https://www.instagram.com/username/tagged/` ([Apify](https://apify.com/apidojo/instagram-scraper-api)).

## What Data Does Each Post Contain?

**Each post comes with its content, engagement, media and the owner’s profile summary.** The fields below come from the Instagram Scraper’s output example (Apify).

| Field | Contains |
| --- | --- |
| url, code, createdAt | Post link, shortcode and publish time |
| caption | Caption text, with hashtags and mentions |
| likeCount, commentCount | Engagement counts |
| isPinned, isPaidPartnership | Pinned and paid-partnership flags |
| isVideo, video.playCount, video.duration | Video flag, plays and length |
| image.url, video.url | Media links |
| location | Place name and coordinates, for geo-tagged posts |
| owner | username, fullName, isVerified, followerCount, followingCount, postCount |
| coowners | Collaborators on a joint post |

## How Do You Get Profile Details?

**For bios, websites, categories and public business emails, run the User Scraper with handles and both list options off.** `getFollowers` and `getFollowings` are on by default, so switch them off for profile details only (Apify).

```
{
  "handles": ["nike", "adidas"],
  "getFollowers": false,
  "getFollowings": false
}
```

Each profile returns fields such as `biography`, `website`, `bioLinks`, `category`, `isBusiness` and `publicEmail`, where the account shows them. Follower lists are covered in [how to scrape Instagram followers and following lists](/blog/instagram-scraping/scrape-followers/).

## How Do You Turn Posts Into Account Benchmarks?

**Group the posts by `owner.username` and compute median likes, comments and engagement rate.** Medians are safer than averages, because one viral post skews an average. The formula and benchmarks are in [how to calculate Instagram engagement rate](/blog/instagram-analytics/engagement-rate/), and tracking accounts over time in [how to track competitors on Instagram](/blog/instagram-scraping/track-competitors/).

## What Does Scraping Instagram Profiles Cost?

**At $0.50 per 1,000 posts, 20 accounts with 100 posts each cost $1 on the Instagram Scraper; profile details cost $0.01 per account, plus $0.0005 for each profile returned, on the User Scraper.**

| Job | Actor | Cost |
| --- | --- | --- |
| 20 accounts, 100 posts each | Instagram Scraper | $1.00 |
| 200 profiles, details only | Instagram User Scraper | $2.10 |
| 1,000 profiles found by 5 keyword searches | Instagram User Scraper | About $0.50 |

The last row works out as 5 searches at $0.02, plus 800 profiles beyond the 200 included at $0.0005 each (Apify). The TikTok counterpart is [how to scrape TikTok profiles and their videos](/blog/tiktok-scraping/scrape-profiles/).

## The scrapers behind this

-   [Instagram Scraper Posts and reels from profiles, hashtags, locations and audio URLs; 100–200 posts/sec $0.50 / 1K posts](/scrapers/instagram-scraper/)
-   [Instagram Profile Scraper Profiles, followers, following and public emails; 40 profiles free per search $0.01 / profile + $0.50 / 1K](/scrapers/instagram-user-scraper/)

## Questions people ask

### Can you scrape a private Instagram profile?

No, private profiles' posts aren't public, and the User Scraper documents that it can't read them.

### Can you scrape an account's stories?

apidojo's Instagram Scraper API can fetch a user's active stories with its `getStories` option (Apify).

### Can you scrape every post on a profile?

Yes, leave `maxItems` empty or set it above the account's post count.

### Where do you start?

At [how to scrape Instagram data in 2026](/blog/instagram-scraping/how-to-scrape-instagram/).

## More on scraping Instagram data

-   [How to Scrape Instagram Data in 2026 What Instagram data you can scrape, the 3 ways to collect it, which apidojo actor fits each task, limits, costs and Python code.](/blog/instagram-scraping/how-to-scrape-instagram/)
-   [How to Scrape Instagram Posts by Hashtag or Keyword Scrape Instagram hashtag posts and reels or keyword searches, compare apidojo's two actors, and see real costs per 1,000 posts.](/blog/instagram-scraping/scrape-hashtags/)
-   [How to Scrape Instagram Comments Scrape comments from any public Instagram post with apidojo's comment actors, with inputs, fields, costs and what to do with the data.](/blog/instagram-scraping/scrape-comments/)
-   [How to Scrape Instagram Followers and Following Export public Instagram follower and following lists, with the inputs, fields, verified-account limit and real costs per user.](/blog/instagram-scraping/scrape-followers/)
-   [How to Scrape Instagram Location Data Scrape posts tagged at Instagram locations with apidojo's actors, with inputs, location fields, costs, uses and limits.](/blog/instagram-scraping/scrape-locations/)
-   [How to Scrape Instagram Reels and Audio Scrape a creator's reels, every reel using a sound, or a hashtag's reels, with play counts, durations, costs and uses.](/blog/instagram-scraping/scrape-reels-audio/)
-   [How to Collect Instagram Data With Python A Python script that collects Instagram posts, comments and author profiles with apidojo's actors, then cleans and saves them.](/blog/instagram-scraping/instagram-python/)
-   [Instagram Scraping Limits: Pagination and Blocks The documented limits of apidojo's Instagram actors, how pagination works, what gets runs blocked, and fixes for missing results.](/blog/instagram-scraping/limits/)
-   [Instagram profiles: search or handle lookup? A keyword search costs $0.02 and brings forty profiles. A handle lookup costs $0.01 and brings one. The right choice depends on what you already know.](/blog/instagram/instagram-keyword-vs-handle/)
-   [Measuring a campaign hashtag inside its own window A hashtag query costs $0.016 and brings sixty items with it. That allowance is per hashtag, which decides how you should slice a campaign.](/blog/instagram/instagram-campaign-hashtag-window/)
-   [What replyCount tells you before you pay Instagram comments are billed per post plus per comment, and reply threads are comments too. The top-level replyCount is your estimate, free.](/blog/instagram/instagram-reply-threads-cost/)

![apidojo](/blog/authors/apidojo.png)

## [Apidojo](/blog/authors/apidojo/)

15+ years of experience in data retrieval.

API Dojo is always ready for you. With 15+ years of experience, data acquisition has never been that easy. Cheapest prices with high availability.

-   🏯 15+ years of experience in data retrieval.
-   💰 Cheapest prices, qualified data.
-   ⚙️ High availability, extreme maintenance.
-   🐉 Hyper communicative, excellent support.

-   [apify.com](https://apify.com/apidojo)
-   [x.com](https://x.com/apidojo_)
-   [github.com](https://github.com/apidojo-io)
