Direct answer: an AI marketing consultant audits a Meta Ads account in 7 steps. AI pulls the account data and the sales data, then checks placements, audiences, the learning phase, stop rules, and the budget structure. Then AI writes recommendations in order of money impact. A person decides every budget change.
Main condition: this method applies to accounts that run click-to-WhatsAppCTWAA Click-to-WhatsApp ad. It sends people from Facebook or Instagram straight into your WhatsApp conversation.How to track CTWA ads ads (CTWA) or website ads, with sales data that you can read. Limit: AI does not guarantee sales or ROASROASRevenue from ads divided by ad spend. A ROAS of 4 means each Rp 1,000 of ad spend returns Rp 4,000 of gross revenue.How to calculate ROAS and break-even ROAS. AI also does not change a budget without approval from the account owner.
Written by Rama Aditya. Number sources: audit files of the Rama Digital ad account from 6 to 26 September 2026, internal ad rules, and Meta Business Help Center articles. ClaudeClaude ProThe paid subscription for the Claude AI assistant from Anthropic. It unlocks connectors to outside tools.Open the glossary reads the account through the Meta Ads MCPMCPA standard that lets an AI program use your tools and data under clear permissions.Open the glossary and reads the sales database in read-only mode. Data updated on 3 October 2026.
What AI reads and what a person decides
Many ad audits stop at a report of CTRCTRClicks divided by impressions, as a percentage. CTR shows how often people press the ad or the search result they saw.Open the glossary and cost per result. That report does not answer the business owner: which ads bring buyers, and which money must stop today.
We split the work clearly. AI reads large amounts of data and finds patterns. A person holds the decisions that move money or send messages to customers. This split is the core of the AI marketing consultant guide that this cluster follows.
| Area | AI reads | A person decides |
|---|---|---|
| Placements | Spend, CTR, and chats per placement | The placement rules of the account |
| Audiences | Audience size and delivery status | Who may receive a BOFU message |
| Ads | Cost per chat, CTR, and buyers per ad | Which ads to pause |
| Budget | CBO spend pattern and spend left until the end date | Raise, cut, or move budget |
| Messages to buyers | List of unpaid invoices | Send or not |
What to prepare before the audit
- Read access to the ad account, dataset, and Page in Meta Business.
- A Claude connection to the ad account, for example through the Meta Ads MCP.
- Read access to sales data: paid invoices, chats from ads, and the ad code on each chat.
- Written account rules: placements, age, exclusion audiences, and stop rules.
- 1 budget owner who can answer on the same day.
Step 1: Pull account data and sales data in 3 ranges
Ask AI to pull Meta data for 3 ranges: 7 days, 3 days, and today. The 7 day range shows the trend. The today range shows a leak that still runs.
Meta data alone does not answer the sales question. In the 23 September 2026 audit, our 3 class campaigns spent Rp 1,741,808. The database recorded 2 paid tickets from ads, Rp 358,000. The class ad ROAS on that day was 0.21.
We saw that number only because AI also read invoices and chats that carry the ad code. The method that joins ad, chat, and payment is in the article on attribution from ad to bank transfer.

Step 2: Check placements before other metrics
Check spend per placement before you judge the creative. A wrong placement makes every other metric misleading.
Meta says Advantage+ placements show ads on Facebook, Messenger, Instagram, WhatsApp, Audience Network, and Threads. Meta reports an 11.7% lower average CPACPAThe average cost of 1 result, for example 1 order or 1 qualified buyer.Open the glossary in an experiment on 147 thousand campaigns (About Advantage+ placements, read on 3 October 2026). That CPA measures the optimized result, not buyers.
Our account data shows a different pattern:
- Over the account life up to 6 September 2026, Audience Network spent Rp 1,070,128. Its CTR was 20.56% and 30.79%. A CTR that high is misclicks, not interest.
- From 27 to 29 September 2026, WhatsApp Status took 98% of the impressionsImpressionThe number of times your ad or page appeared on a screen. An impression is not a person and not a search.Open the glossary of the MCP service ads and 58% of their spend. CPMCPMThe cost of 1,000 ad impressions. CPM prices reach, not results.Open the glossary was Rp 1,284 and CTR 0.33%. Those cheap chats brought no buyer yet.
- On the night of 26 September 2026, WhatsApp Status spent Rp 19,289 for 8,118 impressions and 0 chats. Facebook Feed in the same ad set spent Rp 16,622 and brought 2 chats.
Rama Digital recommendation: set placements explicitly to Facebook and Instagram only. Since 30 September 2026, our account rules forbid WhatsApp Status and Audience Network with no exception. After each change, AI reads the effective placements of the ad set again.
Step 3: Match audiences to the funnel stage
Check who receives each message. A BOFU message, such as a sign-up deadline or seats left, means something only to people who already saw the offer. The stage framework is in the TOFU, MOFU, BOFU framework (Indonesian).
This is our own failure. On 26 September 2026, the warm audience for the class deadline ad held only 20 page visitors. We moved that ad set to a broad audience in Indonesia, age 25 to 65, with deadline images.
The result: Rp 155,034 spent from 12.00 to 12.59 WIB, 9,964 impressions, and 0 chats. CTR was 0.87% to 1.07%. The campaign budget also showed Rp 300,000, not the Rp 50,000 set at creation. After the move back to the warm audience, the campaign spent Rp 19,565 and still had 0 chats.
We wrote the lesson as a rule: BOFU is for warm people only. When the warm audience is too small, build Instagram, Page, and video engagement audiences first. Do not fall back to broad.
Step 4: Test the learning phase and the optimization event
Compare the optimization event volume with the Meta threshold. Meta says an ad set is unlikely to exit the learning phase when it does not get about 50 optimization events in the week after the last significant edit (About the learning phase, read on 3 October 2026).
Significant edits include targeting, creative, optimization event, a new ad, and a pause of 7 days or more (Significant edits and learning phase, read on 3 October 2026). So AI also records the date of the last edit per ad set.
On 23 September 2026, our BOFU campaign optimized for Purchase spent Rp 387,321 in 5 days. Meta recorded 0 Purchases. Its CPM was Rp 130,587, almost 2 times the TOFU CPM of Rp 67,184. Class sales volume was far below 50 per week.
Rama Digital recommendation: optimize for an event that fires often enough, such as Lead or chat. Until tracking has run for 30 days, judge creative by CTR and CPC. In our account, a CTR below 2% means weak creative.
Step 5: Apply stop rules per ad
Write the stop rules before the ad goes live, then ask AI to check them in each audit. Written rules stop the same debate from coming back every day.
| Rule | Threshold | Since |
|---|---|---|
| Pause an ad with no chats | Lifetime spend above Rp 50,000 with 0 chats | 27 September 2026 |
| Weak creative | CTR below 2% | 6 September 2026 |
| Cost per chat | 2 times the ad set median for 3 days | 25 September 2026 |
| Sales campaign | Wait 48 hours after the last chat, then read paid invoices | 24 September 2026 |
The 48 hour rule has a data reason. Our class buyers pay 0 to 2 days after the chat. A campaign judged on same-day payments looks dead while its buyers have not yet paid.
The Rp 50,000 rule has 1 written exception: the class urgency ad set stayed live until the class on 28 September 2026. The account owner set that exception, not AI.
Step 6: Check the budget structure and CBO
Read how the campaign splits its budget. Advantage+ campaign budget (CBO) distributes 1 budget in real time to the ad sets with the most opportunities (About campaign budgets and ad set budgets, read on 3 October 2026). As a result, an ad set with a small audience often gets no spend.
- On 23 September 2026, the class MOFU and BOFU ad sets spent Rp 104 in 3 days. CBO gave almost all budget to TOFU.
- On 20 September 2026, we tested minimum spend limits per ad set on a campaign of Rp 100,000 per day. Limit totals of Rp 85,000, Rp 70,000, and Rp 50,000 were all rejected at activation.
- Meta says a minimum spend limit is a target range, not a guarantee (About ad set spend limits, read on 3 October 2026).
Rama Digital recommendation: when 1 stage needs a fixed share, give it its own campaign. Write budgets in whole rupiah, for example 100000 for Rp 100,000. After a budget change through the API, activate the campaign again, because the change pauses it.
Step 7: Write recommendations by money impact, then hand them to a person
Ask AI to order recommendations by the money they save or move. Each item names the entity, the number before, and the action. Then the account owner picks the items to run.
In the audit on the night of 26 September 2026, AI wrote 4 recommendations. Rama approved items 1 and 2. Rama also asked for 3 times the class budget, then narrowed that request to good ads only. From there, 3 weak ads were paused.
AI also advised against 1 increase with a data reason. The class urgency budget stayed at Rp 50,000, because its warm audience was small and more budget would only raise frequency. The final decision stayed with the account owner.

Worked example: the audit on the night of 26 September 2026
This example uses data from the Rama Digital ad account itself. It contains no client data.
| Stage | Content |
|---|---|
| Input | Meta data for 9 active campaigns at about 22.00 WIB, plus invoices from the sales database |
| Finding 1 | Spend that day was Rp 1,049,533, with 46 chats and 3 website leads |
| Finding 2 | WhatsApp Status in the MCP ad set spent Rp 19,289 for 0 chats |
| Finding 3 | The WhatsApp API cost campaign to the website spent Rp 157,587 in 4 days, 0 leads |
| Decision | Rama approved the placement limit and the pause of the website campaign |
| Output | The MCP ad set shows only on Facebook and Instagram. The website campaign is PAUSED. |
Sales that day are recorded apart: 2 paid class invoices, Rp 358,000. The audit did not tie those sales to a specific campaign, so we do not use that number as proof of cause.
Checklist for a Meta Ads audit with AI
- Pull data for 7 days, 3 days, and today. Owner: AI. Evidence: a table per campaign.
- Join Meta data with paid invoices per ad code. Owner: AI. Evidence: a table of buyers per ad.
- Check spend per placement. Owner: AI. Evidence: a list of placements that break the rules.
- Check BOFU audience size and delivery status. Owner: AI. Evidence: size per audience.
- Count optimization events per week per ad set. Owner: AI. Evidence: events since the last significant edit.
- Apply the stop rules per ad. Owner: AI. Evidence: a list of ads above Rp 50,000 with 0 chats.
- Write recommendations by money impact. Owner: AI. Evidence: a dated audit file.
- Approve or reject each item. Owner: a person. Evidence: a decision log. Stop criterion: no budget change without written approval.
Limits of an audit with AI
- Meta records chats with a 7 day attribution window. Data for today is not complete.
- Meta Purchase counts per campaign can differ from the sales database. We use the database as the sales reference.
- CPA cannot be a benchmark before tracking has run for 30 days.
- A chat from an ad is not yet a buyer. Reply quality also sets the result, as we show in WhatsApp AI chatbot for closing.
- AI does not guarantee ROAS, sales, or a specific cost per chat.
FAQ
May AI change the ad budget on its own? Not in our account. AI reads data and writes recommendations. Each budget change waits for approval from the account owner, because the change moves money.
Why switch off WhatsApp Status and Audience Network? Our account data shows large spend with no buyers. Audience Network spent Rp 1,070,128 with misclick CTR. WhatsApp Status gave cheap chats that did not become buyers.
When must an ad be paused? Our rule: pause an ad with spend above Rp 50,000 and 0 chats. A sales campaign waits 48 hours after the last chat before we judge it.
May a BOFU ad use a broad audience? No. A deadline message to a broad audience burned Rp 155,034 in 1 hour with 0 chats. When the warm audience is small, build engagement audiences first.
How many optimization events does the learning phase need? Meta says about 50 optimization events in the week after the last significant edit. An account with low volume should pick an event that fires more often.
Next step
The limit still applies: an audit improves decisions, it does not guarantee results. For how we build an agent skill that reads paid media across platforms, read Rama Marketing Agent Skill (Indonesian).
If you want us to audit and run the account, see Meta Ads Performance Management, from Rp 2 million per month plus media budget. If your team wants to read its own account with Claude, see Kokpit Iklan AI untuk Tim Marketing, Rp 12.5 million per batch for up to 10 people. To talk about your account first, book a 30 minute initial consultation.
Sources
- Meta Business Help Center: About Advantage+ placements, read on 3 October 2026.
- Meta Business Help Center: About the learning phase, read on 3 October 2026.
- Meta Business Help Center: Significant edits and learning phase, read on 3 October 2026.
- Meta Business Help Center: Cost per optimization event, read on 3 October 2026.
- Meta Business Help Center: About campaign budgets and ad set budgets, read on 3 October 2026.
- Meta Business Help Center: About ad set spend limits with Advantage+ campaign budget, read on 3 October 2026.
- Internal audits of the Rama Digital ad account, 6, 23, 25, and 26 September 2026, and the internal ad rules as of 30 September 2026.




