Daily Twitter brand mention triage to Notion and Slack
Every weekday morning, find yesterday's tweets about your brand, sort complaints and praise, log them in Notion, and post the top three to Slack before stand-up.
Build an agent workflow that triages Twitter/X brand mentions every weekday morning and ends with a single Slack digest. Treat the brand name and the product keyword list as configurable inputs at the top of the agent instructions.
Trigger: cron, every weekday at 8:30am in the workspace's local time zone.
Step 1. Scrape the last 24 hours of tweets. Call Apify's "Run Actor Synchronously and Get Dataset Items" against a Twitter/X scraper Actor (default to apify~twitter-scraper, but let the user pick the Actor by ID or username~name in the agent inputs). Build the search query from the brand name plus each product keyword joined with OR. Pass a since/until window for the last 24 hours and a reasonable maxItems cap (default 200). Return the dataset items directly. If the Actor returns zero items, log it and skip steps 3 and 4 for the day.
Step 2. For each tweet, classify it into exactly one of: complaint, feature_request, praise, or noise. Drop everything classified as noise. For the rest, assign an urgency score from 1 (low) to 5 (critical). Bump urgency for: account-blocking or outage language, viral threads (high reply/retweet counts), replies coming from large accounts (follower count above a threshold the agent picks sensibly, e.g. 10k), and threads where the original tweet is from a paying-customer signal in the bio. Produce a one-line summary for each kept tweet (max 140 chars).
Step 3. For every kept tweet, call Notion's "Create a Page" against a brand-mentions database. The user supplies the database ID at setup. Set properties for: Author (the handle), Sentiment (complaint / feature_request / praise), Category (free-text, e.g. billing, onboarding, mobile), Urgency (1-5), Link (the tweet URL), and Summary (the one-line summary). Use the summary as the page title.
Step 4. Post a single Slack digest via Slack Bot's "Send a Message" to the channel the user picks at setup. Format: a one-line header with today's date and total relevant mentions, then the top 3 items ranked by urgency (each as a bullet with author, sentiment, summary, and the Notion page link), then a footer line counting the rest by category (e.g. "+12 more: 7 complaints, 3 requests, 2 praise"). Use Slack mrkdwn formatting. Do not post if there were zero relevant mentions.
Inputs the agent should expose at setup: brand name (string), keyword list (array of strings), Apify Actor ID (default apify~twitter-scraper), Notion database ID, Slack channel ID, optional follower-count threshold for the large-account urgency bump.
Error handling: if Apify returns a non-success run, post a single Slack alert to the same channel naming the failure and stop. If Notion page creation fails for one item, log and continue; do not block the rest of the run. Always finish by posting the Slack digest, even if some Notion writes failed (note any failures in the footer).
Additional information
What does this prompt do?
- Scans the last 24 hours of tweets that mention your brand name and a list of product keywords you control.
- Sorts each mention into complaint, feature request, praise, or noise, and ranks the urgent ones first.
- Saves every relevant mention to a Notion database with author, sentiment, category, urgency, link, and a one line summary.
- Posts a short Slack digest with the top three urgent items and a count of the rest, so your team can act before stand-up.
What do I need to use this?
- An Apify account with a Twitter or X scraper Actor selected (for example apify or scrapers Twitter scraper).
- A Notion workspace and a brand mentions database shared with your Notion connection.
- A Slack workspace and a channel the General Input bot can post in.
- Your brand name and a list of product keywords to track.
How can I customize it?
- Change the run time or run it twice a day, for example at 9am and again at 4pm.
- Swap in different keywords, hashtags, or competitor names to widen or narrow the search.
- Adjust how the agent decides urgency, for example always flag tweets from accounts above a follower count or tweets with rising reply counts.
- Pick a different Slack channel for the digest, or split complaints and praise into two separate channels.
Frequently asked questions
Do I need a paid Twitter or X developer account?
Where do the mentions get saved?
Will it spam my Slack channel?
Can I track competitors too?
What if the Apify Actor returns no tweets?
Catch every brand mention before your team logs on.
Connect Apify, Notion, and Slack once, and Geni triages yesterday's tweets every weekday morning.