Instagram Mentions Scraper avatar

Instagram Mentions Scraper

Pricing

from $1.99 / 1,000 results

Go to Apify Store
Instagram Mentions Scraper

Instagram Mentions Scraper

Extract all Instagram mentions from public profiles with the Instagram Mentions Scraper. This Apify actor collects tagged mentions, usernames, captions, and post URLs—perfect for tracking brand visibility, influencer activity, or audience engagement on Instagram efficiently.

Pricing

from $1.99 / 1,000 results

Rating

5.0

(7)

Developer

Scraper Engine

Scraper Engine

Maintained by Community

Actor stats

1

Bookmarked

54

Total users

12

Monthly active users

5 days ago

Last modified

Share

Instagram Mentions Scraper — Author, Caption & Engagement Data

Instagram Mentions Scraper extracts every public post where another account tagged or @-mentioned a target Instagram handle — not the handle's own posts, but who is publicly talking about it. Each row returns the mentioning author, caption, hashtags, likes, comments, and media URLs as clean, structured JSON — no HTML parsing required. Run it directly on Apify to start tracking inbound mentions of any public handle.

What is Instagram Mentions Scraper?

Instagram Mentions Scraper is an Apify Actor that pages Instagram's public tagged (usertags) reverse-feed for one or more handles and returns every post authored by someone else that tagged or mentioned that handle. It runs logged-out by default — no Instagram account or login is required — and accepts an optional sessionId cookie only as a fallback for handles that get rate-limited. It's built for social-listening teams, brand-monitoring and influencer-marketing tools, and developers who need inbound-mention data fed into a pipeline or agent without maintaining browser automation themselves.

What Instagram mention data is publicly available to scrape?

Instagram exposes tagged/mention data for public accounts without requiring a login — that's the surface this Actor reads.

Data CategoryPublicly AvailableRestricted behind login/platform limit
Feed posts tagging a public handleYes — via the tagged/usertags reverse-feed
Mentioning author (username, full name, verified status)Yes
Caption, hashtags, and @mentions parsed from the captionYes
Engagement counts (likes, comments, video plays)Yes, as exposed by the feedSome authors disable like/view counts — hidden at the source
Post media (images, dimensions, carousel items)Yes
Mentions on private accountsNoPrivate account — requires login as an approved follower
Story mentions (24-hour tags)NoStories are ephemeral and not part of the tagged-posts feed
Exact post timestampPartialReverse-feed nodes frequently omit taken_at — returned as null, never a fabricated date

Instagram Mentions Scraper only returns publicly visible data — what any visitor sees. Nothing behind a login wall.

What data can I extract with Instagram Mentions Scraper?

Instagram Mentions Scraper returns 26 fields per mention post, covering the tagged post itself, the author who mentioned the target, and the post's engagement and media.

Field NameDescription
targetUsernameThe handle whose inbound mentions this row belongs to
postTypeAlways inbound_mention
idInstagram's numeric media ID
typeMedia type: Image, Video, or Carousel
shortCodePost short code
urlCanonical post URL
captionFull caption text
hashtagsHashtags parsed from the caption
mentions@-handles parsed from the caption
locationNameLocation tag name, when present
productTypeInstagram product type (e.g. feed, clips)
timestampPost time in ISO format, or null when the feed omits it
scrapedAtISO time this run collected the row

Author & tagged-user fields

Field NameDescription
authorUsernameThe account that authored the mentioning post (never the target)
authorFullNameAuthor's display name
authorIdAuthor's numeric Instagram user ID
authorIsVerifiedWhether the author account is verified
taggedUsersEvery user tagged in the post (username, id, full_name, is_verified)

Engagement & media fields

Field NameDescription
commentsCountComment count as exposed by the feed
likesCountLike count as exposed by the feed
videoPlayCountVideo play count (video posts only)
displayUrlMain image/thumbnail URL
imagesAll carousel image URLs (carousel posts only)
dimensionsHeight / dimensionsWidthMedia dimensions in pixels
childPostsCarousel children (id, type, shortCode, url, dimensionsHeight, dimensionsWidth, displayUrl)

🤖 Add-on: Need additional Instagram data?

Pair this with Instagram Profile Scraper for the target's own bio, follower count, and post history, or Instagram Hashtag Scraper to see what's being posted under a related hashtag. If you need mentions enriched with GPS coordinates and Reels music metadata, Instagram Tagged & Mentions Posts & Location Scraper covers that variant.

How does Instagram Mentions Scraper differ from the official Instagram API?

Meta's Instagram Graph API can surface @mentions of an Instagram account, but only for a Business or Creator account you connect and authenticate yourself — it cannot look up inbound mentions of an arbitrary third-party public handle. Instagram Mentions Scraper works the other way: give it any public handle and it returns who is mentioning that account, with no account ownership or app approval required.

FeatureInstagram Graph APIInstagram Mentions Scraper
Accounts you can queryOnly your own connected accountAny public Instagram handle
Account type requiredBusiness or Creator account, linked via FacebookNone — runs logged out
SetupOAuth app, Meta App Review, Business Verification for advanced accessEnter handles and start the run
Mentions scopeMentions of your own connected account onlyInbound mentions of any public handle you choose
Approval processApp review cycle required before going liveNone
Output fieldsDocumented fields such as caption, media_url, media_type, timestamp26 fields covering author, caption, hashtags, engagement, tagged users, and media

Use the Graph API when you own the account and want a first-party, compliant integration inside your own app. Use Instagram Mentions Scraper when you need to monitor inbound mentions of any public handle — your own brand, a competitor, or an influencer — without an app-review process.

How to use Instagram Mentions Scraper

Instagram Mentions Scraper runs as an Apify Actor — no separate signup or API key beyond an Apify account is needed.

  1. Open the Actor's page in Apify Console (or the Apify Store).
  2. Provide the required username input — one or more Instagram handles or profile URLs, one per line.
  3. Optionally set resultsLimit (default 20) and enable a residential proxyConfiguration for the most reliable results.
  4. Start the run.
  5. Export the dataset as JSON, CSV, or Excel, or pull it via the Apify API.

How to scale to bulk Instagram mention extraction

username accepts an array, so a single run can process many handles at once — each handle's mentions land in the same dataset with targetUsername marking which handle they belong to. There's no separate bulk-upload input; add every handle you want to the same list and set resultsLimit for the depth you need per handle.

What can you do with Instagram mention data?

  • A brand-monitoring analyst uses authorUsername, caption, and hashtags to see who is talking about a brand and in what context, without relying on the brand's own posts.
  • A reputation-management team filters commentsCount and likesCount to flag high-engagement mentions that need a response before they escalate.
  • An influencer-marketing manager scans authorIsVerified and authorFullName across mention rows to spot which creators are already organically tagging a brand.
  • A UGC (user-generated content) team pulls displayUrl and images from mention posts to source reusable content, with url for attribution back to the original post.
  • An AI engineer feeds caption, hashtags, and authorUsername into an LLM-based sentiment or topic classifier, or indexes them into a RAG store to answer "who is mentioning us and how" from an agent.

How does Instagram Mentions Scraper handle rate limits and blocking?

Instagram Mentions Scraper impersonates a real Chrome browser at the TLS layer (via impit) instead of sending raw HTTP requests, and can route every request through Apify's residential proxy pool. If Instagram returns a 403, 429, or a redirect, the Actor rotates to a fresh residential proxy IP, rebuilds its client, and retries with exponential backoff capped at 8–12 seconds. Resolving a handle's user ID is retried up to 5 times, rotating proxies between attempts. If a single page of results fails 3 times in a row, the Actor stops paging that handle and moves to the next one rather than looping indefinitely — mention rows already collected and pushed for that handle are kept. When several handles are queued, the Actor pauses a few seconds between them to spread out request volume. It does not solve CAPTCHAs: if Instagram serves a persistent login wall across every retry, that handle is logged as failed and skipped rather than returning empty or invented data.

⬇️ Input

ParameterRequiredTypeDescriptionExample Value
usernameYesarrayOne handle per line — the accounts whose INBOUND mentions you want (posts by others that tagged/@-mentioned them). Handles only (no @) or full profile URLs.["nasa", "gopro"]
resultsLimitNointegerHow many inbound mention posts to collect per handle. 0 (or 10000+) means all available within platform limits. Values 1–11 are bumped to 12 (one page). Default 20.20
sessionIdNostringOptional Instagram sessionid cookie. The reverse-feed works logged-out; a logged-in cookie can help on rate-limited handles/IPs. Used only on requests, never written to the dataset.""
proxyConfigurationNoobjectApify Proxy configuration. Recommended to avoid rate limits — on a block, the Actor escalates to a residential endpoint automatically.{ "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] }

Example input

{
"username": ["nasa", "gopro"],
"resultsLimit": 20,
"sessionId": "",
"proxyConfiguration": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] }
}

⬆️ Output

Every run produces typed, normalized JSON with the same 26 fields across every mention post, exportable as JSON, CSV, Excel, or via the Apify API/dataset endpoint. Each row is charged once through the row_result event — the Actor doesn't push extra summary or error rows, so what lands in the dataset is exactly what's billed.

Example output

{
"targetUsername": "nasa",
"postType": "inbound_mention",
"id": "3701234567890123456",
"type": "Image",
"shortCode": "C_ExAmPle",
"url": "https://www.instagram.com/p/C_ExAmPle/",
"caption": "Amazing shot from @nasa today! #space #astronomy",
"hashtags": ["space", "astronomy"],
"mentions": ["nasa"],
"commentsCount": 12,
"likesCount": 340,
"videoPlayCount": 0,
"dimensionsHeight": 1080,
"dimensionsWidth": 1080,
"displayUrl": "https://scontent.cdninstagram.com/v/t51.../image.jpg",
"images": [],
"timestamp": "2026-07-09T18:00:00.000Z",
"childPosts": [],
"locationName": "",
"authorUsername": "some_space_fan",
"authorFullName": "Space Fan",
"authorId": "1783532650",
"authorIsVerified": false,
"productType": "feed",
"taggedUsers": [
{ "full_name": "NASA", "id": "528817151", "is_verified": true, "username": "nasa" }
],
"scrapedAt": "2026-07-25T12:00:00.000Z"
}

timestamp is returned as null on posts where Instagram's usertags feed omits taken_at, rather than a fabricated date.

How does it work?

For each handle, the Actor first resolves the target's numeric Instagram user ID from the public profile page and web API, using Chrome-TLS impersonation so requests present as a real browser. It then POSTs Instagram's tagged-posts GraphQL query (PolarisProfileTaggedTabContentQuery) and pages through the response using its cursor (end_cursor/has_next_page) until the requested number of mentions is collected or Instagram reports no more pages. Every result is a post authored by a different account than the target — the Actor never returns the target's own posts as if they were mentions. Requests can be routed through Apify's residential proxy pool, with automatic rotation on a block. Only publicly visible data is returned, and the output schema stays the same 26 fields regardless of Instagram UI or layout changes.

Integrations

Instagram Mentions Scraper runs on the Apify platform, so it works with anything that can call the Apify API or plug into Apify's existing integrations.

Calling Instagram Mentions Scraper programmatically

from apify_client import ApifyClient
client = ApifyClient("<APIFY_API_TOKEN>")
run_input = {
"username": ["nasa", "gopro"],
"resultsLimit": 20,
"proxyConfiguration": {"useApifyProxy": True, "apifyProxyGroups": ["RESIDENTIAL"]},
}
run = client.actor("scraper-engine/instagram-mentions-scraper").call(run_input=run_input)
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)

Works in Go, Ruby, Node.js, cURL — any language that can make an HTTP request.

MCP integration for AI agents

Instagram Mentions Scraper is reachable through Apify's official MCP server. Register it with any MCP-compatible client (Claude Desktop, Claude Code, Cursor) by running npx @apify/actors-mcp-server --tools scraper-engine/instagram-mentions-scraper with an APIFY_TOKEN environment variable set, then call the Actor as a tool from the agent.

No-code tools (n8n, Make, LangChain)

In n8n, use the HTTP Request node (or the Apify node) pointed at this Actor's run endpoint with your Apify API token. In Make, add an Apify module, select "Run Actor," and map username and resultsLimit from earlier steps in your scenario. In LangChain, wrap the Actor as a tool via the Apify integration so an agent can call it directly and pass the returned dataset items into a chain or vector store.

Scraping publicly visible Instagram data is generally lawful — this Actor only collects posts, captions, and author details that Instagram displays to any visitor without a login. Because mention rows include personal data about the authors who posted them (authorUsername, authorFullName, authorId), any storage or downstream use of that data can fall under GDPR or CCPA depending on where the data subjects and the user are located, so you need a lawful basis for collecting and retaining it. Consult legal counsel if your use case involves bulk storage of personal data.

Frequently asked questions

What Instagram mention fields does Instagram Mentions Scraper return?

It returns 26 fields per mention, including authorUsername, caption, hashtags, likesCount, and commentsCount — see the full fields table above for all of them.

Does Instagram Mentions Scraper require an Instagram account or login?

No. It runs logged-out by default against Instagram's public tagged-posts feed. A sessionId cookie is accepted only as an optional fallback for handles or IPs that get rate-limited.

How many mentions can I extract in one run?

resultsLimit controls it per handle — default is 20, and setting it to 0 (or 10,000+) fetches all available mentions. Internally the Actor pages up to 100 pages per handle at up to 12 mentions per page before stopping, so an unlimited run can return up to roughly 1,200 mentions per handle, platform availability permitting.

What happens if a handle has no public inbound mentions or its user ID can't be resolved?

The Actor retries user ID resolution up to 5 times with proxy rotation, and if it still can't resolve the handle, it logs an error and moves on to the next handle in the list — it returns 0 rows for that handle rather than stopping the whole run.

Can I scrape multiple Instagram handles at once?

Yes. Add multiple handles to the username array — each is processed in sequence and its mentions are written to the same dataset, distinguished by targetUsername.

Does Instagram Mentions Scraper work with Claude, ChatGPT, and other AI agent tools?

Yes. It's reachable through Apify's MCP server for MCP-compatible clients, and callable as a plain HTTP endpoint via the Apify API by any agent framework that can make a web request.

How does Instagram Mentions Scraper compare to other Instagram mention scrapers?

Many tools labeled as "mention" scrapers actually return a profile's own tagged or reshared posts. Instagram Mentions Scraper specifically filters to posts authored by a different account than the target — authorUsername is never equal to targetUsername — so every row is a genuine inbound mention rather than the handle's own feed relabeled.

Does Instagram Mentions Scraper return data in a format LLMs can use directly?

Yes. Output is typed, normalized JSON with consistent field names across runs — no HTML parsing or CSS selectors needed. Pass it directly to an LLM prompt, index it into a vector store, or feed it to an agent tool.

What happens when Instagram changes its layout or anti-bot system?

The Actor is maintained and its output schema is designed to stay stable across Instagram UI changes. No specific update turnaround time is guaranteed.

Can I use Instagram Mentions Scraper without managing proxies or browser infrastructure?

Yes. The Actor handles Chrome-TLS browser impersonation and, when enabled, Apify residential proxy rotation on your behalf — you don't need to run your own browser or proxy pool.

Which Instagram mention fields work best for AI training data and RAG indexing?

For RAG, index caption, hashtags, and authorFullName — the highest-information text fields. For training data, commentsCount, likesCount, and videoPlayCount are the most consistently structured numeric fields across records; all fields return as typed primitives (strings, numbers, booleans, arrays), never nested HTML.

Scraper NameWhat it extracts
Instagram Profile ScraperBio, followers, posts count, and verification status for any public Instagram profile
Instagram Hashtag ScraperPosts and reels tagged under a given hashtag or keyword
Instagram Reels Scraper Pay Per EventsReels metadata, engagement, transcript, and music info per account
Instagram Tagged Posts Scraper (Date & Engagement Analytics)Tagged posts with absolute post dates and derived engagement-rate analytics
Instagram Tagged & Mentions Posts & Location ScraperTagged/mentioned posts enriched with location, music metadata, and full carousel media
Instagram Related Person ScraperRelated and suggested profiles for creator-network mapping

Your feedback

Found a bug or missing a field? Open an issue from this Actor's page in Apify Console (Issues tab) or reach out through Scraper-Engine's Apify Store listing — reports are used to keep the Actor's output schema accurate as Instagram changes.