SpendSignoffSpendSignoff

Guide

Automate Facebook Ads with SpendSignoff: Meta campaign management via AI

Meta Advantage+ handles targeting and placement automatically. SpendSignoff handles budget allocation, pacing anomalies, and spend efficiency across your Meta campaigns — proposing every change before it goes live.

How SpendSignoff reads Meta

SpendSignoff connects to the Meta Marketing API via OAuth. The read scope covers campaigns, ad sets, ads, creative assets, and performance metrics across your Facebook and Instagram campaigns. The operator reads account data at platform-native refresh rates — campaign-level performance updates every 15 minutes; ad-level metrics update hourly.

Meta has a more complex account hierarchy than Google Ads: Business Manager → Ad Account → Campaign → Ad Set → Ad. SpendSignoff maps this full hierarchy on first sync and uses it to scope every draft precisely — a budget change is proposed at the campaign or ad set level, never at an ambiguous level that could affect more than intended.

The operator treats Meta and Google Ads as two streams feeding one view. Cross-platform budget decisions — moving spend from Meta to Google or vice versa — appear as paired drafts: one draft for the Meta reduction, one for the Google increase. You approve or reject them together.

What the operator reads from Meta

On each sync cycle, the operator reads:

  • Campaign structure — objective, buying type (auction vs. reservation), bid strategy, daily or lifetime budget, schedule, and delivery status.
  • Ad set targeting — audience definition (custom audiences, lookalikes, interest targeting), placement, optimization event, and bid cap or target cost.
  • Ad performance — impressions, reach, frequency, clicks, CTR, CPM, CPC, conversions by event type, cost per result, and ROAS at ad level.
  • Budget pacing — daily spend vs. daily budget, weekly spend vs. weekly budget cap, and projected end-of-period spend vs. lifetime budget.
  • Audience overlap — ad sets within the same campaign that are targeting overlapping audiences, which can cause internal auction competition.
  • Delivery insights — audience saturation signals, frequency above 3.0 per user per week, and CPM trend vs. account 30-day average.

Meta-specific optimization patterns

Audience fatigue is the most common Meta-specific problem. When frequency exceeds 3.0 per user per week for a static creative, CTR drops measurably and CPM rises as the algorithm reduces delivery to avoid irritating the audience. The operator detects this pattern and drafts an ad set pause or a budget shift to fresher creative.

Budget concentration is the second pattern. Meta Advantage Campaign Budget (ACB) distributes budget across ad sets automatically, but it concentrates on the best-performing ad set quickly, often starving test ad sets before they have enough impressions to produce statistically meaningful data. The operator can propose manual budget overrides on individual ad sets to force a minimum impression floor for tests.

Conversion event mismatch is common in new accounts. An ad set optimizing for Purchase may not have enough purchase events for the Meta algorithm to exit the learning phase (requires 50 optimization events in 7 days). The operator detects campaigns stuck in learning and drafts an optimization event change to a higher-volume funnel step like Add to Cart or Initiate Checkout.

Meta write scope works the same way as Google Ads

SpendSignoff requests Meta write scope separately from read scope, and only to execute changes you have explicitly approved. The AI client has mcp.read and mcp.draft only — it reads your Meta account and proposes changes. The actual API write to Meta happens in the SpendSignoff backend after you run the Approve and push live → Confirm control. Every Meta write is recorded in the KMS-signed audit log with the draft ID, the approving user, and a timestamp.

Connect Meta and configure the loop

1

Connect your Meta Business account

From the Accounts screen, click Connect account and select Meta. You are redirected to Meta to authorize the SpendSignoff app via OAuth. Grant access to your Business Manager and the specific ad accounts you want to connect.

2

Select ad accounts

After OAuth, you see a list of ad accounts under your Business Manager. Select the accounts to connect. Each account is a separate connection with its own sync state and loop configuration.

3

Verify the Meta Pixel

From the Accounts screen, expand the Meta account connection and verify that the correct Pixel is associated. The operator uses Pixel event data for conversion-based optimization proposals. A missing or mismatched Pixel reduces proposal quality significantly.

4

Configure loop parameters for Meta

Open Autonomy settings and configure the Meta account: daily budget ceiling, maximum budget change per cycle (recommend starting at 15% for Meta because Meta budget changes take effect immediately unlike Google Ads which adjusts hourly), and draft frequency cap.

5

Enable write scope and start the loop

Click Enable write access on the Meta account, complete the second OAuth step, then Enable loop. The first analysis pass runs within the hour.

Meta + Google Ads together: cross-platform budget decisions

When both Google Ads and Meta are connected, the SpendSignoff reporting tab shows a unified ROAS calculation. The operator uses this unified view to produce cross-platform budget proposals: if Google Search is converting at $18 CPA and Meta retargeting is converting at $31 CPA against the same 7-day click attribution window, the operator may propose moving $X of daily budget from Meta to Google.

These cross-platform drafts appear as a paired action in the approval queue: Draft A reduces the Meta campaign budget, Draft B increases the Google campaign budget. Approve both to execute the reallocation; reject either to cancel the pair.

The cross-platform ROAS calculation uses a 7-day click attribution window for both platforms and excludes Meta view-through conversions from the primary ROAS metric. View-through conversions are shown as a separate column so you can factor them in manually if your business model relies on view-through attribution.

Next

Agency automation

Managing multiple client Meta and Google Ads accounts with the SpendSignoff org model.

    Automate Facebook Ads — SpendSignoff Meta campaign guide · SpendSignoff