Share of voice dashboard for your brand and competitors

See how your brand's news coverage and sentiment stack up against four competitors, then let an assistant write the weekly report for you.

App
GDELTNotionSlack BotMarketingOperationsResearch & MonitoringAI Reports
PromptCreate

I run communications at a company and I want a share of voice command center that my comms team opens every morning. Build it on GDELT for the news data, Notion for the filed reports, and Slack for the weekly heads up. GDELT is a free public API with no authentication, so the only credentials anyone connects are Notion and Slack.

On the main screen I set up a tracked set: our brand, up to four competitors, and any campaign or category terms I care about. Each entry has a friendly display name and the search terms behind it, so I can fold a few spellings or product names into one bucket. Tracked sets persist per user so every brand lead keeps their own board, and I can save several sets and switch between them, for example one per product line.

For every name in the set, render these side by side so they can be compared at a glance: a coverage volume timeline and a share of voice split for the last 90 days using Article Volume Timeline; a sentiment trend and a sentiment histogram using Article Tone Timeline and Tone Distribution; a where in the world breakdown by language and source country using Coverage Breakdown by Language or Source Country; a broadcast pulse using TV Coverage Timeline; and a clickable list of the articles sitting behind all of it using Search News Articles.

Show share of voice as a percentage of the tracked set, not as a share of all world news. Take each name's article volume, divide by the combined volume of everyone in the set, and make it add to 100 percent. Render it both as a split for the current window and as a trend line over the window, because the trend is what tells me a competitor is gaining on us.

Clicking a spike on any chart filters the article list to that name and that date window, so someone can answer what happened on Tuesday in two clicks. Each article row shows the headline, the outlet, the source country, the language, and the date, and links out to the original story.

Keep the framing non technical throughout. Label tone as sentiment everywhere in the interface, express share of voice as a percentage, and default to English language sources with a toggle to include all 65 plus languages. Default the window to the last 90 days, which is as far back as the news data reaches, and let me narrow it to 30 or 7 days.

Add a Write this week's coverage report button that kicks off a background agent. It pulls the biggest volume and sentiment moves across the tracked set over the last 7 days compared against the 7 days before, reads the top articles behind each move with Search News Articles, then writes a narrative report page into Notion with Create a Page covering share of voice, sentiment shifts, competitor wins, and the stories worth a response. Once the page exists it posts the headline numbers plus the Notion link into a Slack channel with Send a Message, and saves the same report back into the app.

Keep a reports page inside the app listing every report that has been generated, newest first, with the full text readable in the app and a link out to the Notion page. That way the board builds a history of past weeks and I can see how the story changed over time.

Some constraints to build around. The news search covers a rolling three months, so 90 days is the natural maximum window. The article list call returns at most 250 articles per request, so narrow the date range and stitch consecutive windows when more are needed. The TV data excludes the last 24 hours of broadcasts unless that is explicitly requested, and it needs either a station filter or the combined data option. Keep requests serial at roughly one per second and back off on rate limits. Cache results, because the underlying data only refreshes every 15 minutes and caching keeps the board fast when several people open it at once.

What does this prompt do?

  • Track your brand, up to four competitors, and any campaign or category terms on one screen, with a coverage timeline and a share of voice percentage for the last 90 days.
  • See a sentiment trend and a positive to negative breakdown for every name you follow, plus which countries and languages are carrying the story and how often it reaches TV news.
  • Click a spike on any chart to pull up the actual articles from that day, so you can answer what happened on Tuesday in about two clicks.
  • Press one button and a background assistant writes the week's coverage report into Notion, posts the headline numbers and the link to Slack, and keeps every past week readable in the app.

What do I need to use this?

  • The names you want to follow: your brand, up to four competitors, and any campaign or category terms
  • A Notion workspace where the weekly reports get filed, with the page shared to the connection
  • A Slack workspace and the channel your comms team actually reads
  • No media monitoring subscription and no news account: the worldwide coverage data is free and public

How can I customize it?

  • Swap competitors in and out, or track campaign and category terms alongside brand names. Every person on the team keeps their own saved board.
  • Start with English language sources, or flip the toggle to include all 65 plus languages when you need the global picture.
  • Pick the Slack channel the weekly summary lands in and the Notion space the full report gets filed under.
  • Narrow the window from 90 days down to 30 or 7 when you only care about a recent campaign.

FAQs

Where does the coverage data come from?
It comes from GDELT, a free public dataset that monitors worldwide news in over 65 languages plus US TV news broadcasts. There is nothing to buy and no news account to connect, so the only logins you set up are Notion and Slack.
How is share of voice calculated?
Each name's article count is divided by the combined count for everyone in your tracked set, so the numbers add up to 100 percent. You see it both as a split for the current window and as a trend line, which is what tells you a competitor is gaining on you.
How far back can I look?
The worldwide news data covers a rolling three months, so 90 days is the default and the furthest back you can go. You can narrow the window to 30 or 7 days when you are watching a specific campaign.
Can each person on my team keep their own set of names?
Yes. Tracked sets save per user, so each brand lead keeps their own board without stepping on anyone else's. You can also keep several sets and switch between them, for example one per product line.
Do I need a paid media monitoring tool alongside this?
For the core share of voice, sentiment, and spike investigation work that most teams buy a suite for, no. This covers online news and US TV news coverage. It does not cover social posts, so keep a separate social listening tool if that matters to you.

Related templates

Review desk for portal forms your team still fills in by hand

Stage a batch of filings overnight, then approve each completed form from a screenshot before anything is ever submitted.

Kernel
Google Sheets
Slack Bot
App
Client-by-client cold email pipeline review for agencies

Pick a client and a date range to see sent, replies, meetings booked and the real deal value your cold email produced, campaign by campaign.

Instantly
HubSpot
Slack Bot
App
Audit what Intercom's Fin AI actually resolved before you pay

Review every conversation Fin closed as resolved, judge which ones actually stuck, and see what the gap is worth against your bill.

Intercom
Google Sheets
Slack Bot
App
Artwork desk for the Notion posts still missing an image

Open one screen each Monday to see which upcoming posts still have no image, generate three on-brand options, and file the one you pick.

Ideogram
Notion
Google Drive
App
One triage console for every Jira service desk queue

Merge your IT, HR and Facilities queues into one list ranked by SLA time left, then reply, change status and escalate without ever opening Jira.

Jira Service Management
Jira
Slack Bot
App
Run your Webflow site translations from one review desk

See every page's translation status at a glance, edit translations side by side with the English, and publish only what your team has actually approved.

Webflow
JigsawStack
Slack Bot
+1
App

Stop rebuilding your share of voice deck by hand.

Set up your brand, your competitors, and the terms you care about once, then open one board every morning and let the weekly report write itself.