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.

Agentic Task
ApifyNotionSlack BotMarketingCustomer SupportResearch & MonitoringNotifications & AlertsFeedback Triage
PromptCreate

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).

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.

FAQs

Do I need a paid Twitter or X developer account?
No. The workflow uses an Apify scraper Actor to read public tweets, so you only need an Apify account and the credits to run the Actor. You do not need a Twitter or X API key.
Where do the mentions get saved?
Each relevant mention becomes a new page in a Notion database you choose. The page includes the author, sentiment, category, urgency, a link back to the tweet, and a one line summary, so it doubles as a searchable brand log.
Will it spam my Slack channel?
No. Slack only gets one short digest per run with the top three urgent items and counts for the rest. The full list lives in Notion, so the channel stays clean.
Can I track competitors too?
Yes. Add competitor names or hashtags to the keyword list and the same triage will apply. You can also route competitor mentions to a separate Notion view or Slack channel if you want them kept apart.
What if the Apify Actor returns no tweets?
The workflow logs the empty run and skips the Slack digest for that day, so a quiet news cycle does not create noise. You can opt in to a daily heartbeat message if you prefer confirmation that the job ran.

Related templates

A brand asset library your marketing team actually searches

Every logo, photo, video cut and ad export in one searchable grid, with previews, campaign tags and rights expiry dates at a glance.

General Input Storage
General Input Database
JigsawStack
+1
App
Turn Mailjet email clicks into ranked HubSpot follow-ups

Twice a day we spot the people clicking your pricing and demo pages, create a follow-up task for their owner, and post a ranked recap to Slack.

Mailjet
HubSpot
Slack Bot
Agentic Task
Clean out the Looker dashboards and Looks nobody opens

One board showing every dashboard and Look with its folder, owner and favorite count, so you can find dead content and retire it safely.

Looker
Slack Bot
App
LiveKit live operations console for room moderation

Watch every live room on one screen, remove disruptive guests, start recordings and end stuck sessions without anyone opening a terminal.

LiveKit
Slack Bot
General Input Database
App
Wake up dormant Keap leads with a researched reason

Every Monday we find leads who never bought, research a real reason to reach out, and send a short personal email instead of another check in.

Keap
Slack Bot
Agentic Task
LiveChat coverage board for planning next week's shifts

See the exact hours your chat queue backs up and customers give up waiting, then plan next week's shifts before it happens again.

LiveChat
Slack Bot
General Input Database
App

Catch every brand mention before your team logs on.

Connect Apify, Notion, and Slack once, and Geni triages yesterday's tweets every weekday morning.