← No BS PPC by FieraCONTENT HISTORY
WHAT CHANGED
Update to No BS PPC by Fiera
Snapshot Oct 24, 2026 · 13:37 UTC · version 1.0.0
Collection source: downloaded plugin package.
First saved snapshot
No earlier snapshot is available to establish a change.
Save No BS PPC by Fiera and check future changes in Following.
Up to 10 plugins free · no card required.
Compare saved observations
Download comparison JSONFull technical diff · 0 changed fields
Full snapshot data
{
"description": "Find wasted spend in a Google Ads search terms report and propose negative keywords safely. Runs an n-gram analysis of cost and conversions, flags candidates that would block converting traffic, and classifies terms by intent before suggesting the level (ad group, campaign, list). Use when the user shares a search terms report or asks which negatives to add.",
"included_files": [
{
"relative_path": "references/ad-copy.md",
"size_in_bytes": 1871
},
{
"relative_path": "references/audit-checklist.md",
"size_in_bytes": 2665
},
{
"relative_path": "references/bidding-budgets.md",
"size_in_bytes": 3945
},
{
"relative_path": "references/diagnostics.md",
"size_in_bytes": 3464
},
{
"relative_path": "references/measurement.md",
"size_in_bytes": 2413
},
{
"relative_path": "references/myths.md",
"size_in_bytes": 3618
},
{
"relative_path": "references/platform-facts.md",
"size_in_bytes": 17913
},
{
"relative_path": "references/principles.md",
"size_in_bytes": 3471
},
{
"relative_path": "references/search-terms-negatives.md",
"size_in_bytes": 3561
},
{
"relative_path": "references/structure-pmax.md",
"size_in_bytes": 3357
},
{
"relative_path": "scripts/ppc.py",
"size_in_bytes": 75759
}
],
"name": "search-terms-cleanup",
"skill_md_contents": "---\nname: search-terms-cleanup\ndescription: Find wasted spend in a Google Ads search terms report and propose negative keywords safely. Runs an n-gram analysis of cost and conversions, flags candidates that would block converting traffic, and classifies terms by intent before suggesting the level (ad group, campaign, list). Use when the user shares a search terms report or asks which negatives to add.\n---\n\n# Search terms cleanup\n\nFinds the patterns that waste money in search terms, and turns them into negatives that do not cut converting traffic.\n\nThe user's explicit instructions take priority over this guidance. Reply in the user's language.\n\n## Inputs\n\n- Search terms report export: Search term, Match type, Campaign, Ad group, Impr., Clicks, Cost, Conversions (and Conv. value if relevant). Last 30 to 90 days. Include Performance Max search terms if available.\n- Target CPA, or let the script use the account CPA of the file.\n- What the business sells and to whom, in one line. Needed to judge intent.\n\n## Steps\n\n1. Run `python scripts/ppc.py inspect --data <file>`.\n2. Run `python scripts/ppc.py ngrams --data <file> [--target-cpa X] --out ngrams`. Brand campaigns are excluded by default.\n3. Classify every candidate before proposing it, with `references/search-terms-negatives.md`:\n - Wrong intent: negative.\n - Wrong product or audience: negative only in the campaigns of the wrong side.\n - Competitor, geo modifier, brand navigational: routing decision, not a negative. Say where the traffic should go.\n - Mixed intent (free, cheap, jobs in some verticals): segment first; do not negate blindly.\n4. Drop or narrow any candidate with `conflicts_with_converting = true`. Propose an exact negative or a longer phrase instead.\n5. Measure the proposal before giving it: rerun with `--negatives \"term one\" \"term two\" ...`. Report the share of zero-conversion spend it covers and any converting terms it would block (`negatives_coverage`). Remove or narrow negatives that block converting terms.\n6. For each proposed negative give: text, match type, level, the spend it would have saved in the period, and why. Use `intent_hint` as a starting point for the classification, not as the answer.\n7. Point out high-CPA n-grams that still convert. They are bid or structure questions, not negatives.\n\n## Output\n\n- First line: share of spend on zero-conversion terms, and how much of it the proposed negatives cover.\n- Table of proposed negatives: n-gram, match type, level, cost in period, reason.\n- Table of routing decisions (competitors, geos, brand) with the suggested destination.\n- Terms to protect.\n- Next step: when to review again (weekly for large accounts with broad match, monthly otherwise).\n\n## Rules\n\n- A zero-conversion n-gram with less cost than one target CPA is not evidence. Do not propose it.\n- Never propose a phrase or broad negative that a converting term contains.\n- Check the level: a negative that is wrong in one product can be right in another.\n- Do not add negatives for misspellings: Google's negatives already block misspellings (see `references/platform-facts.md`). Add plurals and synonyms where needed.\n- Do not apply anything. The user reviews and applies.\n\n## Scripts and references\n\n- `scripts/ppc.py`. Exports in English and Spanish; other languages via `--map`.\n- If code execution is not available, give the user the command to run locally.\n\n## Running the script\n\n- Run it with the Python that has pandas installed (`python` in ChatGPT's code environment). Write outputs to the working folder (for example `--out /mnt/data/result`) and share the files with the user.\n- Put ad text and any value with `$` in single quotes, or pass a CSV with `--data`: the shell expands `\"$12\"`.\n"
}SHA-256 of public snapshot: cbd5afe771b70b8dccad4d6aabe6ea412abb3cbcbcfa1520ba0f97a8114b00fc