Instagram User Posts Scraper avatar

Instagram User Posts Scraper

Pricing

from $0.20 / 1,000 results

Go to Apify Store
Instagram User Posts Scraper

Instagram User Posts Scraper

List recent public Instagram posts with captions, media types and publication times. Choose a public username and use the returned pagination cursor to continue through available posts.

Pricing

from $0.20 / 1,000 results

Rating

0.0

(0)

Developer

Scrappa

Scrappa

Maintained by Community

Actor stats

0

Bookmarked

62

Total users

2

Monthly active users

13 days ago

Last modified

Share

List recent public Instagram posts with captions, media types and publication times. Choose a public username and use the returned pagination cursor to continue through available posts.

What data can you extract?

Post and profile details reflect information visible on public Instagram pages; optional fields can be absent.

FieldTypeDescription
request_usernametextPublic account username passed to Instagram. This input value is copied into the output row; null when it was not supplied.
idtextsource ID for the Instagram post, assigned by Instagram; null when the source does not expose it.
usernametextUsername shown for the Instagram post by Instagram, in the format used by the source; null when it is omitted.
shortcodetextInstagram post shortcode for the Instagram post, assigned by Instagram; null when the source does not expose it.
media_typetextContent format, such as video, image or carousel; null when Instagram does not provide the value.
captiontextPost caption from Instagram for this Instagram post; null when the source has no text to show.
taken_atdateTime the photo was posted shown by Instagram, in ISO 8601 date and time; null if the source omits the date.
like_countnumberNumber of likes shown by Instagram, as a whole number; zero is possible, and null means no count was reported.
comment_countnumberNumber of comments shown by Instagram, as a whole number; zero is possible, and null means no count was reported.
play_countnumberNumber of video plays shown by Instagram, as a whole number; zero is possible, and null means no count was reported.
permalinklinkPermalink for this Instagram post on Instagram; null when the source does not provide a URL.

Use cases

  • Social teams can review public post captions and engagement details.
  • Brand researchers can compare post data while monitoring a campaign.
  • Creators can archive source-linked posts for a recurring content review.

How to use

  1. Open the Actor’s Input tab and start with the JSON below.
  2. Set username to the search term or source identifier you want to look up, then use the optional filters listed below.
  3. Start the run and open its default dataset to inspect or download the rows.
{
"username": "natgeo"
}

The run dataset can be downloaded as JSON, CSV, Excel or another format offered by Apify.

Input

FieldTypeRequiredDescription
usernamestringYesInstagram username without the @ symbol.
max_idstringNoOptional pagination cursor from a previous response's next_max_id field.

Output example

The record below is synthetic. Names and links are examples, and private contact fields are omitted.

{
"play_count": 18400,
"id": "17984273651028457",
"username": "riley.hart.studio",
"shortcode": "C9aKpWmR4tQ",
"media_type": "video",
"caption": "Three ways to style a vintage wool coat for fall. Which look is your favorite?",
"taken_at": "2026-09-25T09:15:00Z",
"like_count": 864
}

Pricing

Current live price: Apify Free tier: $0.30 per 1,000 results; Bronze: $0.25 per 1,000 results; Silver: $0.22 per 1,000 results; Gold, Platinum, and Diamond: $0.20 per 1,000 results.

Each saved dataset record counts as one result.

FAQ

This Actor is for information visible on the public source pages it reads. You are responsible for checking the source terms, privacy and copyright rules, and the laws that apply to your use.

How many records will a run return?

The result count depends on the input limits, pagination settings and what the source makes available. A small query or unavailable page can return fewer records, including none.

Can I call it through the API or connect it to other tools?

Yes. Send the same JSON input to POST https://api.apify.com/v2/acts/thescrappa~instagram-user-posts-cheapest-0-20-1000-results/runs, then read the run’s default dataset. Make, Zapier and n8n can start runs and pass dataset rows to the next step; Google Sheets can receive rows through those workflows or a dataset export.

What happens when a request fails?

Check the run log for the source or input error, correct the input and retry after a temporary source issue. A run can contain rows saved before a later request failed.

Can Instagram User Posts continue from an earlier page?

Use the public username and pass max_id from a previous response when one is provided. The profile must have accessible public posts.