SpendSignoffSpendSignoff

Guide

How to automate Google Ads: a setup walkthrough for SpendSignoff

This guide walks through the specific steps to connect a Google Ads account, configure the autonomy loop, and get the approval queue producing actionable drafts within the first session.

Before you start

You need a Google Ads account with at least 30 days of campaign history and at least one active campaign. The operator needs performance data to produce meaningful proposals; a brand-new account with no history will produce fewer drafts in the first cycle.

You also need a connected AI client. Claude Desktop, ChatGPT with MCP connectors enabled, or Cursor — any of the three will work for the initial analysis. The autonomy loop runs in SpendSignoff infrastructure and does not require your client to be open, but the first walkthrough is easier with a chat interface.

Connect Google Ads

1

Open the Accounts screen in SpendSignoff

Navigate to Accounts in the sidebar. Click Connect account, select Google Ads from the platform list, and click Authorize.

2

Complete the Google OAuth flow

You are redirected to Google. Sign in with the Google account that has manager or owner access to the Google Ads account you want to connect. Grant the requested scopes. SpendSignoff requests read access first; write scope is a separate authorization step.

3

Select the Google Ads customer account

If you manage multiple Google Ads accounts under a Manager Account (MCC), you see a list. Select the specific customer account to connect. Each customer account is a separate connection in SpendSignoff.

4

Wait for the first sync

The initial sync reads 90 days of campaign, ad group, keyword, and performance data. For an account with 20+ campaigns this takes 2-5 minutes. The Accounts screen shows sync progress. Do not close the browser tab during the first sync.

5

Authorize write scope

After the first sync completes, click Enable write access on the connected account card. You are redirected to Google again for a second OAuth step that adds write scope. This step is required for approved drafts to execute. Without it, you can review and approve drafts but they will not be pushed to Google Ads.

Write scope is necessary but not sufficient to spend money

Enabling write scope on the Google Ads connection allows SpendSignoff to execute approved changes via the Google Ads API. It does not allow the AI client to initiate writes directly. The client scope boundary — mcp.read and mcp.draft only — is enforced by the SpendSignoff backend regardless of what API scopes are present. A draft only writes to Google Ads after a human runs the Approve and push live → Confirm control.

Configure the autonomy loop

1

Open Autonomy settings

Navigate to Autonomy in the sidebar. The loop is off by default for a newly connected account. Click Configure on the Google Ads account row.

2

Set the daily budget ceiling

Enter the maximum total daily spend SpendSignoff can propose across all campaigns in this account. This is a proposal ceiling, not an execution ceiling — the actual spend is controlled by your approved changes and Google Ads daily budgets. A reasonable starting value is 110% of your current total daily budget.

3

Set the maximum bid change per cycle

Enter the percentage by which the operator can propose increasing or decreasing any single keyword bid in a single cycle. Start at 10%. This prevents the loop from proposing a 50% bid increase on a keyword that had one unusually good day.

4

Set the draft frequency cap

Enter the maximum number of drafts the loop can produce per campaign per day. Start at 3. This prevents a high-variance campaign from flooding the approval queue.

5

Enable the loop

Click Enable loop on the account. The loop starts its first analysis pass within the hour. Drafts appear in the approval queue as they are generated.

What to expect in the first 24 hours

Within the first cycle the loop will typically produce 2-5 drafts depending on account size and how much budget is currently being wasted. Common first-cycle drafts: negative keyword additions for the top 3-5 zero-conversion queries, a budget reallocation from an underperforming campaign to the top converter, and a bid increase on the keyword cluster with the lowest CPA.

Review each draft in the approval queue. The reasoning is shown inline — the specific metric that triggered the draft, the comparison period, and the projected impact. Reject drafts where the reasoning does not match your knowledge of the account (seasonality the loop does not know about, a brand campaign that runs at a loss intentionally).

Approve 1-2 drafts in the first session to verify the write path end to end. Open Google Ads after approval and confirm the change is reflected. Open the SpendSignoff audit log and verify the entry.

Reject with a reason to calibrate the loop

When you reject a draft, add a reason in the rejection note. The loop stores rejection patterns and reduces the frequency of similar proposals. If you reject three consecutive drafts proposing bid increases on brand keywords, the loop learns that brand keyword bids are managed manually and stops proposing them.

Next

Keyword research with ChatGPT

Use ChatGPT to expand keyword themes, then push structured lists to Google Ads through SpendSignoff.

    How to automate Google Ads — SpendSignoff setup walkthrough · SpendSignoff