Is your agency actually earning its keep?

No Referral Fees · No Kickbacks · No Sales Calls

Drop in your PPC or search report and the audit works out the rest — where it came from and how it's performing. Reads Amazon and Walmart today.

The audit

Run it on your own report

Anything containing one of these counts as branded and is judged against the branded target instead. Spacing and punctuation are ignored, so northvale also catches "north vale". Leave blank to skip the split.

Drop your report here

or tap to choose a file — Excel or CSV, straight from the ads console. The audit works out which retailer wrote it.

Don't have the file? Amazon · Walmart — a couple of minutes to pull it yourself, or the wording to ask whoever manages the account.

Your file never leaves your browser. The audit runs on your device; the file is never uploaded or stored. Unless you untick the box before running it, about fifty anonymous, rounded summary figures are shared to build the benchmark: no search terms, campaign names or brand names, and you can see exactly what was shared. The site also counts page visits, with no cookies and nothing that identifies you.
Or try it on sample data

How the audit works

Every threshold is published, because an audit you can't inspect isn't an audit. These are defaults — reasonable starting points, not neutral facts. Your category and margins may justify different ones.

Wasted spend
clicks ≥ 10 AND orders = 0 AND spend ≥ $10

Both a click floor and a dollar floor: one expensive click on a high-ticket item shouldn't hide, and five cheap clicks shouldn't cry wolf. Severity bands at $50 and $200.

Missing negative keywords
same rule → recommended negatives

A search term report doesn't show your existing negative list, so this can't prove a negative is missing — it recommends terms worth excluding. Exact at ad-group level by default; phrase-level only above $50.

Below target ROAS
orders > 0 AND sales / spend < target

Each term is judged against the target for its own segment — 1x unbranded, 8x branded by default, both yours to change. Opportunity is the spend above what that target would have allowed for those sales.

Branded vs unbranded
term contains a brand term → branded

Matched on letters and digits only, so spacing and punctuation don't matter. Branded terms are never recommended as negatives, whatever their numbers say.

Why branded and unbranded are measured separately

Someone searching your brand name was already looking for you. That traffic converts cheaply and at high ROAS almost regardless of how well the account is run — so blending it into a single number flatters the whole account and hides how the unbranded half is doing. The unbranded half is the part that has to win customers who weren't already coming.

This isn't an argument for switching brand campaigns off. Brand defense is usually worth paying for, and a competitor bidding on your name will happily take the click if you don't. It's an argument for knowing which number is which — particularly if the account is managed on a percentage of ad spend, where branded traffic earns a fee for demand you generated somewhere else.

The defaults are deliberately lopsided. Unbranded sits at 1x — the point where the ad spend exceeds the sales it produced — because that is the one reading nobody argues with, and a stricter default would flag half of every healthy account and make this tool look like it was built to alarm you. Branded sits at 8x because brand traffic that cannot clear a high bar is worth a question. Both are starting points, not rules: raise the unbranded target to your real contribution margin and the findings list gets longer and more honest.

When the audit refuses to answer

A verdict drawn from too little data, or from a report that didn't export cleanly, is worse than no verdict — it's a confident wrong answer you might act on or forward to someone. So the audit withholds one when any of these is true:

Not enough to judge
under 25 terms · under $500 spend

Findings are still listed, because they may be worth a look. The scorecard verdict isn't, because at that size one row moves it.

Nothing met the floors
no term with 10+ clicks and $10+ spend

Nothing statistically meaningful was testable. That is not the same as a clean account, and the tool won't report it as one.

The report looks broken
zero sales account-wide · no orders column

Usually a date range too recent for attribution, or a column that didn't export. Findings are suppressed entirely — every term would otherwise look like waste.

In every one of those cases the page says which check tripped and what to re-pull, and the draft email is withheld — that one gets forwarded, so it's the last place an unsupported figure should appear.

What this audit will not tell you

  • Whether a term is genuinely bad. A term with no orders may be doing real work — brand defense, a halo on other ASINs, a long consideration cycle the attribution window misses. The tool sees a 14-day attribution window, not your strategy.
  • Whether your agency is bad. It reports the account's numbers. Whether those numbers reflect neglect, a deliberate call, or a bad quarter is a conversation to have with whoever manages the account.
  • Anything about the terms below the floors. Sub-10-click terms are statistically thin. They're counted in your total spend, never flagged as findings.

Where to get the file

Amazon. In the Amazon Ads console: Measurement & Reporting → Sponsored ads reports → Search term, report period Last 30 days, time unit Daily, CSV or Excel. There is a custom date range that reaches further back, but it is unreliable on this report — the 30-day preset is the one that works, and it is what the audit is calibrated for. Amazon walkthrough, including the wording to send whoever manages the account if you don't have console access yourself.

Walmart. In Walmart Connect Ad Center: Reports → On-demand → Request report → Item Keyword Performance, attribution window 14 days, grouping Daily, the last 60 days. Walmart doesn't record in the file which window you chose, so pick 14: it is what the audit is calibrated for. Walmart walkthrough, with the same wording for whoever manages the account.

Vetting a new agency

If the audit prompted you to look around, here's the checklist — questions and paper, not a list of agencies we'd send you to. We don't make recommendations, because the moment we take a referral fee, everything else on this site stops being worth reading.

About this tool

AuditMyAds is run independently and takes no money from any agency, ad-management platform, or AI tool. There are no referral fees, no affiliate links, and no revenue that changes based on who manages your account. That's a narrower claim than "we're unbiased" — the thresholds above are judgment calls, and reasonable people would set them differently. But the financial part is checkable, and it's the part that usually isn't true elsewhere.

The audit is free and always will be. There's no account to create, nothing to install, and no sales call at the end of it. Every threshold it applies is published in the methodology above, including the checks that make it refuse to answer — so if a figure here looks wrong, the arithmetic behind it is written down and you can check it yourself.

Questions about the methodology, corrections, or a threshold you think is set badly: contact@auditmyads.net.