Amazon Ads Bulk Operations: Edit Bulksheets Without Breaking Live Campaigns
Amazon Ads bulk operations is the spreadsheet interface for editing sponsored ads campaigns in batches: download a bulksheet, edit rows offline, upload it, and read the report Amazon returns. The rule that protects live campaigns is now the Operation column, not row deletion — Amazon’s error documentation states that “All rows that have a blank Operation are skipped.” A row without an Operation value does nothing.
That change invalidates most bulksheet advice still circulating, because Amazon retired the older template. Every field name, allowed value and quoted sentence below comes from Amazon’s public bulksheets documentation in the Advanced Tools Center, read on 2026-09-07 — pages open to anyone, with no advertiser sign-in required. Where that documentation stops short or contradicts itself, this guide says so rather than filling the gap.
Where Bulk Operations Lives, and What Changed
Amazon publishes two menu paths, one per account type (documentation checked 2026-09-07):
- Sellers: sign in to your Amazon Ads account, navigate to Seller Central, and under “All campaigns,” click Bulk operations.
- Vendors: sign in to your Amazon Ads account, navigate to the advertising console, and from the left side menu panel click Sponsored ads > Bulk operations.
The larger change is the file itself. Amazon’s migration guide opens with an unambiguous banner: “Legacy bulksheets is now deprecated. Effective immediately, the legacy template will not work, and you must use the new version to continue managing sponsored ads campaigns using bulksheets.”
If you learned bulksheets from a guide built around Record Type and Record ID columns, you learned the retired format. Amazon’s side-by-side comparison maps the old headers onto the new ones:
| Legacy column | New column | Note |
|---|---|---|
| Record ID | (removed) | Replaced by per-entity ID columns: Campaign ID, Ad group ID, Product ad ID, Portfolio ID. |
| Record Type | Entity | Same job, new name. |
| Campaign End Date | End date | A blank End date runs the campaign indefinitely. |
| Campaign Targeting Type | Targeting Type | manual or auto for Sponsored Products. |
| Max Bid | Ad Group Default Bid and Bid | A blank Bid on a keyword row inherits the ad group default. |
| Keyword or Product Targeting | Keyword Text and Product Targeting Expression | Two columns instead of one. |
| SKU / ASIN | SKU and ASIN | Fill one, leave the other blank — sellers use SKU, vendors use ASIN. |
| Campaign / Ad Group / entity Status | State | One column for every entity: enabled, paused, archived. |
Three formatting rules travel with the new template: dates are YYYYMMDD (25 February 2022 is 20220225), numbers carry no commas or symbols (1500, not 1,500), and a percentage is written as 50, not 50%.
Product, Entity, Operation: The Three Columns That Run the File
Columns A, B and C are identical in every bulksheet regardless of campaign type, and the error report rejects any value outside the documented set.
| Column | Allowed values (Sponsored Products) |
|---|---|
| A — Product | Sponsored Products, Sponsored Brands, Sponsored Display, Portfolios |
| B — Entity | Campaign, Ad group, Product ad, Keyword, Negative keyword, Bidding adjustment, Campaign negative keyword, Product targeting, Negative product targeting |
| C — Operation | Create, Update, Archive (Sponsored Brands adds submit for draft campaigns) |
Two behavioural rules follow directly from the documentation. First, “You will always need a new row for each entity, even if you are creating multiples of the same entity” — ten keywords means ten keyword rows. Second, “The Operation column (Column C) must contain a value in any row where you want updates to occur. Otherwise, the row will be ignored.”
That second rule is the safety mechanism the older template lacked, and Amazon frames it as a feature: the Operation field “can save time when uploading bulksheets file by ignoring data that you do not want to update.” Stripping a download down to the rows you are changing is no longer necessary — put an Operation value on those rows and leave the rest blank.
The failure mode is the mirror image: leave the column blank everywhere and the upload does nothing, returning “None of the rows in the excel sheet specify an Operation, so there was nothing to process.”
What a Custom Download Actually Contains
Download a bulk operations template gives a blank file with column headers only, one tab per campaign type. Create & download a custom spreadsheet gives your existing campaign data. The custom download is filtered, and the defaults are where “my campaign isn’t in the file” starts:
| Option | Default | Effect |
|---|---|---|
| Date range | You choose | “You can include data from a maximum of 60 days.” |
| Terminated campaigns | Excluded | Check the box to include campaigns no longer active. |
| Campaign items with zero impressions | Excluded | Include them when hunting keywords to negate. |
| Placement data for campaigns | Included | Shows where ads appeared on the page. |
| Campaign types | You choose | Limits the file to the types you select. |
| Guidance for Sponsored Products | Optional | Adds Excel input hints and header dropdowns. |
| Sponsored Products search term data | Optional | Adds customer search terms with the related entity IDs. |
The search term option is the underrated one: the sheet carries campaign entity IDs alongside the terms, so the file that shows which terms to negate also supplies the IDs needed to negate them. Pair it with how to find negative keywords, and read the file’s performance columns — the new version adds CPC, ROAS and conversion rate — against margin using the ACoS guide.
Two limits matter when planning around the file. Portfolios get their own tab, but “You cannot create new portfolios with bulksheets at this time” — you can only assign campaigns to existing ones. And Sponsored Brands assets must already sit in the creative assets library, so that first campaign has to be created in the console before bulksheets can reference the asset IDs.
Temporary IDs and System IDs
Most failed uploads trace back to one distinction. When you create an entity, you invent a temporary, text-based ID — any non-numeric text — and repeat it exactly in every child row. When you update an entity, you use the numeric, system-generated ID that appears in a bulksheets download.
The two errors enforcing this read: “This Create operation requires you to specify a temporary ‘Campaign ID’ (any non-numeric text)” and “This Update operation requires you to specify an actual ‘Campaign ID’, rather than a temporary ID.”
A third trap costs the most time: the advertising console shows a different ID than the bulksheet does. Amazon’s instruction is to “Be sure you are using the bulksheets download ID—not the ID found in the advertising console.” Console IDs in Amazon’s worked example begin with A (A10224222RA856TNH1CKJ); a bulksheets ID is numeric.
Temporary IDs must match character for character. Amazon’s worked example uses a campaign with the temporary ID Spring and an ad group row typing Springg — the result is Invalid value for column: "Campaign ID", which can't be found in any parent entity row on every descendant row.
Five Rules That Keep Live Campaigns Intact
- Control scope with the Operation column, not with deletion. Rows with a blank Operation are skipped, so an untouched download row is inert.
- Never paste a console ID into an Update row, and match temporary IDs exactly across parent and child rows. One extra character orphans every child.
- Prefer
pausedoverarchivedwhen you might come back. “Archived entities cannot be changed in any way,” and the documented recovery is to create a new entity. To pause, set Operation toUpdateand State topaused. - Watch the start date. It “can be the same day you upload or create the campaign, or it can be a date in the future. It cannot be in the past” — a file drafted Monday and uploaded Wednesday fails on that column alone.
- Archive parents only. Adding
Archiveto child rows of a campaign you are archiving errors on every child row, though Amazon notes the campaign is archived anyway and no further action is needed.
One structural constraint for auto campaigns: only negative keywords and negative product targets can be added to an auto-targeting Sponsored Products campaign. Bid control there runs through four product targeting entities with the expressions close-match, loose-match, complements and substitutes.
Reading the Error Report
After an upload, the Bulk spreadsheet history section shows a status. When it reads “Finished with errors,” download the error report. Amazon documents its structure: an “Upload Processing Summary” tab plus one tab per campaign type, with four columns — Original record #, Error type, Error code, and Error message.
Error types fall into three groups, and the group tells you who has to act:
| Error type | Example codes | Who fixes it |
|---|---|---|
| Warning | Not Processed | Often nobody — a cascade from another row |
| Input Error | Invalid User Input, Missing Parent ID, Duplicate Text, Invalid headers, Invalid Operation, Invalid Entity, Invalid Product | You, in the file |
| System Error | System Error, Server is busy | Amazon — wait and retry |
The most common message is the least actionable: “This row was not processed due to errors from other rows.” Amazon’s guidance is direct — “There is generally nothing to do in the row where this error happened. Instead, review the other errors that likely prevented the sheet from being processed.”
Header-level errors stop the whole file rather than one row. Duplicate columns: COLUMN_NAMES. Please remove the duplicate columns and try again. fires before any row is processed, and misspelling a value in the first three columns yields Invalid operation: "…", Invalid entity: "…" or Invalid product: "…".
The same error text also appears inside the campaign tab, at the far right of the failed row, and you can repair in place: “You can make changes directly in the campaign tab of the error report, save the file, and upload it to fix the errors.”
Some errors are product facts, not file mistakes. merchantSku cannot be changed means an existing product ad’s SKU or ASIN is immutable. Product is ineligible for advertising points at the Eligibility status and Reason for ineligibility columns in a downloaded file.
What the Public Documentation Does Not Settle
Four things are absent or unresolved in Amazon’s public bulksheets pages as of 2026-09-07:
- The error list is explicitly partial. Amazon describes the page as covering “the most common bulksheets errors,” not the full set.
- Some ceilings are not printed with the errors.
Bid is out of range (must be in [1.0, 1000.0])carries its own range, butNumber of non archived campaigns exceeds the limit per advertiserdoes not — against it the page only says “Review this guide for campaign limits,” leaving the actual number in a separate reference. - Two pages disagree about the brand assets checkbox. The getting-started page says the field “is checked by default” and that you “should check this box to include this data”; the migration guide describes the same control as “a checkbox that will exclude brand assets data” and says to uncheck it. Download once and look for the Brand assets tab rather than trust either sentence.
- The Sponsored Brands placement workaround points at a dead version. For placement-level Sponsored Brands performance, the migration guide says to “Use the legacy version of Bulksheets” — the version the same page’s banner declares non-functional.
No processing-time figure is published either: large files take longer, and the documentation does not say how much.
For driving the same entities programmatically, see the Amazon Ads MCP server guide; for building the keyword list first, start with keyword research and the competitor ad research guide.
Frequently Asked Questions
Does the old Record Type / Record ID bulksheet still work?
No. Amazon’s migration guide states that “Legacy bulksheets is now deprecated. Effective immediately, the legacy template will not work” (checked 2026-09-07). The replacement uses Product, Entity and Operation as columns A, B and C, with a separate ID column per entity.
How do I stop an upload from touching rows I did not edit?
Leave the Operation cell blank on those rows. Amazon’s documented behaviour is that “All rows that have a blank Operation are skipped.” Deleting the rows also works, but is no longer required.
Why does my Update row say it needs an actual Campaign ID?
The ID in that cell is text rather than numeric, which bulksheets reads as a create instruction. Update rows need the numeric system-generated ID from a bulksheets download — not the console’s ID, which is a different value.
How far back can a bulksheet download reach?
Sixty days. Amazon’s download panel states that “You can include data from a maximum of 60 days,” so bulksheets is not a long-term reporting archive.
Can I un-archive a campaign with a bulksheet?
No. “Archived entities cannot be changed in any way.” The documented path is to copy the data out of a download and create a new entity with new IDs.
The Bottom Line
The bulksheet rewards a precise file over a small one. Put an Operation value only on the rows you mean to change, keep temporary IDs consistent when creating and system IDs exact when updating, write dates as YYYYMMDD and numbers without punctuation, and open the error report before touching the file again. The failure that damages a live campaign is rarely a mistyped bid — it is an ID pointing somewhere unintended, or an Archive that cannot be undone.
For the weekly loop that decides which rows deserve an edit, continue with the Amazon PPC playbook. A Chinese-language treatment is published at SellerHow, and AMZFinder, an independent review site organising Amazon seller tools by workflow, catalogues the tools that generate bulksheets for you.
Sources — all read 2026-09-07 from Amazon’s public Advanced Tools Center, each returning HTTP 200:
- Get started with bulksheets: Part 1 — menu paths, download filters, column definitions.
- Bulksheets migration guide — deprecation notice, column mapping, formatting rules, known issues.
- Bulksheets error reports — report structure, error types and codes.
- Get started with bulksheets for Sponsored Products — allowed values for columns A, B and C.
- Bulk operations for sponsored ads user guide (PDF) — still served (HTTP 200, 3,554,402 bytes on 2026-09-07) but documents the legacy template.
