Instagram Profile Posts Scraper avatar

Instagram Profile Posts Scraper

Pricing

from $0.50 / 1,000 results

Go to Apify Store
Instagram Profile Posts Scraper

Instagram Profile Posts Scraper

Scrape public Instagram profile posts back to a date. Returns likes, comments, captions, hashtags, media URLs, owner info, follower counts, and optional play counts.

Pricing

from $0.50 / 1,000 results

Rating

0.0

(0)

Developer

Mark Pandit

Mark Pandit

Maintained by Community

Actor stats

0

Bookmarked

4

Total users

2

Monthly active users

5 days ago

Last modified

Categories

Share

Collect public posts and reels from Instagram profiles, starting at the newest and stopping at a date you choose. Posts from the Posts tab and the Reels tab are combined into one row per post. Each row in the dataset is one post.

Setup

Profiles. One profile per line. A username, @username, or a profile URL all work.

username
@another_username

Scrape till date. Posts from this date onward are saved. Anything older is left out.

Include video play counts. On by default. Also reads the Reels tab and merges it with the Posts tab. The same reel is saved once, and that row keeps its play count when the public Reels page includes one. A reel that was not shared to the profile grid is still included when it is on that page. Videos without a play count are still saved. Turn it off to scrape the Posts tab only; play counts will be empty.

Max posts per profile. Stops that profile once this many posts are saved.

Max posts for the entire run. Stops the whole run once this many posts are saved. Later profiles are skipped.

Session proxy. Leave the residential proxy on. Instagram expects the same connection for the whole run.

Fallback proxy. Used only when the session proxy is turned off.

Optional login

A run works without an account. For higher rate limits and steadier follower counts, set the IG_SESSIONID environment variable to a logged-in Instagram sessionid cookie.

Results

One dataset item per post.

FieldWhat it is
idInstagram media id
typeImage, Video, or Sidecar
shortCodeCode used in the post URL
urlPublic post or reel link
captionCaption text
hashtagsHashtags from the caption
mentions@mentions from the caption
commentsCountComment count
likesCountLike count
videoPlayCountPlay count for reels and videos, when play counts are turned on
timestampPublish time (UTC)
displayUrlThumbnail or main image
videoUrlDirect video file, when the post has one
imagesCarousel image URLs
ownerUsernameProfile username
ownerFullNameProfile display name
ownerIdProfile id
productTypeInstagram format, such as clips or feed
isPaidPartnershipPaid partnership
isCommentsDisabledComments turned off
hasAudioAudio present
dimensionsHeight / dimensionsWidthOriginal media size
locationNameLocation, when the post has one
musicInfoReel audio details, when Instagram includes them
followersCountFollower count for the profile, when available
inputUrlProfile you asked for

Pinned posts are included and sorted by publish time with everything else. The Posts tab and the Reels tab are combined, and the same post is saved once.

These are left out of the results:

  • Full comment threads
  • Related accounts, highlights, and IGTV catalogs
  • Details Instagram does not show on the public profile

Limits

  • Public profiles only.
  • Both post caps apply. Once the run cap is reached, remaining profiles are skipped.
  • Media links expire. Download files you need to keep.
  • Likes, comments, and play counts can change after the run.
  • If Instagram rate-limits the run, add IG_SESSIONID.

Responsible use

This collects publicly visible posts only. Use the results in line with the law, privacy rules, and Instagram’s terms.