Bulk Operations
Update multiple campaigns, ad sets, or ads at once with AI. Save time, reduce AI execution costs, and manage large-scale operations reliably.
Why Use Bulk Operations?
When you need to make the same change to multiple campaigns, ad sets, or ads, bulk operations process all updates at once instead of one by one. This dramatically improves speed, reliability, and cost efficiency.
π‘ Bulk vs. One-by-One Updates
One-by-One (Old Way)
- β’ Processes each entity separately
- β’ Consumes 1 credit per entity
- β’ Takes 5-10 seconds per entity
- β’ Higher risk of partial failures
- β’ More expensive for large changes
Bulk Operations (New Way)
- β’ Processes up to 20 entities at once
- β’ Consumes 1 credit total
- β’ Takes 5-15 seconds for entire batch
- β’ Automatic retry for failures
- β’ Cost-effective for any scale
π° Real Cost Savings Example
Imagine you need to pause 10 ad sets during a product issue:
- One-by-One: 10 credits consumed, ~60 seconds to complete
- Bulk Operation: 1 credit consumed, ~8 seconds to complete
Result: 90% savings on credits, 87% faster execution
Common Bulk Operations
π¨ Emergency Response
- β’ Pause all campaigns during a crisis
- β’ Activate campaigns for flash sales
- β’ Emergency budget cuts across accounts
- β’ Pause underperforming ads quickly
π° Budget Management
- β’ Scale budgets by 20% across campaigns
- β’ Set uniform daily budgets on ad sets
- β’ Redistribute spend based on performance
- β’ Set spending caps during testing
π― Bid Strategy Updates
- β’ Update bid amounts across ad sets
- β’ Change from LOWEST_COST to COST_CAP
- β’ Set bid caps uniformly
- β’ Adjust ROAS targets in bulk
π¨ Creative Operations
- β’ Update call-to-action buttons on ads
- β’ Swap creative assets across ads
- β’ Update destination URLs in bulk
- β’ Refresh ad names with conventions
Example: Pause Multiple Ad Sets
Your Question:
"Pause all ad sets in campaign 120212345678901234 that are currently active"
AI Response:
I'll pause all active ad sets in that campaign using a bulk operation. Let me find them first...
Found 8 active ad sets:
- β’ Ad Set A - Budget: $50/day
- β’ Ad Set B - Budget: $75/day
- β’ Ad Set C - Budget: $50/day
- β’ Ad Set D - Budget: $100/day
- β’ Ad Set E - Budget: $50/day
- β’ Ad Set F - Budget: $60/day
- β’ Ad Set G - Budget: $80/day
- β’ Ad Set H - Budget: $90/day
Pausing all 8 ad sets now...
β Bulk Operation Complete
- β’ Successfully updated: 8 ad sets
- β’ Failed: 0
- β’ Execution time: 6.2 seconds
- β’ Credits used: 1
All 8 ad sets are now paused. If you had done this one by one, it would have taken ~60 seconds and used 8 credits instead of 1.
Example: Update Budgets on Specific Ad Sets
Your Question:
"Change the daily budget to $100 for these ad sets: 120212345678901235, 120212345678901236, 120212345678901237, 120212345678901238, 120212345678901239"
AI Response:
I'll update the daily budget to $100 for all 5 ad sets using a bulk operation.
Current budgets:
- β’ Ad Set 1: $50/day β $100/day
- β’ Ad Set 2: $75/day β $100/day
- β’ Ad Set 3: $60/day β $100/day
- β’ Ad Set 4: $80/day β $100/day
- β’ Ad Set 5: $90/day β $100/day
Processing bulk update...
β Bulk Operation Complete
- β’ Successfully updated: 5 ad sets
- β’ Failed: 0
- β’ Execution time: 4.8 seconds
- β’ Credits used: 1
All 5 ad sets now have a daily budget of $100. The bulk operation saved you 4 credits and completed 6x faster than individual updates.
Example: Activate Multiple Campaigns for a Launch
Your Question:
"Activate these campaigns that I prepared for the holiday sale: Campaign A (120212345678901240), Campaign B (120212345678901241), Campaign C (120212345678901242)"
AI Response:
I'll activate all 3 campaigns at once using a bulk operation. Let me verify their current status first...
Campaign details:
- β’ Campaign A: PAUSED β ACTIVE
Daily budget: $500, Objective: CONVERSIONS - β’ Campaign B: PAUSED β ACTIVE
Daily budget: $750, Objective: CONVERSIONS - β’ Campaign C: PAUSED β ACTIVE
Daily budget: $300, Objective: LINK_CLICKS
Activating all campaigns now...
β Bulk Operation Complete
- β’ Successfully updated: 3 campaigns
- β’ Failed: 0
- β’ Execution time: 3.4 seconds
- β’ Credits used: 1
All 3 campaigns are now live and delivering ads! Your holiday sale campaigns are running with a combined daily budget of $1,550.
Example: Update Creative on Multiple Ads
Your Question:
"Update all ads in ad set 120212345678901250 to use the new creative (120212345678909999)"
AI Response:
I'll fetch all ads in that ad set and update them to use the new creative in one bulk operation...
Found 6 ads to update:
- β’ Ad 1: Old Creative β New Creative (120212345678909999)
- β’ Ad 2: Old Creative β New Creative (120212345678909999)
- β’ Ad 3: Old Creative β New Creative (120212345678909999)
- β’ Ad 4: Old Creative β New Creative (120212345678909999)
- β’ Ad 5: Old Creative β New Creative (120212345678909999)
- β’ Ad 6: Old Creative β New Creative (120212345678909999)
Processing bulk creative update...
β Bulk Operation Complete
- β’ Successfully updated: 6 ads
- β’ Failed: 0
- β’ Execution time: 5.1 seconds
- β’ Credits used: 1
All 6 ads now use the new creative. Instead of 6 separate updates taking ~40 seconds and 6 credits, this completed in 5 seconds with just 1 credit.
How to Use Bulk Operations
The AI automatically uses bulk operations when you request changes to multiple entities. You don't need to do anything special!
β Good Prompts for Bulk Ops
- β’ "Pause all active ad sets in campaign X"
Filters by status automatically - β’ "Set budget to $100 for these 5 ad sets: [IDs]"
Explicit list of IDs - β’ "Activate campaigns A, B, and C"
Multiple named entities - β’ "Change all ads in ad set X to use creative Y"
Grouped by parent entity
π‘ Tips for Best Results
- β’ Be specific about which entities to update
- β’ Use entity IDs when available for precision
- β’ Group similar changes in one request
- β’ Bulk operations handle up to 20 entities at once
- β’ For more than 20, the AI will batch them automatically
β οΈ Entity Limit
Bulk operations process up to 20 entities at once. If you need to update more than 20 entities, the AI will automatically split them into multiple batches. This keeps operations fast and reliable while respecting Meta's API rate limits.
π Advanced Filtering Capabilities
Bulk operations support two powerful modes: Explicit ID Mode (specify exact IDs) and Filter Mode (select entities by criteria). The AI automatically chooses the best mode based on your request.
πExplicit ID Mode
Best when you know exactly which entities to update. Provide specific IDs and individual parameters for each.
Example prompt:
"Update these campaigns: 123 (budget: $100), 456 (budget: $200), 789 (budget: $150)"
π―Filter Mode
Best when you want to select entities by criteria. Apply the same update to all matching entities automatically.
Example prompt:
"Pause all active campaigns with daily budgets under $50"
πCampaign Filters
Filter by Status:
- β’
ACTIVE
- Running campaigns - β’
PAUSED
- Paused campaigns - β’
ARCHIVED
- Archived campaigns
Filter by Budget:
- β’ min_daily_budget - Campaigns spending at least $X
- β’ max_daily_budget - Campaigns spending at most $X
Filter by Objective:
- β’
OUTCOME_SALES
- β’
OUTCOME_LEADS
- β’
OUTCOME_TRAFFIC
- β’
OUTCOME_AWARENESS
Other Filters:
- β’ name_contains - Match by campaign name
- β’ campaign_ids - Specific list of IDs
Example prompts:
- β "Pause all active campaigns with 'Holiday' in the name"
- β "Increase budget by 20% for all OUTCOME_SALES campaigns under $100/day"
- β "Archive all paused campaigns"
π―Ad Set Filters
Filter by Status:
- β’
ACTIVE
- Running ad sets - β’
PAUSED
- Paused ad sets - β’
ARCHIVED
- Archived ad sets
Filter by Parent:
- β’ campaign_id - All ad sets in one campaign
- β’ campaign_ids - Ad sets across multiple campaigns
Filter by Optimization:
- β’
LINK_CLICKS
- β’
CONVERSIONS
- β’
IMPRESSIONS
- β’
REACH
Other Filters:
- β’ name_contains - Match by ad set name
- β’ adset_ids - Specific list of IDs
Example prompts:
- β "Pause all active ad sets in campaign 123456789"
- β "Set bid to $5 for all LINK_CLICKS ad sets"
- β "Add frequency cap to all ad sets with 'Retargeting' in the name"
π¨Ad Filters
Filter by Status:
- β’
ACTIVE
- Running ads - β’
PAUSED
- Paused ads - β’
ARCHIVED
- Archived ads
Filter by Name:
- β’ name_contains - Match by ad name
- β’ Useful for finding test variants
Filter by Parent:
- β’ campaign_id - All ads in one campaign
- β’ adset_id - All ads in one ad set
- β’ adset_ids - Ads across multiple ad sets
Other Filters:
- β’ ad_ids - Specific list of ad IDs
Example prompts:
- β "Change all ads in ad set 123456 to use creative 999999"
- β "Pause all ads with 'Test' in the name"
- β "Activate all paused ads in campaign 789"
πBudget & Bid Multipliers
Instead of setting fixed values, you can scale budgets and bids proportionally using multipliers. Perfect for seasonal adjustments or performance-based scaling!
Budget Multipliers:
- β’
daily_budget_multiplier: 1.5
Increase budgets by 50% - β’
daily_budget_multiplier: 0.5
Cut budgets by 50% - β’
daily_budget_multiplier: 2.0
Double all budgets
Bid Multipliers:
- β’
bid_amount_multiplier: 1.2
Increase bids by 20% - β’
bid_amount_multiplier: 0.8
Decrease bids by 20% - β’ Works for both campaigns and ad sets
Example prompts:
- β "Increase daily budget by 50% for all active campaigns"
- β "Double the budget for campaigns with 'Holiday' in the name"
- β "Reduce bids by 20% for all LINK_CLICKS ad sets"
- β "Cut budgets in half for campaigns spending over $500/day"
πCombining Multiple Filters
You can combine multiple filters to create very specific selections. All filters work together (AND logic) to narrow down the matching entities.
"Pause all active campaigns with 'Summer' in the name that have daily budgets under $50"
Filters used:
- β’ status = ACTIVE
- β’ name_contains = "Summer"
- β’ max_daily_budget = 5000 (in cents)
"Set bid amount to $8 for all active ad sets in campaigns 123 and 456 that are optimizing for conversions"
Filters used:
- β’ status = ACTIVE
- β’ campaign_ids = [123, 456]
- β’ optimization_goal = CONVERSIONS
"Update all paused ads in ad set 789 with 'Test' in the name to use creative 111"
Filters used:
- β’ status = PAUSED
- β’ adset_id = 789
- β’ name_contains = "Test"
π‘ Tips for Using Filter Mode
- βStart broad, then narrow: Begin with basic filters like status or campaign_id, then add more criteria to refine your selection
- βUse dry run for safety: Ask the AI to "preview" or "show me" what would be affected before making actual changes
- βWatch the 20-entity limit: If your filters match more than 20 entities, the AI will show an error and ask you to refine your filters
- βBe specific with names: When using name_contains, use unique strings to avoid matching unintended entities
- βCombine with multipliers: Use filters to select entities, then apply proportional changes with multipliers for sophisticated scaling
π¬ More Example Prompts
π Budget Changes
- β’ "Increase daily budget by 50% for all active ad sets in campaign X"
- β’ "Set all campaign budgets to $500/day"
- β’ "Update these 8 ad sets to have $200 daily budgets"
π¨ Emergency Actions
- β’ "Pause all campaigns immediately"
- β’ "Activate all paused ads for Black Friday"
- β’ "Pause all ad sets with CPA over $50"
π― Bid Adjustments
- β’ "Set bid amount to $5 for all ad sets in campaign Y"
- β’ "Change bid strategy to COST_CAP for these campaigns: [IDs]"
- β’ "Update bid amounts to $10 for ad sets A, B, C"
βοΈ Naming & Organization
- β’ "Rename all campaigns to include '[Q4]' at the start"
- β’ "Update names for these ad sets to include the month"
- β’ "Add 'Test -' prefix to all ads in this ad set"
Built-in Reliability Features
π Automatic Retry
If Meta's API is temporarily unavailable or rate-limited, the system automatically retries failed updates with exponential backoff. You get reliable results without manual intervention.
π Detailed Results
Every bulk operation returns a complete summary showing which entities succeeded, which failed, and why. You always know exactly what happened.
β‘ Parallel Processing
Updates are processed in parallel (5 at a time) for maximum speed while respecting Meta's rate limits. This makes bulk operations 5-10x faster than sequential updates.
Ready to save time and credits with bulk operations?
Takes less than 2 minutes
π Discover More Guides
Explore other ways AI can transform your Meta Ads management
Budget Optimization
Get AI recommendations for reallocating budgets to maximize ROI across your campaigns!
Campaign Performance Audit
Identify your best and worst performers with AI-powered analysis and uncover quick wins!
Create Campaign from Scratch
Learn how to launch new campaigns quickly using Claude and the Meta Ads MCP!