Negate low-ROAS paid queries where you already rank top 3 organically
Joins Google Ads search terms with Search Console rankings, finds low-ROAS paid queries you already win organically, previews exact match negatives and sets up a 4-week before/after check.
When to use it
When you suspect you are paying for clicks on queries where your site already ranks in the top 3 organically and a low-ROAS ad adds little.
What you get
A table joining paid and organic data per query with a class for each, exact match negative previews for the top-3 ones, and a 4-week before/after test plan with a success rule.
Does it change anything in my account?
Only with your approval. The assistant first shows a preview of every change and waits for your go-ahead.
Works with
Google Ads, Search Console
Fill in before sending
[account][site][brand terms][target ROAS]
Compare paid search terms in [account] with organic rankings for [site] over the last 90 days. Our brand terms are: [brand terms].
1) Run google_ads_query on search_term_view for the last 90 days, returning campaign id and name, search term, clicks, cost, conversions and conversion value. Calculate ROAS per term (conversion value divided by cost). Keep the non-brand terms with ROAS below [target ROAS] and at least 30 clicks. If a term runs in several campaigns, keep one row per campaign.
2) Use gsc_list_sites to confirm the property for [site], then gsc_performance with the query dimension for the last 90 days, sorted by impressions with a limit high enough to cover the terms from step 1. Match each paid term to its organic query. Treat exact text matches as matches and list near matches separately for me to confirm, do not assume them.
3) Classify each query:
- A: average organic position 1 to 3 and organic CTR above 20%. Candidate for an exact match negative, because the paid click likely replaces an organic click.
- B: position 4 to 10. Keep paid, organic is not strong enough yet.
- C: not ranking. Keep paid, and review bids separately.
4) Check list_negative_keywords so nothing already blocked is proposed again.
Deliver a table with these columns: query, campaign, paid cost, paid conversions, paid ROAS, organic position, organic clicks, organic CTR and class.
For class A only, show one add_negative_keyword preview per campaign (confirm=false), passing all terms in a single batch as 'term|EXACT' at campaign level, and wait for my approval. Exact match negatives only block that exact query, so close variants will still show; say if any variant looks worth adding.
Then write a 4-week test plan: record today's baseline (paid clicks, paid cost, organic clicks for each class A query), and give me the exact calls to rerun in 4 weeks, google_ads_query for the same terms and gsc_performance with the query filter, both for the 28 days before and after the change. Success rule: total clicks (paid plus organic) on these queries drop by less than 10% while ad spend falls. If it fails, tell me which negatives to remove.
Combines smart negative suggestions with the full search terms report to flag zero-conversion and overpriced terms, then previews a grouped batch of negatives that protects your brand and converting keywords.
When to use itWhen your Google Ads search terms report shows money going to irrelevant or expensive searches and you want to cut that waste safely.
Runs pacing on every connected client account, compares projected month-end spend with each client's agreed monthly cap, and proposes CPA-ranked daily budget changes within guardrails, approved account by account.
When to use itWhen you manage several client accounts and need to know before month-end who is overspending or underspending against the agreed budget.