Weekly alert on who is bidding on your brand name in Google

Every Monday at 8am, see which competitors, resellers, and brand new hijackers are buying Google ads against your brand name, city by city.

Agentic Task
SerpApiGoogle SheetsSlack BotMarketingResearch & MonitoringNotifications & Alerts
PromptCreate

Every Monday at 8am, show me who is bidding on our brand name in Google.

Start by reading our brand terms and our target cities from our Google Sheets tracker. The brand terms are the exact queries to watch, which includes our company name, common misspellings of it, and our product names. The cities are the markets we care about. Also read the history tab from the same spreadsheet, so you know every advertiser we have already recorded in previous runs.

For every combination of brand term and city, first resolve the city with a SerpApi Location Lookup so you have the canonical location name, then run a SerpApi Google Search for that brand term from that location. Read the ads that appear above the organic results and the ads that appear below them. For each ad, capture the advertiser name, the displayed URL, and the ad headline, along with whether it sat above or below the organic results and where our own listing ranked in comparison.

Then work out what each advertiser actually is. Sort every one into a direct competitor bidding on our brand, a reseller, affiliate, or partner using our name legitimately, or a marketplace or directory listing. Ignore our own ads completely, they are never a finding. Compare what you found against the history tab to identify which advertisers are brand new since the last run, meaning they have never appeared for that brand term before.

Append every advertiser sighting to the history tab in Google Sheets, one row per sighting, with the date, brand term, city, advertiser, and ad headline. Always append below the existing rows, never overwrite the history.

Finally, post a Slack alert to our marketing channel using the Slack bot. Lead with the brand new hijackers, naming the advertiser, which brand term and city they showed up on, and their headline, because those are the ones we have not seen before and need to react to. Then summarize the angle each competitor is using in their ad copy, for example undercutting us on price, positioning as an alternative to us, pushing a head to head comparison, or offering a free migration. Then flag any city where a competitor is consistently outranking us on our own brand name across multiple terms or multiple weeks, since that is where we likely need to raise our brand defense bids.

If nothing changed since last week, meaning no new advertisers appeared and nobody moved above us who was not already there, just say so in one line instead of repeating the full list.

Example output

Brand bidding watch - Monday 8am NEW THIS WEEK (2 advertisers never seen before) 1. Northwind Systems - term "acme crm", Chicago and Denver. Headline: "Switching from Acme? Migrate free in 24h". Direct competitor, running a switching angle with a migration offer. 2. crmdealfinder.net - term "acme crm pricing", Phoenix. Headline: "Acme CRM Coupon Codes 2026". Affiliate, coupon bait on our pricing term. ANGLES COMPETITORS ARE RUNNING - Northwind Systems: switching cost removal (free migration, 24h setup). - Vertex Suite: head to head comparison, "Acme vs Vertex, see the numbers". - Brightline: price undercut, "Half the cost of Acme, same features". CITIES WHERE WE ARE BEING OUTRANKED ON OUR OWN NAME - Denver: Northwind ranked above us on 3 of 4 brand terms. Worth raising brand defense bids. - Chicago: Vertex Suite above us on "acme crm" two weeks running. LEGITIMATE, NO ACTION NEEDED - Acme Partner Group and TechResell both ran reseller ads consistent with their agreements. 18 sightings appended to the history tab.

What does this prompt do?

  • Checks each of your brand terms in each of your target cities and reads the ads that show up above and below the regular search results.
  • Sorts every advertiser into direct competitors bidding on your name, resellers or affiliates using it legitimately, and brand new arrivals since the last run.
  • Logs every sighting to a history tab in your spreadsheet with the date, brand term, city, advertiser, and ad headline, so you build a record of who targets your name and where.
  • Posts a Slack alert that leads with new hijackers, explains the angle each competitor is running in their ad copy, and flags any city where someone consistently outranks you on your own name.

What do I need to use this?

  • A SerpApi account, which is what pulls live Google results for each city
  • A Google Sheet with your brand terms, your target cities, and a history tab for the running log
  • A Slack workspace and a channel where the weekly alert should land
  • A short list of your own ad names or display URLs, so your own ads get left out of the report

How can I customize it?

  • Change the timing: Monday at 8am is the default, but any day or frequency works, and you can run it daily during a competitive push.
  • Edit the brand terms and cities directly in the spreadsheet. Add misspellings of your name, product names, or new markets and the next run picks them up.
  • Adjust what counts as a competitor versus a legitimate reseller or affiliate, and change which Slack channel or team gets the alert.

FAQs

Why does this check each city separately?
Ads on brand terms vary a lot by location. A competitor might outbid you heavily in one metro and be completely absent in another. Checking city by city shows you exactly where the problem is, so you can respond in the markets that matter instead of guessing from a single national view.
Will it flag my own ads as a problem?
No. You tell it which advertiser names and display URLs are yours, and those are ignored completely. The report only covers other advertisers appearing on your brand terms.
What happens if nothing changed since last week?
You get a single line saying nothing changed, rather than the same full list again. That keeps the weekly alert worth reading and means anything you do see is genuinely new.
Do I need a Google Ads account for this to work?
No. It reads the ads that appear on public Google search results pages, the same ones any searcher would see. It does not need access to anyone's ad account, including your own.
How many brand terms and cities can I track?
Every combination of a brand term and a city is one search, so ten terms across five cities is fifty searches per run. Most teams start with their core brand name plus a couple of variants in their top markets, then expand once they see what comes back.
What do I actually do with the results?
Two common responses. If a direct competitor is consistently beating you on your own name in a market, that is usually a case for raising your brand defense bids there. If someone is using your trademark in their ad copy without permission, the log gives you the dated evidence to file a complaint.

Related templates

Build a credential rotation checklist when someone leaves

When someone leaves, we check which shared passwords they used in their final months and post a ranked rotation list to your security channel.

1Password
Rippling
Slack Bot
+1
Agentic Task
Weekly Amazon S3 bucket security audit posted to Slack

Every Monday, check every S3 bucket for public exposure, missing encryption and weak backup settings, then get the risks ranked in Slack.

Amazon S3
Slack Bot
Google Sheets
Agentic Task
Log Agorapulse social conversations to HubSpot contacts

Twice every weekday, the conversations from your social inbox land on the right HubSpot contact timelines, with a Slack recap for sales.

Agorapulse
HubSpot
Slack Bot
Agentic Task
Turn procurement portal tenders into CRM deals each morning

Every weekday at 7am, sign in to the tender portals you track, filter new notices against your bid criteria, and open a deal for the ones worth chasing.

Anchor Browser
Google Sheets
HubSpot
+1
Agentic Task
Clean up HubSpot contacts from your Amazon SES suppression list

Every morning, find the addresses that hard bounced or filed a spam complaint, update the matching HubSpot contacts, and post a short Slack recap.

Amazon SES
HubSpot
Slack Bot
Agentic Task
Draft polite follow-ups for emails that never got a reply

Every weekday at 4pm, spot the threads that went quiet, stage a ready-to-send nudge in your mailbox, and get a ranked Slack recap.

Aurinko
Google Sheets
Slack Bot
Agentic Task

Find out who is buying ads on your own brand name.

Set this up once and every Monday you will know which competitors are targeting your name, in which cities, and who showed up this week.