Instagram Latest Post Scraper & Activity Tracker avatar

Instagram Latest Post Scraper & Activity Tracker

Pricing

$19.00/month + usage

Go to Apify Store
Instagram Latest Post Scraper & Activity Tracker

Instagram Latest Post Scraper & Activity Tracker

Find the latest Instagram post date for up to 1,000 profiles. Monitor creator activity, export timestamps, captions and post URLs. No Instagram login required.

Pricing

$19.00/month + usage

Rating

0.0

(0)

Developer

Newbs

Newbs

Maintained by Community

Actor stats

4

Bookmarked

137

Total users

1

Monthly active users

7 hours ago

Last modified

Share

What does Instagram Latest Post Scraper do?

Find when an Instagram account last posted. Enter up to 1,000 public Instagram usernames or profile URLs and get the newest available post's date, URL, caption, media type, and profile details. No Instagram login or cookies are required.

Use this Instagram latest-post API for competitor monitoring, creator activity checks, content alerts, and finding inactive accounts. Results stream into an Apify dataset and can be exported as JSON, CSV, Excel, or other supported formats.

Quick start

  1. Click Try for free or Start and enter usernames such as dior and nike in Instagram profiles.
  2. Keep the default settings and start the run.
  3. Open Latest Post Times in the dataset. Check status, lastPostTimeISO, and latestPostUrl.
  4. Export the results, or save an Apify task to repeat the same profile checks.

Minimal API input:

{
"channel": ["dior", "https://www.instagram.com/nike/"]
}

Use the actual username: timberland, for example, is different from instagramTimberland. The Actor preserves the account you requested. Duplicate forms such as Dior, @dior, and its profile URL are checked once.

What you get

  • Latest public post time: Unix seconds and an ISO 8601 UTC date.
  • Post content: URL, shortcode, caption, thumbnail, and image/video/carousel type.
  • Activity: daysSinceLastPost for finding accounts that have not posted recently.
  • Profile and engagement details: display name, user ID, follower count, likes, and comments when Instagram exposes them.
  • Clear diagnostics: distinguish usable results, unavailable profiles, private accounts, empty profiles, and blocked requests.

The Actor compares timestamps across the posts returned by Instagram, so an older pinned post does not automatically become the latest result. postsExamined records how many candidates the response contained.

Example output

Illustrative values; live timestamps and available metadata vary:

{
"channel": "dior",
"inputChannel": "dior",
"profileUrl": "https://www.instagram.com/dior/",
"fullName": "Dior",
"userId": "550072490",
"followersCount": 46000000,
"latestPostShortcode": "EXAMPLE",
"latestPostUrl": "https://www.instagram.com/p/EXAMPLE/",
"latestPostType": "image",
"latestPostCaption": "Example caption",
"lastPostTime": 1789463440,
"lastPostTimeISO": "2026-09-15T09:10:40.000Z",
"daysSinceLastPost": 0,
"postsExamined": 6,
"latestPostLikesCount": 1200,
"latestPostCommentsCount": 25,
"source": "embed",
"status": "ok",
"usedProxy": false,
"requestCount": 1,
"responseTimeMs": 500,
"scrapedAt": "2026-09-15T10:00:00.000Z"
}

The original fields channel, lastPostTime, and lastPostTimeISO remain available for existing integrations. Optional metadata can be empty or null; it is not estimated.

Monitoring workflows

Receive alerts when a creator publishes

Save your input as an Apify task and schedule it. After a successful run, use an Apify integration or webhook to pass the dataset to Make, Zapier, or your own application. Compare each account's latestPostShortcode with the value saved from the previous run. Send an alert only when it changes. The Actor produces the data; configure alert delivery in your workflow.

Find inactive accounts

Filter for status = "ok" and daysSinceLastPost >= 30 to find accounts whose newest available public post is at least 30 days old. Exclude failed and private-profile rows, since missing public data does not establish inactivity.

Track competing brands

Run the same brand list at an interval appropriate for your needs. Save channel, lastPostTimeISO, latestPostUrl, and latestPostCaption in your spreadsheet or database. Historical comparisons require retaining previous exports or datasets.

Input settings

FieldDefaultDescription
channelRequiredUp to 1,000 usernames, @handles, or Instagram profile URLs. Comma/newline lists inside entries are also accepted. Post and Reel URLs are not profile inputs.
maxConcurrency20Profiles checked in parallel, from 1 to 50. Lower this if many requests are blocked.
requestTimeoutSecs10Timeout per HTTP request, from 3 to 30 seconds.
maxRetries0Extra proxy recovery rounds, from 0 to 3. Each round can make two requests. Increase to 1 for transient failures; more retries can increase time and proxy cost.
proxyResidential Apify ProxyDirect embed and API requests run first. Residential recovery is used only if needed and available. Custom HTTP/HTTPS proxy URLs are supported.
{
"channel": ["dior", "nike"],
"maxConcurrency": 20,
"requestTimeoutSecs": 10,
"maxRetries": 0,
"proxy": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
}
}

To disable proxy recovery, set proxy to {"useApifyProxy": false}. Residential proxy availability depends on your Apify account. Large lists over 1,000 entries are rejected with an explanation instead of being silently truncated.

Pricing

Check the Pricing tab for the price applicable to your run. The existing $19/month rental is scheduled to switch to $2 per 1,000 successful latest-post results at 02:20 UTC on September 16, 2026.

Under pay-per-result pricing:

  • A status: "ok" row with a post timestamp costs $0.002.
  • Failed, invalid, private, and confirmed empty-profile diagnostics incur no result fee.
  • Duplicate profiles are removed within a run; subsequent scheduled runs check and bill successful profiles again.
  • Apify compute, storage, data transfer, and proxy usage are billed separately.

For example, 100 successful latest-post results cost $0.20 in result fees, plus Apify usage. A run with 90 successful results and 10 diagnostics costs $0.18 in result fees, plus usage. These examples apply after the scheduled price change. The run's OUTPUT.pricing records the active model and event price; a rental run does not report a per-result charge.

API and exports

Run a small list and return its dataset items directly:

curl --request POST \
'https://api.apify.com/v2/acts/newbs~Latest-Post-Time-Instagram/run-sync-get-dataset-items?timeout=120&format=json' \
--header "Authorization: Bearer $APIFY_TOKEN" \
--header 'Content-Type: application/json' \
--data '{"channel":["dior","nike"]}'

For large lists, start asynchronously with POST /v2/acts/newbs~Latest-Post-Time-Instagram/runs. Poll GET /v2/actor-runs/{runId} and export GET /v2/datasets/{defaultDatasetId}/items?format=csv after completion. Include your bearer token on API requests. See the Apify API documentation for authentication and dataset export options.

The dataset includes Latest Post Times and Post Content views. The default key-value store's OUTPUT record contains profile counts, usable post results, status counts, requests, proxy attempts, timing, and billing details. succeeded counts resolved profiles, including private/empty statuses; postResults counts rows with usable post timestamps. At a spending limit, fewer rows may be written than profiles processed.

Troubleshooting and limitations

ResultMeaning and next step
okA public post timestamp was found. Use this row for activity monitoring.
private_or_no_public_postsInstagram identifies a private profile. Private posts cannot be retrieved.
no_posts_foundInstagram explicitly reports an empty public timeline.
invalid_inputSupply an actual username or profile URL, not a post URL or another website.
failed with not_found_or_unavailableCheck the spelling and whether the account is still available. Further proxy requests are skipped after a direct API 404.
failed with access_blocked, rate_limited, or timeoutRetry later, reduce concurrency, and check proxy configuration.
failed with incomplete_responseInstagram did not expose usable post data. This is not treated as proof that the account has no posts.

Does this download all posts, Stories, or followers?

No. It returns one latest-post result per profile. It is designed for lightweight public-profile activity monitoring. It does not paginate an account's entire history or retrieve private posts, Stories, or follower lists.

Is the latest post guaranteed to match the logged-in app?

The result is the newest timestamp among posts Instagram exposes in the public response. Instagram can cache or limit public previews, restrict particular accounts, or show different posts to logged-in users. The Actor cannot guarantee that an unavailable or omitted post is included.

Why is a thumbnail or follower count missing?

Instagram does not expose every field on every response. Thumbnail links can expire. The Actor returns available data without extra detail-page requests.

Support

For a reproducible problem, open an Actor issue or contact newbs.contact@gmail.com. Include the run ID, affected public username, and expected behavior. Do not include tokens or proxy passwords.