Skip to content
Academy
Marketing Academy · Field Work●Social Media Marketing
MiniAudit· 25 minutes

Enrich or Ignore: Auditing a Raw Mentions Export

Robinhood

Objective: Given a raw 30-row mentions export with no sentiment or topic tags, apply the lesson's enrichment and routing layers to decide which mentions need action today versus which are noise.

You're the community insights analyst at Robinhood. Support just forwarded a raw export of 30 mentions pulled from a brand-keyword search, unsorted, untagged, and dumped in a spreadsheet an hour before your weekly sync.

Tag sentiment and topic on every row, then decide which rows need a named owner today and which can wait for the weekly digest.

Before you start

What you'll need

Free path (everything below is enough to finish)

FreeTag sentiment/topic and assign owners on the raw export

No account setup, works with a pasted CSV, sufficient for a 30-row manual audit

Paid upgrades (optional, faster/deeper)

Hootsuite(optional)
PaidAutomate enrichment and routing at a volume beyond what a manual sheet can handle

Built-in sentiment tagging and team-assignment workflows replace the manual columns once mention volume exceeds a few hundred rows a week

The process

2 steps

Step 01 of 02

Sentiment and topic enrichment

The lesson's Layer 3 says raw mentions are not insights until they carry sentiment, topic, and journey-stage tags.

The export has 30 rows of raw mention text with no columns beyond handle and platform. Which 3 columns do you add before anything else is usable?

Google Sheets— Paste the export into a new sheet, freeze the header row, add columns to the right of the raw text.

Procedure

  1. Paste all 30 rows into column A, freeze row 1
  2. Add columns: Sentiment (positive/negative/neutral), Topic (app crash, fees, onboarding, praise, other), Journey Stage (awareness, consideration, post-purchase)
  3. Tag each row by reading the raw text, not by keyword-matching alone
  4. Flag any row containing 'lawsuit', 'fraud', 'locked me out', or 'can't withdraw' in a 4th column, Crisis Flag
Sample output
Row 14: '@user2291: locked out of my account for 3 days, no response, moving my money elsewhere'
  Sentiment: Negative | Topic: Onboarding/Access | Journey: Post-purchase | Crisis Flag: YES

Row 22: '@user8830: just did my first options trade, so easy'
  Sentiment: Positive | Topic: Praise | Journey: Post-purchase | Crisis Flag: NO

Healthy

3 rows carry a Crisis Flag and get pulled into a separate list before the sync even starts.

Unhealthy

All 30 rows are read once, summarized as 'mostly positive, some access complaints,' and nobody notices the 3 rows describing locked accounts.

What this means

Enrichment isn't a nice-to-have formatting step, it's the filter that separates a row worth escalating from a row worth ignoring.

So what do I do about it?

SymptomActionEffort
A crisis-shaped complaint sits unflagged in row 14 of an unsorted exportAdd a Crisis Flag column and scan for account-access, legal, and financial-harm language before any other tagging5 min
YouYou can do this yourself, no engineering access required.

Step 02 of 02

Routing insights to a named owner

The lesson's Layer 4 argues an insight that sits in a dashboard nobody opens is the same as no insight; every tagged mention type needs a predetermined owner.

You now have 3 crisis-flagged rows, 8 negative access/fee complaints, and 19 neutral-to-positive rows. Who gets each bucket, and how fast?

Google Sheets— Add an Owner column next to your enrichment tags, using the routing rules from Layer 4.

Procedure

  1. Route the 3 crisis-flagged rows to comms on-call with a same-hour SLA
  2. Route the 8 negative access/fee rows to the support lead's queue with a same-day SLA
  3. Bundle the 19 neutral/positive rows into the weekly digest, no individual owner needed
Sample output
ROUTING SUMMARY
  Crisis (3 rows) -> Comms on-call, SLA: 1 hour
  Negative/access (8 rows) -> Support lead queue, SLA: same day
  Neutral/positive (19 rows) -> Weekly digest, no individual action

Healthy

Every row has an owner and an SLA before the sync starts, so the meeting is a status check, not a triage session.

Unhealthy

The meeting opens with 'so what do we do with these,' spending 20 minutes re-doing the triage live for the third week running.

What this means

Routing decisions belong in the spreadsheet before the meeting, not in the meeting itself.

So what do I do about it?

SymptomActionEffort
Every weekly sync starts with 15-20 minutes of live triagePre-assign an owner and SLA column to every enriched row before the meeting is scheduled5 min
YouYou can do this yourself, no engineering access required.

Final deliverable

An enriched, routed version of the mentions export with an Owner and SLA assigned to every row.

See a reference example
Sample output
PolicyBazaar mentions triage, week of Mar 3

CRISIS (2 rows)
  1. @user4410: 'PolicyBazaar approved my claim then reversed it with no explanation' -> Comms on-call, 1hr SLA

NEGATIVE/ACCESS (6 rows)
  1. @user1102: 'app keeps logging me out mid-renewal' -> Support lead, same-day SLA

DIGEST (22 rows): mostly praise for claim-settlement speed, no action needed

Success criteria

You're done when you can:

  • Every row is tagged with sentiment, topic, and journey stage
  • Crisis-shaped complaints are correctly flagged and separated from routine negative feedback
  • Every row carries a named owner and an SLA before the meeting starts