Bluesky Mentions Monitor - Keyword & Brand Tracker avatar

Bluesky Mentions Monitor - Keyword & Brand Tracker

Pricing

from $2.00 / 1,000 bluesky posts

Go to Apify Store
Bluesky Mentions Monitor - Keyword & Brand Tracker

Bluesky Mentions Monitor - Keyword & Brand Tracker

Track Bluesky posts that mention your brand, keywords or hashtags. Exact phrase, OR and -exclude queries, since-date, only-new alerts, author followers, engagement, language and sentiment. Official public API, no login.

Pricing

from $2.00 / 1,000 bluesky posts

Rating

0.0

(0)

Developer

MonRiah Studio

MonRiah Studio

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 hours ago

Last modified

Share

Bluesky Mentions Monitor – Keyword & Brand Tracker

A 100-result test run with the default input (mentions of Apify and web scraping from the last 7 days) costs about $0.20 ($0.002 per result, plus a $0.00005 start fee). Apify's free plan includes monthly platform credit.

Bluesky Mentions Monitor tracks Bluesky posts that mention your brand, product, competitors, keywords or hashtags and turns them into a clean dataset. Each row has the post URL and text (plus link-card title), author handle and display name, author follower count, likes, reposts, replies and quotes, language, and a simple sentiment tag. Schedule it with Only new posts since last run to get a brand-mention alert feed for Slack, email, Google Sheets, Zapier, Make or n8n.

It uses Bluesky's official public API (api.bsky.app): no login, no API key, no cookies, no proxy.

Why use this Bluesky monitor?

  • Brand monitoring built in. Enter Acme Inc, @acme.bsky.social or acme.com and the Actor runs the right searches: exact phrase, mentions: and domain: (posts linking to your site). It then merges and dedupes the results.
  • Real query syntax: "exact phrase", -exclude, OR (each side is searched separately, then merged), plus Bluesky operators from:, mentions:, domain: and lang:.
  • Since-date filter (absolute date or 24 hours / 7 days) is applied server-side where Bluesky allows it, and always client-side.
  • Only-new alerts: cross-run dedupe, so scheduled runs return and bill only for posts you haven't seen.
  • Reach and engagement: author followers, following and post counts (batched public getProfiles), likes, reposts, replies, quotes and an engagement total. Filter by minLikes or minFollowers.
  • Sentiment: a transparent, rule-based positive / negative / neutral / mixed tag with a score.
  • Which query matched: matchedQueries, matchedBrands and matchedHashtags on every row, so one run can track several brands.
  • Works on empty input. Every field has a default, and {} runs a demo search in seconds.

How to use it

  1. Click Try for free.
  2. Add keyword queries, brands (names, @handles, domains) and/or hashtags.
  3. Set Posted since (default 7 days), and optionally a language or minimum followers.
  4. Click Start. Typical runs finish in under 30 seconds.
  5. For alerts: create a Schedule (e.g. hourly), turn on Only new posts since last run, and add an integration or webhook.

Input example

{
"queries": ["apify", "\"web scraping\" OR crawlee"],
"brands": ["apify.com"],
"hashtags": [],
"excludeKeywords": [],
"sinceDate": "7 days",
"language": "",
"sort": "latest",
"maxResults": 100,
"includeReplies": true,
"minLikes": 0,
"minFollowers": 0,
"fetchAuthorProfiles": true,
"onlyNewSinceLastRun": false
}

If queries, brands and hashtags are all empty, the Actor searches apify and "web scraping" from the last 7 days as a demo.

Output example

{
"postUrl": "https://bsky.app/profile/ranovam.bsky.social/post/3myap7aoson2r",
"text": "Flarum Forum Scraper\n\nSearch or monitor any Flarum-powered forum — not social media. Clean discussion JSON with replies, participants, dates, canonical URLs. Free to start, API & MCP ready.\n\nhttps://apify.com/enezli/flarum-scraper\n\nDisclosure: our tool, a paid Apify actor.",
"linkTitle": null,
"linkDescription": null,
"createdAt": "2026-10-19T18:00:34.708Z",
"authorHandle": "@ranovam.bsky.social",
"authorDisplayName": "Ranova",
"authorFollowers": 8,
"authorFollowing": 1,
"authorPostsCount": 33,
"authorProfileUrl": "https://bsky.app/profile/ranovam.bsky.social",
"authorDid": "did:plc:x7fuip3nnerzvlr6g7naebvi",
"likeCount": 0,
"repostCount": 0,
"replyCount": 0,
"quoteCount": 0,
"engagementTotal": 0,
"language": "en",
"languages": ["en"],
"sentiment": "positive",
"sentimentScore": 1,
"matchedQueries": ["apify"],
"matchedBrands": ["apify.com"],
"matchedHashtags": [],
"hashtags": [],
"mentions": [],
"links": ["https://apify.com/enezli/flarum-scraper"],
"isReply": false,
"replyToUri": null,
"isQuote": false,
"hasMedia": true,
"postUri": "at://did:plc:x7fuip3nnerzvlr6g7naebvi/app.bsky.feed.post/3myap7aoson2r",
"isNew": null,
"scrapedAt": "2026-10-19T19:23:58.441Z"
}

The key-value record SUMMARY lists each search that was run, posts fetched, duplicates merged, sentiment counts and cappedQueries (searches that had more matches than could be returned).

Limits of the public API (please read)

  • At most 100 posts per search per run. Without a login, Bluesky's public AppView serves only the first page of search results (up to 100 posts). Requesting the next page returns HTTP 403, so this Actor does not paginate and doesn't try to work around the limit.
  • In practice: for niche brands and keywords, 100 posts usually covers days or weeks. For big terms, narrow the search (sinceDate, language, exact phrases, -exclusions) and/or schedule frequent runs with Only new posts so that, over time, you capture everything. SUMMARY.cappedQueries tells you which searches hit the cap.
  • Each OR branch and each brand variant is a separate search with its own 100-post window, so splitting a query widens coverage.
  • Bluesky rejects since: on searches that contain only operators (#tag, domain:, mentions:). For those, the Actor fetches the newest 100 and filters dates itself.
  • Engagement and follower counts are snapshots taken at scrape time. Sentiment is lexicon-based, so sarcasm and slang can be misread. Use it for triage, not as ground truth.
  • Only public posts are returned. Deleted posts disappear from search. Not affiliated with Bluesky Social PBC.

Pricing

Pay per result: $2.00 per 1,000 posts delivered (result event). Duplicates, filtered-out posts and posts skipped by Only new posts are not charged.

Use from an AI agent

You can give this Actor to an AI agent as a tool through the Apify MCP server (https://mcp.apify.com), from Claude, Cursor, VS Code and other MCP clients. Add the server with only this Actor loaded:

{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com?tools=monriah-studio/bluesky-mentions"
}
}
}

On first connection your browser opens to sign in to Apify (OAuth). Or add "headers": { "Authorization": "Bearer <APIFY_TOKEN>" } to use your API token instead. Then ask your agent something like "Find Bluesky posts mentioning Apify from the last week".

You can also call it directly via the Apify API, for example to run it and get the results in one request:

curl -X POST "https://api.apify.com/v2/acts/monriah-studio~bluesky-mentions/run-sync-get-dataset-items" \
-H "Authorization: Bearer $APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"queries": ["apify"],
"sinceDate": "7 days",
"maxResults": 50
}'

More actors from MonRiah Studio