Brand mention monitor

Use this skill when you need to know what people are saying about a brand across the web and social — "monitor brand mentions", "what are people saying about [brand] this week", "run a brand sweep", "social listening", "find high-risk mentions", or "how does [brand] compare to [competitor] in the conversation".

How to use it

Claude Code
  1. Run the line below. It pulls the whole folder into ~/.claude/skills/brand-mention-monitor.
  2. Describe your job in plain words. Claude Code follows the skill from there.
Claude Code — installs the whole folder, not just SKILL.md
npx degit swan-gtm/gtm-skills/skills/uri-knorovich/brand-mention-monitor#main ~/.claude/skills/brand-mention-monitor

For one project only, change the path to .claude/skills/brand-mention-monitor.

Claude (web or desktop app)
  1. On this page open ⋯ → Download .md.
  2. Save it as SKILL.md in a folder, zip the folder, then Customize → Skills → + → Create skill → Upload a skill.
  3. Pick the file and Save. Claude shows the name and description and runs a security scan.
  4. Check the skill is switched on.
  5. Start a new chat and describe your job in plain words. The AI follows the skill from there.
ChatGPT or another app
  1. ChatGPT: make a Project and paste it into Instructions.
  2. Neither? Paste it at the top of a new chat — it works for that chat.
Not working?
  • Check which app you pasted it into — the steps above name the right one.
  • Some skills need the paid tier of Claude or ChatGPT.
Step-by-step guide with screenshots · Ask in the forum

Paste into Claude, ChatGPT or Cursor.

Source of Brand mention monitor

Show the full text86 lines
nametitledescriptioncategorytags
brand-mention-monitorBrand mention monitor| Use this skill when you need to know what people are saying about a brand across the web and social — "monitor brand mentions", "what are people saying about [brand] this week", "run a brand sweep", "social listening", "find high-risk mentions", or "how does [brand] compare to [competitor] in the conversation". Sweeps social platforms, news, forums, and review sites; scores every mention on reach, velocity, sentiment, and risk-topic match; and produces a triage report bucketed into Crisis / Watch / Engage / Log with a suggested owner and response window for each mention, so the team responds before one spirals.Signals[Marketing]

Run this when anyone needs eyes on the brand conversation — a routine weekly sweep, a launch-week watch, or a "something feels off" check. It produces a triage report: every mention scored on four dimensions, deduped against what previous runs already found, and bucketed into Crisis / Watch / Engage / Log with an owner and a response window.

Before the sweep — resolve, profile, confirm

Do two research steps before asking the user anything:

  1. Resolve brand variants. Search the live web for the brand's alternate spellings, hashtags, handles, product names, and sub-brands that get mentioned independently. For common-word brand names, find the disambiguating terms (industry, founder, domain) so the sweep doesn't pull unrelated noise. Fold every confirmed variant into the query list silently — never ask the user to supply this.
  2. Profile the brand. Establish B2B vs B2C, industry, primary geography and language, and rough audience size. This picks the source profile and calibrates scoring — "high reach" means something different for a niche B2B tool than for a consumer app with millions of users.

Replace before enabling: {{CRISIS_OWNER}} (who gets flagged on a Crisis hit) and {{ALERTS_CHANNEL}} (the team channel, if any, for Crisis/Watch pushes).

Then confirm scope in a single message: the brand as you understood it plus any competitors to track alongside, the date window (default: last 7 days), depth (quick scan vs deep sweep; default deep), and who gets flagged on a Crisis-tier hit ({{CRISIS_OWNER}} — a PR lead, legal, founder, or the marketing team by default). Skip the questions entirely when the user already provided the answers or a prior run in this workspace configured them. If the brand name is still ambiguous after research, confirm which entity is meant before running anything.

Pick the source profile

The single most important configuration step. Do not scan all platforms equally — weight the channels where this brand's audience actually talks. B2B brands live on LinkedIn, G2, Hacker News, and trade press; consumer brands on TikTok, Instagram, YouTube, and Trustpilot; regulated industries on wire services, regulatory watchdogs, and journalist accounts; regional brands on local-language platforms. Read references/source-playbook.md for the five market profiles and the full per-platform query patterns before building the query list.

Sweep

Fan out parallel searches, one stream per source group (social, news and press, review platforms, community forums), every query bounded to the confirmed date window. Run a shallow discovery pass first across all streams; extract full page or thread content only for candidates that look high-impact — that is where the scoring evidence (engagement counts, reply tone, author profile) comes from. Every pass runs three query families: broad brand queries, risk queries (lawsuit, outage, scam, recall — tuned to the industry), and opportunity queries (organic praise, purchase intent, comparison wins). If one stream fails, continue with the rest and name the gap in the report — never silently present a partial sweep as complete.

Score every mention

Four dimensions, each 0–100: reach (how many people can see this), velocity (how fast it is gaining ground — the differentiator between "viral forming" and "stale"), sentiment (scored separately for risk and opportunity), and risk-topic match (legal, safety, outage, executive controversy, misinformation). Composite:

composite = reach x 0.30 + velocity x 0.30 + max(risk_sentiment, risk_topic) x 0.25 + opportunity x 0.15

Dimension scores are additive rows capped at 100 each — see the rubric for the cap rule and why the Crisis bar sits at 65.

Velocity has an honesty gate: hourly growth rates need two data points. On a first pass with no baseline, score only observable proxies (cross-platform pickup, press pickup of a social post, crisis-scale absolute engagement) and label the velocity ~estimated. The full point tables, baseline rules, and the rapid re-check upgrade path are in references/scoring-rubric.md — read it before scoring anything.

Dedup against brand memory

Keep a running file per brand in your workspace. On each run, load it, fingerprint every found mention as {url, platform, published_date} (URLs normalized), and split the feed: net-new, returning-with-score-shift, and already-known-unchanged (suppressed to Log). Lead the report with the split: X net-new · Y returning (score changed) · Z suppressed. After the run, persist the new fingerprints and scores. Windowing, carry-forward, and cadence rules are in references/rerun-and-memory.md.

Tier and route

Assign every mention exactly one tier — teams act on tiers, not numbers.

Tier Score Action Suggested owner Window
Crisis 65+ Route immediately {{CRISIS_OWNER}} + legal + leadership Respond < 2h
Watch 45 up to 65 Assign owner, monitor velocity Marketing / comms Respond < 24h
Engage Any score, positive + high reach Amplify, thank, share Marketing / social team Act within 48h
Log < 45, no risk signals None — searchable record — —

Crisis mentions surface first, each as a full decision card: excerpt, all four scores, why it was flagged, who responds, by when, and a suggested draft action. If the user wants Crisis and Watch items pushed to a team channel ({{ALERTS_CHANNEL}}), post only those tiers — never the full feed.

Write the report

Follow references/output-format.md exactly: TL;DR up top, then the triage sections in fixed order, closing with a "What this means" section carrying one to three recommended actions, each tied to a tier and an owner. On a first run, note that a second pass in a few days establishes the velocity baseline and trend lines.

What good looks like

  • The best operator reads velocity before volume — a 40-minute-old post already at thousands of reposts outranks last week's big thread every time — and picks the source profile before writing a single query, because B2B risk hides in G2 review clusters while a generic sweep is busy reading consumer social noise.
  • The mediocre version is a flat list sorted by follower count: every platform weighted equally, velocity "scored" on a single snapshot with no baseline, homepages pasted as source links, and re-runs that re-report everything last week's run already surfaced.
  • Output is good when every Crisis card is actionable in 60 seconds (excerpt, exact link, reason, owner, window, draft action), the dedup summary line proves the run only surfaced what is new, and any mention can be re-found from its exact URL a month later.

Rules

  • MUST link every mention to the exact post/article/thread URL — never a platform homepage.
  • MUST label first-pass velocity scores ~estimated; hourly-rate points require a prior measurement.
  • MUST bound every query to the confirmed date window and state that window in the report header.
  • MUST persist mention fingerprints after every run and carry Crisis and Watch items forward until the user marks them handled.
  • NEVER fabricate engagement counts, follower numbers, or sentiment — when a value can't be verified from the page, say so on the card.
  • NEVER publish, post, or send any response on the brand's behalf — suggested actions are drafts that require explicit human approval.
  • NEVER suppress a returning mention as a duplicate when its composite score moved 10+ points — a score shift is news.
1---
2name: brand-mention-monitor
3title: Brand mention monitor
4description: |
5 Use this skill when you need to know what people are saying about a brand across
6 the web and social — "monitor brand mentions", "what are people saying about
7 [brand] this week", "run a brand sweep", "social listening", "find high-risk
8 mentions", or "how does [brand] compare to [competitor] in the conversation".
9 Sweeps social platforms, news, forums, and review sites; scores every mention on
10 reach, velocity, sentiment, and risk-topic match; and produces a triage report
11 bucketed into Crisis / Watch / Engage / Log with a suggested owner and response
12 window for each mention, so the team responds before one spirals.
13category: Signals
14tags: [Marketing]
15---
16 
17Run this when anyone needs eyes on the brand conversation — a routine weekly sweep, a launch-week watch, or a "something feels off" check. It produces a triage report: every mention scored on four dimensions, deduped against what previous runs already found, and bucketed into Crisis / Watch / Engage / Log with an owner and a response window.
18 
19## Before the sweep — resolve, profile, confirm
20 
21Do two research steps before asking the user anything:
22 
231. **Resolve brand variants.** Search the live web for the brand's alternate spellings, hashtags, handles, product names, and sub-brands that get mentioned independently. For common-word brand names, find the disambiguating terms (industry, founder, domain) so the sweep doesn't pull unrelated noise. Fold every confirmed variant into the query list silently — never ask the user to supply this.
242. **Profile the brand.** Establish B2B vs B2C, industry, primary geography and language, and rough audience size. This picks the source profile and calibrates scoring — "high reach" means something different for a niche B2B tool than for a consumer app with millions of users.
25 
26Replace before enabling: {{CRISIS_OWNER}} (who gets flagged on a Crisis hit) and {{ALERTS_CHANNEL}} (the team channel, if any, for Crisis/Watch pushes).
27 
28Then confirm scope in a single message: the brand as you understood it plus any competitors to track alongside, the date window (default: last 7 days), depth (quick scan vs deep sweep; default deep), and who gets flagged on a Crisis-tier hit ({{CRISIS_OWNER}} — a PR lead, legal, founder, or the marketing team by default). Skip the questions entirely when the user already provided the answers or a prior run in this workspace configured them. If the brand name is still ambiguous after research, confirm which entity is meant before running anything.
29 
30## Pick the source profile
31 
32The single most important configuration step. Do not scan all platforms equally — weight the channels where this brand's audience actually talks. B2B brands live on LinkedIn, G2, Hacker News, and trade press; consumer brands on TikTok, Instagram, YouTube, and Trustpilot; regulated industries on wire services, regulatory watchdogs, and journalist accounts; regional brands on local-language platforms. Read `references/source-playbook.md` for the five market profiles and the full per-platform query patterns before building the query list.
33 
34## Sweep
35 
36Fan out parallel searches, one stream per source group (social, news and press, review platforms, community forums), every query bounded to the confirmed date window. Run a shallow discovery pass first across all streams; extract full page or thread content only for candidates that look high-impact — that is where the scoring evidence (engagement counts, reply tone, author profile) comes from. Every pass runs three query families: broad brand queries, risk queries (lawsuit, outage, scam, recall — tuned to the industry), and opportunity queries (organic praise, purchase intent, comparison wins). If one stream fails, continue with the rest and name the gap in the report — never silently present a partial sweep as complete.
37 
38## Score every mention
39 
40Four dimensions, each 0–100: **reach** (how many people can see this), **velocity** (how fast it is gaining ground — the differentiator between "viral forming" and "stale"), **sentiment** (scored separately for risk and opportunity), and **risk-topic match** (legal, safety, outage, executive controversy, misinformation). Composite:
41 
42```
43composite = reach x 0.30 + velocity x 0.30 + max(risk_sentiment, risk_topic) x 0.25 + opportunity x 0.15
44 
45Dimension scores are additive rows capped at 100 each — see the rubric for the cap rule and why the Crisis bar sits at 65.
46```
47 
48Velocity has an honesty gate: hourly growth rates need two data points. On a first pass with no baseline, score only observable proxies (cross-platform pickup, press pickup of a social post, crisis-scale absolute engagement) and label the velocity `~estimated`. The full point tables, baseline rules, and the rapid re-check upgrade path are in `references/scoring-rubric.md` — read it before scoring anything.
49 
50## Dedup against brand memory
51 
52Keep a running file per brand in your workspace. On each run, load it, fingerprint every found mention as `{url, platform, published_date}` (URLs normalized), and split the feed: net-new, returning-with-score-shift, and already-known-unchanged (suppressed to Log). Lead the report with the split: `X net-new · Y returning (score changed) · Z suppressed`. After the run, persist the new fingerprints and scores. Windowing, carry-forward, and cadence rules are in `references/rerun-and-memory.md`.
53 
54## Tier and route
55 
56Assign every mention exactly one tier — teams act on tiers, not numbers.
57 
58| Tier | Score | Action | Suggested owner | Window |
59|---|---|---|---|---|
60| Crisis | 65+ | Route immediately | {{CRISIS_OWNER}} + legal + leadership | Respond < 2h |
61| Watch | 45 up to 65 | Assign owner, monitor velocity | Marketing / comms | Respond < 24h |
62| Engage | Any score, positive + high reach | Amplify, thank, share | Marketing / social team | Act within 48h |
63| Log | < 45, no risk signals | None — searchable record | — | — |
64 
65Crisis mentions surface first, each as a full decision card: excerpt, all four scores, why it was flagged, who responds, by when, and a suggested draft action. If the user wants Crisis and Watch items pushed to a team channel ({{ALERTS_CHANNEL}}), post only those tiers — never the full feed.
66 
67## Write the report
68 
69Follow `references/output-format.md` exactly: TL;DR up top, then the triage sections in fixed order, closing with a "What this means" section carrying one to three recommended actions, each tied to a tier and an owner. On a first run, note that a second pass in a few days establishes the velocity baseline and trend lines.
70 
71## What good looks like
72 
73- The best operator reads velocity before volume — a 40-minute-old post already at thousands of reposts outranks last week's big thread every time — and picks the source profile before writing a single query, because B2B risk hides in G2 review clusters while a generic sweep is busy reading consumer social noise.
74- The mediocre version is a flat list sorted by follower count: every platform weighted equally, velocity "scored" on a single snapshot with no baseline, homepages pasted as source links, and re-runs that re-report everything last week's run already surfaced.
75- Output is good when every Crisis card is actionable in 60 seconds (excerpt, exact link, reason, owner, window, draft action), the dedup summary line proves the run only surfaced what is new, and any mention can be re-found from its exact URL a month later.
76 
77## Rules
78 
79- MUST link every mention to the exact post/article/thread URL — never a platform homepage.
80- MUST label first-pass velocity scores `~estimated`; hourly-rate points require a prior measurement.
81- MUST bound every query to the confirmed date window and state that window in the report header.
82- MUST persist mention fingerprints after every run and carry Crisis and Watch items forward until the user marks them handled.
83- NEVER fabricate engagement counts, follower numbers, or sentiment — when a value can't be verified from the page, say so on the card.
84- NEVER publish, post, or send any response on the brand's behalf — suggested actions are drafts that require explicit human approval.
85- NEVER suppress a returning mention as a duplicate when its composite score moved 10+ points — a score shift is news.
86 

Discussion

Alternatives

Also in Posting & schedulingSee all 364 in Marketing →
Linkedin comment drafterDraft a LinkedIn comment on someone else's post from its URL, or reshare (repost) it to your feed with optional commentary. Use when the user pastes a post URL and asks to comment, engage, be first commenter, or repost with their thoughts. Produces 1-3 variants in the user's voice, picks a reaction, and publishes via Publora on approval. Not for replying to existing comments (use linkedin-reply-handler).Marketing · MITLinkedin content plannerGenerate a 7-day LinkedIn content plan from a theme, audience, and pillars. Produces per-day post pillar, format, hook type, CTA, posting time, daily comment targets, and a weekly inbound-readiness check. Use when the user wants to plan a week or month of content, not draft a single post (use linkedin-post-writer).Marketing · MITLinkedin employee advocacyStand up and run a LinkedIn employee advocacy program for a marketing or sales team. Covers 14-day launch playbook, brand-guideline governance, per-post time budget, cadence benchmarks, and team ROI (reach, engagement, pipeline). Triggers on "employee advocacy", "get the team posting", "scale LinkedIn across team", "advocacy ROI". Not for planning one person's own calendar (use linkedin-content-planner).Marketing · MITInstagram Audience InsightsRead your Instagram niche and profile from real data via Apify, no login. Scan a hashtag for the posts traveling now (likes, comments, owner) to see the format and hook that works. Pull profile stats for any handle, yours or a competitor's: followers, posts, bio, category. Instagram hides who liked or commented on other accounts, so this is discovery plus profiles, not engagers. Triggers on "what works in my niche", "scan the hashtag", "competitor stats". Not for writing captions (use ig-caption-writer).Marketing · MIT