Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.hireotto.com/llms.txt

Use this file to discover all available pages before exploring further.


Three ways to add negatives

Campaign-level — blocks a term across every ad group in the campaign. Best for broad exclusions that apply to the whole campaign (e.g. “free”, “jobs”, “DIY”). Ad group-level — blocks a term only within a specific ad group. Best for preventing cross-contamination between ad groups (e.g. blocking “product B” keywords in the “product A” ad group). Shared negative keyword lists — a reusable list you create once and assign to multiple campaigns. Best for exclusions you’ll want across many campaigns (e.g. a brand safety list, a competitor exclusion list, or a standard jobs/free-trial exclusion set).

Finding negatives to add

The search terms report is the primary source. Pull it for any account or campaign you want to clean up:
Get the search terms report for account [CUSTOMER_ID] for the last 30 days, sorted by cost, output mode summary_and_csv.
Look for: terms with spend but zero or low conversions, irrelevant queries, competitor brand names you don’t want to pay for, and queries that don’t match your offer.

Adding negatives at the campaign level

For broad exclusions across an entire campaign:
Add "[NEGATIVE_KW1]", "[NEGATIVE_KW2]", "[NEGATIVE_KW3]" as exact match negatives to campaign [CAMPAIGN_ID].
Mixed match types:
Add these negatives to campaign [CAMPAIGN_ID]: "[KW1]" as broad match, "[KW2]" as phrase match, "[KW3]" as exact match.
Match type guidance:
  • Exact — only blocks that precise query. Most surgical, lowest risk of over-blocking.
  • Phrase — blocks any query containing that phrase in order.
  • Broad — blocks any query containing all the words in any order. Use carefully — it can block more than you intend.
When in doubt, start with exact match negatives. You can always expand later.

Adding negatives at the ad group level

For cross-contamination prevention between ad groups:
Add "[NEGATIVE_KW]" as exact match negative to ad group [ADGROUP_ID] in campaign [CAMPAIGN_ID].

Shared negative keyword lists

Creating a new list

Create a list with initial keywords in one step:
Create a negative keyword list called "[LIST_NAME]" with these keywords as exact match: [KW1], [KW2], [KW3].
Mixed match types:
Create a negative keyword list called "[LIST_NAME]": "[KW1]" broad, "[KW2]" phrase, "[KW3]" exact.

Assigning a list to campaigns

After creating a list (or to assign an existing one), get the list ID first:
List all negative keyword lists in account [CUSTOMER_ID].
Then assign it:
Assign negative keyword list [LIST_ID] to campaign [CAMPAIGN_ID].
You can assign the same list to multiple campaigns:
Assign negative keyword list [LIST_ID] to campaign [CAMPAIGN_ID_1].
Assign negative keyword list [LIST_ID] to campaign [CAMPAIGN_ID_2].

Adding more keywords to an existing list

Add these keywords to negative list [LIST_ID]: "[KW1]", "[KW2]", "[KW3]" — exact match.

Reviewing an existing list

List all negative keyword lists in account [CUSTOMER_ID] and include the keywords in each list.

Typical negative keyword workflow

New account or campaign:
  1. Pull search terms for context (if the account has history)
  2. Create a shared brand-safety / common-exclusions list
  3. Assign it to all campaigns
  4. Add any campaign-specific negatives at campaign level
Ongoing optimisation (weekly or monthly):
  1. Pull search terms report sorted by cost
  2. Identify wasted spend — zero-conversion terms with significant spend
  3. Add confirmed wasted terms as campaign-level exact match negatives
  4. Add any terms that indicate ad group cross-contamination at ad group level
  5. For terms you’ll want to exclude permanently across all campaigns, add to your shared list
Full weekly negative review sequence:
Get the search terms report for account [CUSTOMER_ID] for the last 7 days, sorted by cost, output mode summary_and_csv.
Add these negatives to campaign [CAMPAIGN_ID]: "[WASTED_TERM_1]", "[WASTED_TERM_2]" — exact match.
Add "[BROAD_EXCLUSION]" to negative keyword list [LIST_ID] — phrase match.