Back to Meta Ads in Google Sheets
SheetXAI logo
Meta Ads logo
Meta Ads · Google Sheets Guide

Pause and Update Meta Ads Campaigns in Bulk From a Google Sheet

2026-05-13
4 min read
See the Excel version →

The Scenario

You are a media buyer. Your monthly performance report just landed and 15 campaigns are underperforming — CPA above target, ROAS below 1.0. You also have 8 campaigns that are crushing it and need more budget before the month closes.

The list is in a Google Sheet: campaign IDs in column A, action in column B ("PAUSE" or "INCREASE 20%"), current budget in column C. You need to execute all 23 changes before the afternoon standup.

The bad version of the morning:

  • Open Ads Manager
  • Search for the first campaign ID, click into it, click pause, confirm
  • Go back to the campaign list, search for the next ID
  • Repeat 15 times for the pauses
  • Switch to the budget view for each of the 8 top performers, increase by 20%, save
  • Accidentally click the wrong campaign at row 19 and have to double-check
  • You are 40 minutes into Ads Manager and still have 6 campaigns left.

One prompt from the sheet and all 23 changes happen in sequence.

The Easy Way: One Prompt in SheetXAI

SheetXAI is an AI agent inside your Google Sheet that can read your campaign action list and execute each change through the Meta Ads API, writing confirmation back into the sheet for each row.

Open the SheetXAI sidebar and type:

For each campaign ID in column A of this sheet where column B says 'PAUSE', update the campaign status to PAUSED in Meta Ads. For each campaign ID where column B says 'INCREASE 20%', increase the daily budget in column C by 20% and update it in Meta Ads. Write 'done' into column D when each update is confirmed.

SheetXAI reads the list, calls the Meta Ads API once per row, executes the pause or budget change, and writes "done" into column D. When column D is fully populated, all 23 changes are live.

What You Get

A confirmed execution log in the sheet:

  • Column D — "done" for each successful update, or an error message if the API rejected the change
  • Paused campaigns — status set to PAUSED in Meta Ads
  • Increased budgets — daily budget updated to column C value × 1.20

Column D is your proof of execution. If a campaign ID was wrong or the API returned an error, that row shows the error instead of "done" — no silent failures, no guessing whether the change went through.

What If the Data Is Not Quite Ready

Bulk update sheets accumulate messiness.

When budget increases should be capped at a maximum

You want to increase budgets by 20% but not let any campaign exceed $500/day.

For each row in column A where column B says 'INCREASE 20%', calculate the new budget as column C × 1.20 but cap it at 500. Update the campaign budget in Meta Ads to the capped value. Write the actual new budget set into column D.

When campaign IDs need to be looked up from campaign names

The sheet has campaign names, not IDs — the media buyer built it from the Ads Manager UI.

For each campaign name in column A, look up the matching campaign ID in Meta Ads. If found, write the campaign ID into column B. Then for each row where column C says 'PAUSE', update that campaign status to PAUSED. Write 'done' or the error into column D.

When you want to confirm current status before making changes

Before pausing anything, verify the campaign is currently ACTIVE — you do not want to accidentally "pause" something that is already paused and then mark it done.

For each campaign ID in column A, fetch the current status from Meta Ads and write it into column C. Then for rows where column B says 'PAUSE' and column C shows 'ACTIVE', update the campaign to PAUSED and write 'paused' into column D. For rows where column C already shows 'PAUSED', write 'already paused — skipped' into column D.

When the full update includes pauses, budget changes, and a new name convention

A reorganization is happening simultaneously — some campaigns get renamed as part of the pause batch.

Process each row in this sheet: if column B is 'PAUSE', update the campaign status to PAUSED. If column B is 'RENAME', update the campaign name to the value in column E. If column B is 'INCREASE 20%', raise the daily budget by 20%. In all cases, write the result (done / error / skipped) into column D. Process all rows.

The pattern: the sheet is the instruction set and the audit trail. One prompt reads both and executes everything.

Try It

Get the 7-day free trial of SheetXAI and ask it to execute Meta Ads bulk updates from any action list in your Google Sheet. The Meta Ads integration is included in every SheetXAI plan. For related work, see how to launch new campaigns from a briefing sheet or the Meta Ads in Google Sheets overview.

Stop memorizing formulas.
Tell your spreadsheet what to do.

Join 4,000+ professionals saving hours every week with SheetXAI.

Learn more