Instagram Mentions Scraper: Sentiment Analysis
Pricing
Pay per usage
Instagram Mentions Scraper: Sentiment Analysis
Instagram Mentions Scraper extracts posts where a profile is mentioned, capturing captions, media URLs, timestamps, hashtags, and engagement metrics. Ideal for brand monitoring, UGC analysis, influencer research, and automating structured Instagram mention-based insights at scale.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
SimpleAPI
Maintained by CommunityActor stats
0
Bookmarked
13
Total users
0
Monthly active users
4 days ago
Last modified
Categories
Share
Instagram Mentions Scraper — Sentiment, Topics and Emoji Score
Instagram Mentions Scraper: Sentiment Analysis finds true inbound mentions — public posts where other accounts tag or @-mention your brand or profile — and scores every caption for sentiment, topics, hashtags, and emoji polarity, then rolls it all up into a per-target sentiment summary. It works logged-out by default. It's built for brand monitoring teams, social listening agencies, and PR teams who need to know how people are talking about a brand right now, not just how many times it was tagged.
What is Instagram Mentions Scraper: Sentiment Analysis?
Instagram Mentions Scraper: Sentiment Analysis is an Apify Actor that pulls the reverse usertags feed for one or more Instagram handles — posts by other accounts that tag or mention the target — and runs every caption through a deterministic sentiment/topic pipeline. It works logged-out via Chrome-TLS impersonation by default; an Instagram sessionId cookie is an optional fallback only used if a target returns nothing. Key capabilities:
- Track inbound mentions for one or many target handles in a single run
- Get keyless, deterministic caption sentiment (positive/negative/neutral), a numeric sentiment score, and emoji polarity — no API key required
- Extract per-caption topics, hashtags, and top emojis, rolled up into each target's summary row
- Optionally add LLM-based sentiment/emotion/topic grading on top of the keyless layer, using your own AI provider key
- Optional residential proxy rotation on connection errors
What data can I extract with Instagram Mentions Scraper: Sentiment Analysis?
| Field | Example Value | Use Case |
|---|---|---|
authorUsername / authorFullName | "happy_customer22" / "Alex Rivera" | Identify who mentioned the target |
caption / hashtags | "Loving my new @natgeo gear! 🔥" / ["#natgeo"] | Read the mention's full text and tags |
captionSentiment / captionSentimentScore | "positive" / 0.62 | Quick bucket plus a precise numeric score |
emojiSentiment | 0.8 | Isolate the emoji-only polarity signal |
captionLanguageGuess | "en" | Filter mentions by detected language |
captionTopics | ["gear", "outdoors"] | See what the mention is actually about |
likesCount / commentsCount | 214 / 12 | Gauge engagement on the mentioning post |
mentionCount / sentimentPositivePct / sentimentNegativePct / sentimentNeutralPct | 20 / 65.0 / 10.0 / 25.0 | Per-target sentiment split (summary rows only) |
topTopics / topHashtags / topEmojis | ["gear", "quality"] / ["#natgeo"] / ["🔥", "❤️"] | Recurring themes across all of a target's mentions |
avgEngagement | 140.5 | Average engagement across all mentions for this target |
aiSentiment / aiEmotion | "positive" / "excitement" | Optional LLM-graded sentiment/emotion (opt-in) |
Keyless sentiment, topic, and emoji scoring
captionSentiment, captionSentimentScore, emojiSentiment, and captionLanguageGuess come from a deterministic, rule-based lexicon and emoji-polarity scorer — no AI model or API key required, always on by default via analyzeCaptionSentiment. captionSentimentScore is a normalized value clamped to the -1.0 to 1.0 range. extractBrandTopics (on by default) adds per-caption topic extraction and rolls the most frequent topics, hashtags, and emojis into each target's summary row. This is genuine deterministic text analysis, not a black box — but like any rule-based system, it can miss sarcasm or context-dependent sentiment that a keyword lexicon can't capture.
Optional AI sentiment enrichment
aiEnhancement is a separate, fully optional layer: only populated when it's turned on and a valid AI provider key is supplied (aiApiKey, or a provider environment variable), an LLM grades each caption's sentiment, emotion, and topics. The keyless analytics above always run regardless of this setting. On any AI failure, aiSentiment/aiEmotion are returned as null — never a fabricated grade.
Why not build this yourself?
Instagram's Graph API only exposes a Business/Creator account's own tagged-media edge to that account's own access token — there's no endpoint for a third party to pull an arbitrary handle's inbound mentions, and no built-in sentiment scoring at all. Building an equivalent tool yourself means reproducing the reverse usertags feed retrieval (including the Chrome-TLS impersonation this Actor uses to work logged-out), and designing and tuning a deterministic sentiment/topic/emoji-polarity scoring pipeline from scratch. All of that is already implemented in this Actor's source.
How to use data extracted from Instagram?
Brand monitoring and PR teams
Track your brand's mentionedProfiles on a schedule and use sentimentPositivePct/sentimentNegativePct in the summary row as an early-warning signal — a sudden spike in negative sentiment is worth investigating before it becomes a larger issue.
Social listening agencies
Agencies monitoring multiple client brands can run one target per client and compare avgEngagement/topTopics across them to see which client's mentions are both more positive and more engaged, informing where to focus community-management effort.
Market and competitive research
Compare sentimentPositivePct and topTopics across a set of competitor handles to see which brand's organic mentions skew more positive and what themes drive that sentiment.
AI agents and automated pipelines
An agent can call this Actor to pre-screen inbound mentions before triggering an automated response workflow — filtering on captionSentiment and aiSentiment (if enabled) to route only the most urgent negative mentions to a human reviewer.
🔼 Input sample
| Parameter | Required | Type | Description | Example Value |
|---|---|---|---|---|
mentionedProfiles | No | array | Handles whose inbound mentions to track | ["natgeo"] |
maxMentions | No | integer (0-10,000) | Inbound-mention posts collected per target; 0 = all available | 20 (default) |
sessionId | No | string (secret) | Instagram sessionid cookie; optional fallback only | "(your session cookie)" |
proxyConfiguration | No | object | Apify Proxy; residential recommended | {"useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"]} |
analyzeCaptionSentiment | No | boolean | Keyless deterministic sentiment/emoji scoring | true (default) |
extractBrandTopics | No | boolean | Deterministic topic/hashtag/emoji roll-up | true (default) |
aiEnhancement | No | boolean | Optional LLM sentiment/emotion/topic grading | false (default) |
aiModel | No | string (enum) | AI provider/model for enrichment | "claude-haiku-4-5" (default) |
aiApiKey | No | string (secret) | Your own AI provider API key; falls back to a provider env var if empty | "(your API key)" |
{"mentionedProfiles": ["natgeo", "nike"],"maxMentions": 50,"analyzeCaptionSentiment": true,"extractBrandTopics": true}
Common pitfall: mentionedProfiles tracks INBOUND mentions only — posts by other accounts tagging the target, not the target's own posts. A handle with few or no organic mentions will simply return few or zero rows, not an error.
🔽 Output sample
Output is typed, normalized JSON with two row types per target: individual mention rows and one summary row (both charged under row_result, exportable as JSON, CSV, or Excel).
{"postType": "inbound_mention","isSummary": false,"targetUsername": "natgeo","ownerUsername": "happy_customer22","authorUsername": "happy_customer22","authorFullName": "Alex Rivera","authorId": "9871234567","authorIsVerified": false,"caption": "Loving my new @natgeo gear for the trip! 🔥","captionSentiment": "positive","captionSentimentScore": 0.62,"aiSentiment": null,"aiEmotion": null,"emojiSentiment": 0.8,"captionLanguageGuess": "en","captionTopics": ["gear", "outdoors"],"hashtags": ["#natgeo", "#adventure"],"likesCount": 214,"commentsCount": 12,"url": "https://www.instagram.com/p/Cxyz123/","timestamp": "2026-07-20T10:00:00.000Z","scrapedAt": "2026-07-26T14:02:11.000Z"}
Summary rows (isSummary: true) additionally carry mentionCount, sentimentPositivePct, sentimentNegativePct, sentimentNeutralPct, topTopics, topHashtags, topEmojis, and avgEngagement. All 30 fields shown across both row types are the Actor's real dataset columns, and both row types are charged the same row_result event — there is no separate uncharged accounting row in this Actor.
How do you filter and target specific mentions?
mentionedProfiles is the core targeting axis — supply one or many handles whose inbound mentions to track. There's no category or free-text query here since this is a direct reverse-lookup on a known handle, not a discovery search. The closest thing to a quality filter is post-hoc: filter your exported dataset on captionSentiment or sentimentPositivePct/sentimentNegativePct to isolate only positive or negative mentions. Volume is controlled by maxMentions per target (0 for all available within platform limits).
{ "mentionedProfiles": ["natgeo"], "maxMentions": 100, "aiEnhancement": true, "aiApiKey": "(your key)" }
{ "mentionedProfiles": ["nike", "adidas"], "maxMentions": 50, "extractBrandTopics": true }
{ "mentionedProfiles": ["natgeo"], "maxMentions": 0, "analyzeCaptionSentiment": true }
▶️ Want to try other Instagram scrapers?
| Scraper Name | What it extracts |
|---|---|
| Instagram Comments Scraper (Spam & Toxic Comment Detection) | Comparable deterministic moderation flags for comments |
| Instagram Related Hashtag Stats Scraper By Keyword Search | Related-hashtag statistics for a keyword |
| Instagram Hashtag Scraper: Content Planner | Hashtag posts plus best-time and topic planning |
| Instagram Profile Scraper & Account Privacy Checker | Full profile details plus privacy-status checking |
| Facebook Comments Scraper: Sentiment & Toxicity Analysis | Comparable sentiment/moderation scoring for Facebook comments |
| Facebook Groups Scraper: Sentiment & Lead Analysis | Comparable AI-based sentiment scoring for Facebook group posts |
How to extract Instagram data programmatically
Every run is a standard Apify Actor call — one API request with your token, JSON input, JSON results back.
Python example
from apify_client import ApifyClientclient = ApifyClient("<YOUR_APIFY_API_TOKEN>")run_input = {"mentionedProfiles": ["natgeo"],"maxMentions": 50,}run = client.actor("<YOUR_USERNAME>/instagram-mentions-scraper-sentiment-analysis").call(run_input=run_input)for row in client.dataset(run["defaultDatasetId"]).iterate_items():if not row.get("isSummary"):print(row["authorUsername"], row["captionSentiment"], row["captionSentimentScore"])
Export to spreadsheets or CRM
Export the dataset directly as CSV or Excel, then map authorUsername/caption to your monitoring-queue columns and captionSentiment/captionSentimentScore to a triage column for community-management review.
Is it legal to scrape Instagram mentions?
Author usernames, full names, and caption text are personal data, so GDPR and CCPA obligations apply to storing and using this data — the same as any social-listening or brand-monitoring dataset. Public Instagram posts tagging a handle are visible to any logged-out visitor, but downstream storage of individual users' post content for monitoring purposes should follow applicable data-protection rules. Consult legal counsel for commercial applications involving bulk storage of personal data.
❓ FAQ
How accurate is the sentiment scoring?
The keyless layer is a transparent, deterministic rule-lexicon and emoji-polarity scorer, not a black box — but it can miss sarcasm or context-dependent sentiment a keyword system can't capture. The optional AI layer (aiEnhancement) uses genuine LLM classification for more nuanced grading, but requires your own API key and returns null on any failure rather than a fabricated result.
Does this get the target's own posts, or posts about the target?
Only inbound mentions — posts by OTHER accounts that tag or @-mention the target handle. It does not scrape the target's own posts or profile.
How many mentions can I get per target?
maxMentions (0-10,000, default 20) caps this per target; 0 means all available within Instagram's own platform limits.
Do I need to be logged into Instagram to use this?
No — the inbound-mention feed is retrieved logged-out via Chrome-TLS impersonation by default. sessionId is only used as a fallback if a target returns nothing without it.
Are the summary rows charged the same as mention rows?
Yes — both mention rows and per-target summary rows are charged under the same row_result event. There's no separate uncharged accounting row to filter out in this Actor.
Does Instagram Mentions Scraper: Sentiment Analysis work with Claude, ChatGPT, and AI agent frameworks?
It has no dedicated MCP server registration in this Actor's current setup, but it is callable as a standard Apify API endpoint by any agent framework that can make an authenticated HTTP request and parse JSON.
How does this compare to other Instagram mention/sentiment scrapers?
No independently verifiable competitor listing could be confirmed at the time of writing, so no specific comparison is made here. This Actor's distinguishing feature is the always-on, keyless sentiment/topic/emoji scoring layered directly onto the raw mention scrape.
Can I use this without any AI provider key at all?
Yes — aiEnhancement is off by default, and the keyless sentiment/topic analytics (analyzeCaptionSentiment, extractBrandTopics) run with no API key required.
Conclusion
Instagram Mentions Scraper: Sentiment Analysis turns a raw inbound-mention feed into a scored, ready-to-triage brand-monitoring dataset — deterministic sentiment, topic, and emoji analysis computed at no extra cost, with optional AI grading layered on top. It's built for brand monitoring teams, social listening agencies, and PR teams who need to know how people feel about a brand, not just how often it's tagged. Start a run with your target handles to get mentions and sentiment analysis back in one pass.