Strategi

Wasted Ad Spend Audit: 5 Meta & Google Ads Leaks Before 11.11

The pattern we find most often in audits: 341 Purchase events in Meta, 212 actual web orders. For months, every budget decision had been read off conversion numbers inflated by 61%. Today is World Savings Day (yesterday was Hari Oeang, when Indonesia marks the birth of its own currency), and with eleven days to 11.11, the cheapest Rupiah you can find is the one you stop spending on results that never happened.

Auction costs are already climbing, and wasted ad spend grows with them. A placement that wastes Rp 300,000 a day in a normal week can eat far more on sale day, because your pacing plan lifts budget across the whole account, leaky parts included.

This is the last piece in our year-end shopping season series, and it covers one problem only: the five places in a Meta and Google Ads account where budget leaks most often, which menu to open for each, when to call it red, and how to size the leak in Rupiah. For campaign structure in general, see our Meta Ads guide for SMBs. Here we go straight to the audit.


Quick Summary

  • The audit order matters. Tracking first. If conversions are duplicated, the other four checks are reading fake numbers.
  • One formula covers every segment: Leak = Segment spend − (Segment conversions × Break-even CPA). Positive means it leaks.
  • Meta Purchase events should roughly match web orders in your order system (a ratio near 1.0). Above 1.1, look for duplicate events before you trust any ROAS figure.
  • Finish structural changes (merging ad sets, changing bid targets, widening audiences) by November 4. After that, touch only negative keywords, exclusions, automated rules and replacement creative prepared for rotation.

One Formula for All Five Leaks

Before you open the account, pin down two numbers from your own data:

Break-even CPA   = AOV × Contribution margin before ads
Break-even ROAS  = 1 ÷ Contribution margin before ads

Leak (Rp)        = Segment spend − (Segment conversions × Break-even CPA)
                   Result ≤ 0  → not a leak, leave it
                   Result > 0  → goes on the fix list

A segment can be a placement, a search term, an ad set, or the run of days when frequency was past its ceiling. Two conditions keep the number honest. Use the same attribution column for every segment. On Meta we use 7-day click, because view-through is where credit most easily hitches a ride. In Google Ads, use the Conversions column with the same Primary action window across segments (not All conv.). And use at least 30 days of data, so one bad day doesn’t convict a segment.

How to calculate contribution margin properly for a promo period is covered in flash sale discount break-even. Don’t use your full-price margin if what you’re selling on 11.11 is the discounted price.


Wasted Ad Spend Audit Checklist: 5 Leaks

#LeakWhere to find itRed flagFix
1Broken tracking or duplicate conversionsMeta: Events Manager, Pixel dataset, Overview and Diagnostics. Google Ads: Goals, Conversions, SummaryPurchase ÷ web orders > 1.1, or two Primary actions for one eventMatch event_id across Pixel and CAPI. One Primary action per event, transaction ID, then correct bidding targets
2Junk search termsGoogle Ads: Campaigns, Insights and reports, Search terms. For PMax: the campaign search terms reportClicks ≥ 3 ÷ account CVR with 0 conversionsNegative keywords (exact or phrase), shared negative list, campaign-level negatives in PMax
3Wasteful placementsMeta: Ads Manager, Breakdown, By delivery, Placement. Google: Where ads showed reportLeak > 0 and placement CPA > 2× account CPAMeta: Advertising settings, Account controls, Placement controls, or a value rule to bid it down. Google: account-level placement exclusions
4Overlapping audiencesMeta: Audiences, tick 2–5 audiences, Show audience overlap. “Learning limited” in the Delivery columnOverlap > 30% between prospecting ad sets running at the same timeMerge ad sets, cross-exclude, one source per audience
5Frequency fatigueMeta: Reach, Frequency and Cost per 1,000 Accounts Center accounts reached columns, 7-day windowCost per new person reached up > 3× week over weekAutomated rule, cut daily budget back to the last level where cost per new person was still normal, rotate creative or widen the audience

The thresholds are starting points from accounts we manage, not official platform numbers. Tune them after one or two audit cycles.


Leak 1: Broken Tracking and Duplicate Conversions

This is the most expensive leak because every report built on it looks healthy.

Check duplicate Purchase events in Meta Events Manager

Take 30 days of Purchase events from Events Manager and compare them with website orders in your order system for the same period. Meta reporting slightly below your backend is normal (ad blockers, consent, browsers). Meta reporting above your backend almost always means the Pixel and Conversions API are sending the same event without a matching identity. Meta only treats two events as one when both event_name and event_id are identical.1 The classic pattern: Pixel installed through a store plugin, CAPI through server-side GTM, and each generating its own event_id.

Check duplicate Primary actions in Google Ads

Open Goals, Conversions, Summary. Look for two conversion actions for the same event, say “Purchase” from the Google Ads tag and “purchase” imported from GA4,2 both set to Primary. The Conversions column counts Primary actions only, so two Primaries for one order means one order counted twice.3 Make sure purchases count as Every, with a transaction ID.45

There’s a trap in the fix. Once duplication is cleaned up, the conversions smart bidding sees drop by the size of the duplication (with two Primary actions in Google, roughly half). Leave target ROAS at 500% and the algorithm reads it as a performance collapse and pulls back spend. Lower the target to a number that matches clean data on the same day, and log the change. This is why Leak 1 goes first: bidding needs a few days to settle.

For tracking coverage on the GA4 side, see the first number in our post-campaign review in GA4.


Leak 2: Junk Search Terms in Google Ads

Open Campaigns, Insights and reports, Search terms, 90-day range.6 Filter conversions = 0 and sort by cost. Don’t negate every zero on sight. A term with 15 clicks and no conversions hasn’t proven anything yet.

Run a simple probability check. If your account conversion rate is 2.6%, the chance that a perfectly normal term gets zero conversions from 100 clicks is:

P(0 conversions) = (1 − CVR)^clicks
                 = (1 − 0.026)^100
                 ≈ 7%

At 100 clicks, a term that converts at your account average would show zero conversions only about 7% of the time. Our working rule is a little stricter: click threshold ≈ 3 ÷ CVR, which puts that chance near 5%. At 2.6% CVR, that is about 115 clicks, which is where we negate. Terms that are plainly irrelevant (job vacancies, repair, “how to make”, competitor name plus “review”) don’t need to wait for the math.

Add negatives as exact or phrase, not broad, and keep them in a shared negative list so any new 11.11 campaign inherits them.7 Performance Max now takes campaign-level negative keywords.8 If PMax is also catching brand searches your Search brand campaign already pays for, add brand exclusions so the credit stays with the brand campaign.


Leak 3: Placements That Never Sell

In Ads Manager, go to campaign level, then Breakdown, By delivery, Placement. Add a purchase column on 7-day click attribution. Placements with heavy spend and thin purchases usually turn out to be Audience Network, right column, or certain video placements.

One important change has been rolling out since late August. On August 20, 2026 Meta began notifying some advertisers that ad set placement exclusions are going away; no timeline has been announced.9 The exclusions that still bind sit at account level: Advertising settings, Account controls, Placement controls.10 The options are limited (Audience Network, Facebook Marketplace, right column) and availability can differ by account, so check the menu in your own. For governance this is actually better: the block sits at account level, so it holds even when a teammate builds a new campaign on Advantage+ placements.

In Google Ads, account-level placement exclusions apply across Display, YouTube, Demand Gen, PMax and the Search Partner Network.11

A caveat. A placement with a poor click-attributed CPA sometimes does work early in the buyer journey. If you’re unsure, don’t block it in 11.11 week. Add a value rule that bids that placement down (say 50%) and test a full block after 12.12.12


Leak 4: Audiences Bidding Against Each Other

When several ad sets from the same account are eligible to reach the same person in one auction, Meta enters only the one with the highest total value. The others sit out.13 You aren’t billed twice. The losing ad sets just struggle to spend, stay in learning longer, and often end up “Learning limited”.

To check: open Audiences, tick the 2–5 audiences your prospecting ad sets use, then Show audience overlap.14 The pair that causes trouble most often is a purchaser lookalike and an interest audience close to your product category.

We don’t put a Rupiah figure on this one in the example below, and we’d argue you shouldn’t either. The damage shows up as split learning, which you can’t point to on an invoice. The fix is structural: merge prospecting ad sets with overlap above 30%, add cross-exclusions, and make sure every retargeting ad set excludes purchasers. We cover the layered exclusion pattern in Meta Ads cart abandoner retargeting.


Leak 5: Frequency Past Its Ceiling

Frequency on its own misleads. A frequency of 6 can be healthy for a cart audience and already burnt out for a cold one. The more honest number is cost per newly reached person:

Cost per new person = Spend this period
                      ÷ (Cumulative reach to this period − Cumulative reach to last period)

If that number rises more than threefold from the previous week, nearly all the extra money in that ad set is going to showing the same ad to the same people again.

The quick fix is an automated rule: pause the ad set or send a notification when 7-day frequency crosses your limit and cost per purchase is already above target.15 The real fix is a wider audience or new creative.


Worked Example: Premium Cookware Brand, Surabaya

A premium pots and pans brand sells through its own website, with about 20% of orders closing on WhatsApp (tracked separately, so the web-order ratio still holds). October ad spend was Rp 250 million: Meta Rp 180 million, Google Rp 70 million (Search Rp 46 million, PMax Rp 24 million). AOV Rp 1,450,000, contribution margin before ads 48%.

Break-even CPA  = 1,450,000 × 48% = Rp 696,000
Break-even ROAS = 1 ÷ 0.48        = 2.08x

Leak 1. The backend logged 212 web orders in 30 days. Events Manager logged 341 Purchases. Ratio 1.61. The cause: the store plugin and server-side GTM were generating different event_id values. In Google Ads, the Purchase tag and the GA4 import were both Primary. Reported Google ROAS was 6.2x, 3.1x once cleaned. The 500% Google target ROAS the team had been running translates to roughly 250% on clean data, a thin margin over the 208% break-even. We don’t size this leak in Rupiah, but it means bidding had been far more aggressive for months than anyone on the team realized. On Meta, ROAS goals on sales ad sets were lowered proportionally (divided by 1.61) the same day.

With Leak 1 fixed, the other four were recalculated on clean data:

#Segment30-day spendConversions (Meta 7-day click / Google Conversions)Leak (Rp)
223 search terms, ≥ 115 clicks, 0 conversionsRp 6,800,0000Rp 6,800,000
3Audience Network + right columnRp 11,900,0003Rp 9,812,000
41% LAL vs “cooking” interest, 41% overlapnot sized4 ad sets merged into 2
5Retargeting, 10 days with 7-day frequency > 8Rp 9,500,0007Rp 4,628,000
Total measuredRp 21,240,000

Leak 3 math: Rp 11,900,000 − (3 × Rp 696,000) = Rp 9,812,000. Leak 5: Rp 9,500,000 − (7 × Rp 696,000) = Rp 4,628,000.

On the reach side, Leak 5 looks like this: week one’s Rp 7 million reached 38,000 people (Rp 184 each), week two’s Rp 7 million added only 5,500 new people (Rp 1,273 each, nearly 7x). The Rp 9.5 million in the table is the last 10 days of these two weeks, once 7-day frequency was above 8.

Rp 21.2 million a month is about 8.5% of spend, or 30 orders at break-even CPA. What we’d recommend to a client in this position: don’t pour the Rp 21.2 million straight into other campaigns. Hold it as a sale-day reserve that opens only if the scale rules in 11.11 ad budget pacing are met. If they aren’t, the money stays in the bank.


Audit Log Template for the Team Archive

Every change from the audit goes in one place. It’s what the founder or board will ask about when the 11.11 numbers are reviewed, and what you’ll need when reconciling against Change history in Google Ads and Activity history in Meta.

AD ACCOUNT AUDIT LOG · Data period: [date] to [date]
Break-even CPA: Rp [ ]     Break-even ROAS: [ ]x     Attribution column: Meta [ ] / Google [ ]

[1] TRACKING
    Meta Purchase / backend web orders   : [ ] / [ ] = ratio [ ]
    Duplicate Primary actions in Google  : yes / no → [action name]
    Transaction ID sent                  : yes / no
    Bidding target old → new             : [ ] → [ ]   changed on: [ ]

[2] SEARCH TERMS
    Account CVR: [ ]%   Click threshold (3 ÷ CVR): [ ]
    Negatives added: [ ]   Negative list: [name]
    Leak: Rp [ ]

[3] PLACEMENTS
    Placements blocked (account level): [ ]
    Leak: Rp [ ]

[4] OVERLAP
    Audience pairs > 30%: [ ]   Ad sets before → after: [ ] → [ ]

[5] FREQUENCY
    Ad sets over the limit: [ ]   Cost per new person: Rp [ ] → Rp [ ]
    Rule installed: [rule name]   Leak: Rp [ ]

TOTAL MEASURED LEAK: Rp [ ] / month
Decision: reallocate to [ ] / sale-day reserve / returned
Done by: [name]   Approved by: [name]   Date: [ ]

Work Order: October 31 to November 11

DateAction
Oct 31–Nov 1Leak 1: fix event_id, Primary status, transaction ID. Correct bidding targets the same day
Nov 2Leaks 2 and 3: negative keywords, account-level placement exclusions
Nov 3–4Leaks 4 and 5: merge overlapping ad sets, widen fatigued audiences. Deadline for structural changes
Nov 5–7Leak 5: install automated rules, replacement creative ready by Nov 7
Nov 8–10Freeze structure. Allowed: new negatives from daily search terms, rotating in prepared creative
Nov 11Run the pacing plan. The audit reserve opens only through the scale rules

Why structure locks on November 4: merging ad sets and changing bidding targets triggers a new learning phase. If that happens on D-1, the system is still learning when auction costs peak. The weeks leading up to this are mapped in the 11.11 sale prep checklist.


When This Audit Doesn’t Fit

If your ad spend is under roughly Rp 10 million a month or the account has run less than 30 days, segments won’t have enough data yet, so do Leaks 1 and 2 only. If more than half your sales close on WhatsApp or a marketplace, first send orders from your order system back through Conversions API or offline conversion import, because without that the leak formula will punish segments that actually sell.


If You Want an Outside Team to Run It

Internal teams tend to skip Leak 1 because inflated numbers are comfortable to report upward. We run this five-point audit for marketing teams that need clean numbers before a budget meeting, including the event_id fix, conversion action cleanup, and a change log a founder can actually read. If you want a short audit before November 4, book a session with our team.


Year-End Shopping Season Series

This article closes our October 2026 series. The order follows the 11.11 prep calendar:

  1. 11.11 sale prep: a 40-day, week-by-week checklist
  2. Brand consistency audit: 7 touchpoints that drift
  3. Moving marketplace buyers to WhatsApp without penalties
  4. Flash sale discount break-even formula
  5. TikTok Live selling script: a 90-minute run-of-show
  6. Meta Ads cart abandoner retargeting: 3 audiences and budget split
  7. Micro-influencer brief template
  8. PDP Law consent wording for forms, WhatsApp and checkout
  9. GoFood and GrabFood menu photos on your phone
  10. 11.11 ad budget pacing by day
  11. Google Business Profile offer posts for 11.11
  12. Post-campaign review in GA4: 6 numbers to check
  13. WhatsApp broadcast for 11.11 without getting banned
  14. Trust signals Gen Z checks in an online store
  15. Customer testimonial video in 60 seconds
  16. Wasted ad spend audit: 5 leaks before 11.11 (this article)

References


<script type="application/ld+json">
[
  {
    "@context": "https://schema.org",
    "@type": "Article",
    "headline": "Wasted Ad Spend Audit: 5 Meta & Google Ads Leaks Before 11.11",
    "description": "A wasted ad spend audit for Meta and Google Ads before 11.11: 5 leaks (duplicate conversions, search terms, placements, overlap, frequency), menus and Rp math.",
    "image": "https://eranya.digital/images/blog/launch-and-leave.webp",
    "author": {"@type": "Organization", "name": "Eranya Digital", "url": "https://eranya.digital"},
    "publisher": {"@type": "Organization", "name": "PT Eranya Digital Nusantara", "logo": {"@type": "ImageObject", "url": "https://eranya.digital/images/logo.png"}},
    "datePublished": "2026-10-31",
    "dateModified": "2026-10-31",
    "mainEntityOfPage": {"@type": "WebPage", "@id": "https://eranya.digital/blog/wasted-ad-spend-5-leaks/"},
    "inLanguage": "en-US",
    "keywords": ["wasted ad spend", "ad account audit checklist", "google ads duplicate conversions", "google ads search terms report", "meta ads audience overlap", "meta ads frequency too high", "reduce wasted ad spend"],
    "articleSection": "Strategi"
  },
  {
    "@context": "https://schema.org",
    "@type": "FAQPage",
    "mainEntity": [
      {"@type": "Question", "name": "How do I find wasted ad spend in Meta or Google Ads?", "acceptedAnswer": {"@type": "Answer", "text": "Start with your break-even CPA: AOV multiplied by contribution margin before ads. Then split spend by segment (placement, search term, ad set, frequency window) and calculate segment spend minus segment conversions multiplied by break-even CPA. A positive result is Rupiah spent above your profit ceiling. Only do this after you have confirmed conversion tracking is not double counting, because inflated conversions make every segment look healthy."}},
      {"@type": "Question", "name": "Why does Google Ads show more conversions than actual orders?", "acceptedAnswer": {"@type": "Answer", "text": "The most common cause is two conversion actions for the same event both set to Primary, for example a Google Ads Purchase tag and a purchase event imported from GA4. Check Goals, Conversions, Summary. Set one of them to Secondary, make sure purchases use Every counting with a transaction ID so the same order is not counted twice, then adjust your target ROAS or CPA, because the conversions smart bidding sees will drop."}},
      {"@type": "Question", "name": "Can you still exclude Audience Network placements on Meta?", "acceptedAnswer": {"@type": "Answer", "text": "In August 2026 Meta began notifying some advertisers that ad set placement exclusions are going away; no timeline has been announced. The exclusions that still hold sit at account level: Advertising settings, Account controls, Placement controls. There you can block some placements, such as Audience Network, Facebook Marketplace and right column, for every campaign in the account. Check the menu in your own account, since availability can differ."}},
      {"@type": "Question", "name": "How often should an ad account be audited?", "acceptedAnswer": {"@type": "Answer", "text": "For accounts spending tens of millions of Rupiah a month, review search terms and frequency weekly, run the full five-point audit monthly, and always before peak periods like 11.11 and 12.12. Finish the full audit at least a week before the sale day so structural changes don't trigger a new learning phase on the day auction costs are highest."}}
    ]
  }
]
</script>

Footnotes

  1. Meta for Developers. Handling Duplicate Pixel and Conversions API Events. developers.facebook.com/documentation/ads-commerce/conversions-api/deduplicate-pixel-and-server-events ↩

  2. Google Ads Help. Create conversions from Google Analytics events in Google Ads. support.google.com/google-ads/answer/2375435 ↩

  3. Google Ads Help. About primary and secondary conversion actions. support.google.com/google-ads/answer/11461796 ↩

  4. Google Ads Help. Use a transaction ID to minimize duplicate conversions. support.google.com/google-ads/answer/6386790 ↩

  5. Google Ads Help. About conversion counting options. support.google.com/google-ads/answer/3438531 ↩

  6. Google Ads Help. About the search terms report. support.google.com/google-ads/answer/2472708 ↩

  7. Google Ads Help. About negative keywords. support.google.com/google-ads/answer/2453972 ↩

  8. Google Ads Help. Negative keywords in Performance Max campaigns. support.google.com/google-ads/answer/15726455 ↩

  9. Social Media Today. Meta Removes Option to Exclude Ad Placements (August 20, 2026). socialmediatoday.com/news/meta-removes-option-to-exclude-ad-placements/828461 ↩

  10. Jon Loomer Digital. A Complete Guide to Meta Advertising Settings. jonloomer.com/meta-advertising-settings ↩

  11. Google Ads Help. Exclude placements at the account level. support.google.com/google-ads/answer/7331110 ↩

  12. PPC Land. Some Meta advertisers lose placement controls, with bid cuts capped at 90%. ppc.land/some-meta-advertisers-lose-placement-controls-with-bid-cuts-capped-at-90 ↩

  13. Meta Business Help Center. Understand auction overlap. facebook.com/business/help/537699989762051 ↩

  14. Meta Business Help Center. About Overlapping Audiences. facebook.com/business/help/1679591828938781 ↩

  15. Meta Business Help Center. About Automated Rules in Meta Ads Manager. facebook.com/business/help/1694779440789213 ↩

Wasted Ad Spend Audit: Common Questions

How do I find wasted ad spend in Meta or Google Ads?

Start with your break-even CPA: AOV multiplied by contribution margin before ads. Then split spend by segment (placement, search term, ad set, frequency window) and calculate segment spend minus segment conversions multiplied by break-even CPA. A positive result is Rupiah spent above your profit ceiling. Only do this after you have confirmed conversion tracking is not double counting, because inflated conversions make every segment look healthy.

Why does Google Ads show more conversions than actual orders?

The most common cause is two conversion actions for the same event both set to Primary, for example a Google Ads Purchase tag and a purchase event imported from GA4. Check Goals, Conversions, Summary. Set one of them to Secondary, make sure purchases use Every counting with a transaction ID so the same order is not counted twice, then adjust your target ROAS or CPA, because the conversions smart bidding sees will drop.

Can you still exclude Audience Network placements on Meta?

In August 2026 Meta began notifying some advertisers that ad set placement exclusions are going away; no timeline has been announced. The exclusions that still hold sit at account level: Advertising settings, Account controls, Placement controls. There you can block some placements, such as Audience Network, Facebook Marketplace and right column, for every campaign in the account. Check the menu in your own account, since availability can differ.

How often should an ad account be audited?

For accounts spending tens of millions of Rupiah a month, review search terms and frequency weekly, run the full five-point audit monthly, and always before peak periods like 11.11 and 12.12. Finish the full audit at least a week before the sale day so structural changes don't trigger a new learning phase on the day auction costs are highest.