Instagram Hashtag Scraper - Posts & Reels, $0.40/1k avatar

Instagram Hashtag Scraper - Posts & Reels, $0.40/1k

Pricing

$0.40 / 1,000 post returneds

Go to Apify Store
Instagram Hashtag Scraper - Posts & Reels, $0.40/1k

Instagram Hashtag Scraper - Posts & Reels, $0.40/1k

Track any hashtag for a flat $0.40 per 1,000 posts - the cheapest Instagram hashtag scraper on the market, at the same rate on every plan. Every row: caption, hashtags, mentions, likes, comments, video views, image and video URLs, owner and timestamp. Failed runs free. Bring your own session cookie.

Pricing

$0.40 / 1,000 post returneds

Rating

5.0

(1)

Developer

Dami's Studio

Dami's Studio

Maintained by Community

Actor stats

0

Bookmarked

8

Total users

3

Monthly active users

a day ago

Last modified

Share

⚡ Instagram Hashtag Scraper — Posts by Hashtag

Pull top & recent posts under any Instagram hashtag and get back clean, flat records — caption, like & comment counts, media URLs, owner, hashtags, mentions and timestamp. Feed it a list of hashtags (or /explore/tags/ URLs), set a cap, and export to JSON, CSV or Excel, hit it from the API, or have results delivered straight to Notion. Just $0.40 per 1,000 posts — billed only for posts actually returned.

Instagram gates hashtag feeds behind a login. This actor handles that the same way every paid IG service does — you supply one or more throwaway-account sessionid cookies and it rotates the account pool + a large pool of exit addresses for you. No app, no bearer token, no business API approval.

Why this scraper wins

  • 🍪 Account-pool rotation — add several throwaway sessionid cookies and the actor cycles accounts and fresh exit addresses every few hops, so one flagged session never sinks the run.
  • 🌐 Proxy handled for you — rotating Apify datacenter addresses plus a pool of static addresses, hopped on every block. Included in the run cost; no metered per-gigabyte proxy to pay for. Leave the default and it just works.
  • 💸 Flat $0.40 / 1,000 posts — charged per post returned, with no volume tiers. Empty or blocked runs cost nothing.
  • 🧹 Clean, flat output — one tidy record per post, ready for spreadsheets, dashboards or LLM pipelines. No raw nested soup.
  • 🔁 Auto-dedupe — the same post is never returned (or charged) twice in a run.
  • 📬 Built-in delivery — optionally push every run straight into Notion via Apify connectors, zero extra code.
  • 🚦 Honest errors — if Instagram blocks or returns nothing, you get a clear errorCode diagnostic row (RATE_LIMITED, BLOCKED, NO_RESULTS) instead of silent emptiness.

What you can scrape

ModeInputNotes
Hashtag feedhashtags (with or without #)Top and recent posts under each tag
Hashtag URLsstartUrls (/explore/tags/<tag>/)Same as above, paste-friendly

Input

  • hashtags — list of hashtags to scrape, e.g. nature, travel (the # is optional).
  • startUrls — or paste https://www.instagram.com/explore/tags/<tag>/ URLs instead.
  • resultsLimit — max posts per hashtag (default 50, up to 2000). You pay per post.
  • sessionCookies (required) — one or more logged-in sessionid cookies from throwaway accounts; the actor rotates them. From a logged-in instagram.com: F12 → Application → Cookies → copy the sessionid value. Paste one per line.
  • proxyConfiguration — leave the default (rotating Apify datacenter addresses). You can paste your own proxy servers instead and they are used as-is; metered residential groups are not offered by this actor.
  • notionConnector / notionParentId — optional, deliver results to a Notion data source.

Output (one record per post)

{
"ok": true,
"type": "image",
"shortCode": "C1aBcDeFgHi",
"url": "https://www.instagram.com/p/C1aBcDeFgHi/",
"caption": "Golden hour over the fjord 🏔️ #nature #travel",
"hashtags": ["nature", "travel"],
"mentions": [],
"likesCount": 18423,
"commentsCount": 204,
"videoViewCount": null,
"displayUrl": "https://instagram.fxxx.fna.fbcdn.net/v/....jpg",
"videoUrl": null,
"images": ["https://instagram.fxxx.fna.fbcdn.net/v/....jpg"],
"isVideo": false,
"dimensions": { "height": 1080, "width": 1080 },
"ownerUsername": "wanderlust",
"ownerId": "1789456123",
"timestamp": "2026-06-21T07:14:02.000Z",
"hashtag": "nature"
}

Pricing

$0.40 per 1,000 posts ($0.0004 each), with no run-start fee. Flat rate — no volume tiers, no plan gates — and you are charged only for posts actually returned.

That flat $0.40 is charged on every Apify plan, including the free one. The category leader, apify/instagram-hashtag-scraper (8,906 monthly users), charges $2.60 per 1,000 on the tier a new account lands on and $1.40 per 1,000 even on its cheapest volume tier. Duplicates are removed before charging, and failed, blocked or empty runs cost nothing.

Price change on 19 August 2026: the per-post price stays at $0.0004, and a $0.001 run-start fee is added to each run from that date.

FAQ

Why do I need sessionid cookies? Instagram's hashtag feed is login-gated — there is no keyless path. This is exactly how every paid IG hashtag service works. Use throwaway accounts and add several for resilience.

How many cookies should I add? More is better. The actor rotates accounts every few IP hops, so 3–5 throwaway sessions keep success rates high on sustained runs.

Do I need to configure a proxy? No. The actor rotates its own exit addresses and hops on every block, and that is included in the run cost. If you have your own proxy servers you can paste them in proxyConfiguration and they will be used exactly as given.

It returned an errorCode row — why? That's the actor telling you exactly what happened (RATE_LIMITED, BLOCKED, NO_RESULTS) instead of failing silently. Add more sessions, lower volume, or retry.

Can I deliver to Notion? Yes — set notionConnector and notionParentId and every run lands in your Notion data source automatically.

What does a 2,000-post run cost? $0.80 today. From 19 August 2026, $0.801 — the extra $0.001 is the run-start fee, charged once per run however many posts come back.