Wasted Spend Diagnosis: From GAQL Aggregation to P0/P1/P2 Action Lists

Forest Liu · Data Marketing Lead for Multiple Companies#wasted-spend#ppc-audit#gaql

Summary

A GAQL keyword_view query flags zero-conversion, high-spend and high-CPC keywords, an LLM explains why they burn money, and the result is a P0/P1/P2 action list where every fix becomes a tracked experiment with a baseline snapshot and automatic evaluation.

Quick answer

Aggregate spend and conversions at the keyword level with a GAQL keyword_view query to flag zero-conversion, high-spend and high-CPC keywords. Let an LLM explain the root cause — mismatched intent, landing-page mismatch, overbidding — and tier the fixes into P0 (fix now), P1 (fix soon) and P2 (watch). Close the loop by turning every recommendation into a tracked experiment with a baseline snapshot, so diagnosis ends in verified decisions, not a report.

Every Google Ads account has parts that spend money without returning conversions — keywords that burned hundreds of dollars with zero to show for it. The question is never “is there waste” but “where, why, and what do we fix first”. Without a system, you flip through reports and only ever touch the tip of the iceberg — and by the time you notice a keyword in the interface, it has often been burning for weeks. Our answer was to turn this into a diagnostic loop that runs every day.

Step 1: aggregate at the keyword level with GAQL

We use a GAQL query on keyword_view to aggregate spend and conversions at the keyword level, and it directly flags three kinds of keywords: zero-conversion, high-spend, and high-CPC. Aggregating at the keyword level matters, because campaign-level totals hide which individual keywords are doing the burning — a campaign can look healthy overall while several of its keywords burn money daily. This step turns “it feels wasteful” into a data-backed list — exactly which keywords are burning money with no conversions.

Step 2: let an LLM explain the root cause

Aggregation tells you where the money is burning, not why. An LLM follows up with root-cause analysis: mismatched intent, a landing page that does not match the promise, overbidding. The same “zero conversions” needs completely different handling depending on whether it is a mismatch or a landing-page problem — mismatch gets negated, a landing-page problem gets a new page or new copy, an overbid gets a lower bid — so every keyword enters the action list carrying its “why”.

Step 3: output a P0/P1/P2 action list

The output is tiered by priority: P0 — fix immediately (large spend with a clear mismatch), P1 — fix soon (spending, but the root cause still needs verification), P2 — watch (not enough signal yet; track it). In practice a P0 is usually a keyword with meaningful spend and an obviously wrong intent, while a P2 is a keyword whose signal is too thin to act on. Tiering takes the guesswork out of what to do first each morning.

Close the loop: suggestions become experiments

A diagnosis that ends in a report is a dead end. Every recommendation can be turned into a tracked experiment with a baseline snapshot, automatic evaluation at the due date, and a SUCCESS or FAILURE verdict that accumulates as learned experience. Next time a similar pattern appears, the diagnosis starts from what actually happened before, not from scratch — over time the account builds its own playbook of which actions work for which symptoms. The output of diagnosis is a chain of decisions that get tracked and verified — not a PDF.

The 4-step wasted-spend checklist

  • Aggregate spend and conversions at the keyword level — get the data list first.
  • Have an LLM explain the root cause — every keyword carries its “why”.
  • Tier into P0/P1/P2 — execution order follows evidence, not instinct.
  • Turn fixes into tracked experiments — decisions get evaluated, and experience compounds.

This wasted-spend loop is what our ads automation module runs daily on the accounts we manage.

Note on system details: The iport platform is under active development. Any product features, interfaces, or workflows described in this article reflect the version in use at the time of writing and may differ from the latest release. For the most current capabilities, refer to the official platform documentation.

Frequently asked questions

How do you find wasted ad spend systematically?

Aggregate cost and conversions at the keyword level with a GAQL query on keyword_view to flag zero-conversion, high-spend and high-CPC keywords. Then let an LLM explain the root cause — mismatch, landing-page mismatch, overbidding — and produce a P0/P1/P2 action list.

What do P0/P1/P2 mean in a PPC audit?

P0 means fix immediately — large spend with a clear mismatch. P1 means fix soon — spending, but the root cause still needs verification. P2 means watch — not enough signal yet. The tiering makes execution order a decision based on evidence, not instinct.

What happens after the wasted-spend report?

Every recommendation can be turned into a tracked experiment with a baseline snapshot, automatic evaluation at the due date, and a SUCCESS/FAILURE verdict that feeds back as learned experience. The loop does not end at the report.

Keep reading