Guide / optimization
Find Wasted TikTok Ad Spend with AI: Identify, Validate, and Review
Use TikTok Ads MCP and explicit business thresholds to surface suspected waste, exclude small samples and attribution delays, and produce a human-approval review list.
This guide uses TikTok Ads MCP to find and validate suspected wasted spend. Waste is not a fact the AI can establish from one high CPA. It is a hypothesis that must be checked against business targets, sample size, attribution delay, and delivery stage.
The guide assumes MCP is connected. If it is not, start with the TikTok Ads MCP Beginner Guide. The workflow reads data only; it does not pause ads or adjust budgets.
What you will have when you finish
- Suspected waste candidates generated from explicit thresholds.
- Spend, conversions, CPA, ROAS, and sample-size evidence for every candidate.
- Checks for learning phase, attribution delay, small samples, and tracking anomalies.
- A human-review list ranked by high, medium, or low confidence.
- Risk, missing information, and approval requirements for every recommendation.
Before you start
| Requirement | Example | Purpose |
|---|---|---|
| Advertiser ID | 1234567890123456789 | Locks the correct account |
| Primary conversion event | Complete Payment | Aligns efficiency metrics |
| Target CPA | 40 USD | Defines acceptable acquisition cost |
| Break-even ROAS | 1.8 | Tests whether value covers cost |
| Minimum evaluation spend | 80 USD | Prevents premature judgments |
| Minimum clicks or conversions | 30 clicks or 3 conversions | Controls small-sample false positives |
| Observation period | Last 14 complete days ending yesterday | Allows delivery and attribution time |
If business thresholds are missing, do not let the AI invent them. It can show a distribution, but the conclusion must wait for an owner to provide targets.
Step 1: Confirm account and business thresholds
Start with:
Use only read operations from TikTok Ads MCP. Confirm the account name, time zone, currency, and status for advertiser ID 1234567890123456789.
For this review, the primary conversion event is Complete Payment, target CPA is 40 USD, and break-even ROAS is 1.8.
Restate these definitions and identify anything still requiring confirmation. Do not fetch a large report or change anything.
Checkpoint: Currency matches the threshold unit and the conversion event matches the business outcome.
Step 2: Build the account baseline
For the last 14 complete calendar days ending yesterday, retrieve account totals and the campaign distribution:
- Spend, impressions, clicks, conversions, and conversion value.
- CTR, CPC, CVR, CPA, and ROAS.
- Spend share and conversion share for each campaign.
- Exact dates, time zone, currency, event, and attribution basis.
The baseline establishes normal account variation. It is not an instruction to flag problems immediately.
Step 3: Define candidate rules
Start with rules like these and adapt them to the business:
| Candidate type | Example rule | What still needs validation |
|---|---|---|
| Spend with no conversion | Spend ≥ 2× target CPA and zero conversions | Attribution delay, event tracking, learning stage |
| High CPA | At least 3 conversions and CPA > 1.5× target | Conversion quality, normal period variation |
| Low ROAS | Value is available, spend reaches the floor, and ROAS < break-even | Value delay, refunds, currency |
| Clicks without conversion | At least 30 clicks and CVR materially below baseline | Landing page, audience, tracking |
| High spend, low contribution | High spend share but much lower conversion or value share | Objective and incremental value |
These rules generate candidates. No single rule proves an ad should be paused.
Step 4: Exclude common false positives
For every candidate, check:
- Data completeness: Today is excluded and conversions have had time to arrive.
- Sample size: Spend, clicks, and conversions meet the predefined floors.
- Delivery stage: A new ad group may still be learning or have just launched.
- Tracking health: Conversions did not suddenly decline across the whole account or objective.
- Attribution consistency: Current and comparison periods use the same event and window.
- Missing business value: Offline conversion, repeat purchase, or customer quality may not be in the report.
- Status effects: Paused, ended, or in-review objects are identified separately.
When a check cannot be completed, mark it “to verify” and lower the confidence.
Step 5: Locate the source layer by layer
Drill down in this order:
- Account total: confirm the issue materially affects the whole account.
- Campaign: find the main source of spend and efficiency deviation.
- Ad group: inspect returned budget, audience, placement, and optimization context.
- Ad: compare creative-level spend, traffic, and conversion results.
Only drill down when the parent level shows material impact. An extreme percentage on a low-spend ad should not outrank a high-spend problem.
Step 6: Run the complete screening and validation
Replace the example values:
Use only read operations from TikTok Ads MCP to evaluate suspected wasted spend for advertiser ID 1234567890123456789.
Business definitions:
- primary conversion event: Complete Payment
- target CPA: 40 USD
- break-even ROAS: 1.8
- minimum evaluation spend: 80 USD
- minimum sample: 30 clicks or 3 conversions
- dates: the last 14 complete calendar days ending yesterday in the account time zone; exclude today
Process:
1. Confirm account name, advertiser ID, time zone, currency, conversion event, and attribution basis.
2. Return account totals and campaign-level spend, clicks, conversions, CPA, conversion value, and ROAS.
3. Generate candidates using these rules:
- at least 80 USD spend and zero conversions;
- at least 3 conversions and CPA above 60 USD;
- conversion value available and ROAS below 1.8;
- at least 30 clicks and CVR materially below the account baseline.
4. Drill into ad groups and ads only for candidates that materially affect the account.
5. For each candidate, check sample size, delivery stage, attribution delay, tracking anomalies, status, and comparison-period performance.
Output columns:
- level, name, ID, status
- spend, spend share, clicks, conversions, CPA, conversion value, ROAS
- candidate rule triggered
- supporting evidence
- possible false-positive factors
- confidence: high, medium, or low
- next human-validation step
Mark fields the API does not return as "unavailable." Do not guess or treat missing values as zero.
End with three groups: "continue observing," "investigate further," and "ready for human approval." Do not execute changes.
Do not create, edit, pause, or delete any campaign, ad group, ad, audience, budget, bid, or targeting setting.
Step 7: Review and rank candidates
High confidence
Data is complete, sample floors are met, poor efficiency persists across multiple complete days, and there is no obvious attribution or tracking issue.
Medium confidence
Some thresholds are met, but the period is short, conversions may still arrive, or only one dimension supports the finding.
Low confidence
The sample is small, delivery is new, data is missing, the event looks unhealthy, or comparison definitions differ. Observe only; do not submit a pause recommendation.
Confidence describes strength of evidence. It is never permission to execute automatically.
Produce an approval-ready action item
Every proposed action should contain:
| Field | Requirement |
|---|---|
| Object | Level, name, and ID |
| Proposed action | Continue observing, inspect tracking, or prepare pause approval |
| Evidence | Dates, spend, conversions, CPA/ROAS, and comparison |
| Estimated impact | Daily or period spend involved |
| Risk | Attribution delay, learning reset, traffic loss |
| Rollback condition | When to review and what triggers restoration |
| Approver | Named accountable person |
This guide produces approval material only and never calls a write tool.
Fast troubleshooting order
Everything is labeled waste
Check target CPA, currency, conversion event, and attribution window. A threshold may be wrong, or tracking may be unhealthy across the account.
The report says zero conversions but Ads Manager does not
Compare event name, dates, time zone, attribution window, and report level. Zero and unavailable must remain distinct.
A new ad is labeled inefficient immediately
Raise the minimum spend and sample floors, and explicitly exclude items still learning or lacking a complete observation period.
There are too many candidates
Sort by spend affected, keep only the items with the largest account impact, and then drill down.
ROAS cannot be calculated
If conversion value is not returned, mark ROAS unavailable. Do not estimate it from order count and an assumed average order value.
The query times out
Fetch campaign candidates first, then inspect ad groups and ads one candidate at a time.
Credential and execution safety
- Never paste passwords, cookies, access tokens, or sensitive client information into prompts.
- Every query uses read operations only.
- Reject any approval to pause, update a budget, or perform another write.
- A pause or budget change requires a separate approval, impact estimate, and rollback condition.