Overview
Bulk actions
A bulk action runs one change across every row you selected, so 400 products move to active, or 60 images download together, in a single pass.
A bulk action changes many rows of a table in one pass. Set 400 of your products to Active, delete every brand your last import created by mistake, or download 60 images as one file. You select the rows once, and the action runs on all of them.
You build the selection with checkboxes. Every list page you open in the catalog has them: Products, Brands, Categories, Tags, the three specification lists, your Assets library, and Data sources under Uploads. The moment you check a box, the toolbar above the table turns into a selection bar. Your count is on the left, and the actions for that table are on the right.
Most bulk actions confirm or ask you a question in a small dialog, then run while you watch. A very large run moves to the background instead, keeps counting up on screen, and finishes on its own even if you leave the page. You will find both paths explained further down.
Before you start
What your role lets you do
Below Manager, you see no checkboxes on the catalog tables at all, so there is nothing grayed out to wonder about. The assets library is the exception: whatever your role, you can select assets and download them, because a download changes nothing. Only Manager and above see Delete next to it. Roles are set in team, roles and permissions.
A bulk action has no undo. There is no trash and no restore, so the count in the selection bar when you confirm is the count that changes for good.
How to run a bulk action
Select your rows
Open a catalog list, for example
Products. Check the box at the left edge of each row you want, or check the box in the header row to select the whole page. The toolbar above the table becomes the selection bar and counts what you picked, like12 selected.Extend it to everything your filter matches, if you want
When you have the whole page checked and more rows match your filter, a
Select allbutton appears in the selection bar, with the matching total in its label. Click it and the count changes to readAll 41,000 selected, meaning every matching row on every page.Pick the action
The actions are at the right end of the selection bar, and each table gives you its own set. Click one, for example
Update status.Answer the dialog and apply
A delete asks you to confirm and names the count. The other actions open a small dialog asking what to do, and run when you click
Apply.
That is the whole flow. A progress message appears right away, updates in place, and turns into your result when the run finishes, like Updated 200 of 200 products. Your selection clears itself once the work is done.
Everything below explains your selection, each table’s actions, and what happens while a run finishes. You do not need any of it for a small, everyday bulk change.
Every option in detail
Selecting rows with checkboxes
Every row has a checkbox at its left edge, and the header row has one that selects everything on the current page, on top of whatever you already had.
Your checks add up across pages. Move to page 2, check more rows, and the count in the selection bar keeps growing, because paging does not clear your selection. Changing a filter does not clear your checked rows either. They stay selected even while the filter hides them, which lets you gather rows from several searches into one action.
The selection bar shows your count next to a Clear button, and pressing Escape does the same as Clear. Your selection is also kept in the page address, so a reload brings back a whole-page selection, a Select all, or up to 200 individually checked rows.
On Products, only product rows have checkboxes. A variant row has none, because bulk actions work on whole products; to change one variant, you open its product and edit it in variants.
Selecting everything your filter matches
Checkboxes select what you can see. Select all selects what your filter matches, across every page, however many that is.
Check the box in the table’s header row so your whole page is selected. If more rows match your filter than the page shows, a Select all button appears in the selection bar, with the real total in its label, like Select all 41,000. Click it and your count reads All 41,000 selected. On an unfiltered products table that is your entire catalog, so build the filter first in filters, read the number, and then act.
The set is locked in when you confirm the action. Rows that start matching your filter after that, for example products created while a long delete runs, are not pulled in.
Three things shrink or drop your Select all with no message:
- Un-checking any single row takes you back to just the visible page. It does not remove one row from the total.
- Changing any filter clears the promotion, so an action never runs on a result set you have not looked at.
- While promoted, you also lose
Mergefrom the bar, and any action that cannot run on a filtered total is grayed out.
After you un-check a row while every matching row is selected, the action now touches only the visible page. Read the count in the selection bar again before you confirm.
What each table gives you
The imports and exports tables give you no checkboxes, so nothing here applies to them. Update integration sync only appears while at least one connected integration can take that kind of record, so on brands and categories it comes and goes with your integrations.
Three smaller tables inside the product editor have their own checkboxes
The variants grid and the specifications panel inside a product each have a selection bar of their own, with Delete or Remove for the checked rows. Those are edits to the open product, and they only count when you save it.
The product’s asset panel has one too, with its own Download and Remove, plus a button that opens the Optimizer for several of your images at once.
Changing the status of many products
Click Update status in the selection bar on Products. A dialog opens with one dropdown, New status, giving you Draft, Active, Unlisted and Archived. Click Apply and every selected product gets that status immediately, whatever status each one had before.
There is no per-product exception, which is the point: if some of your selection should end up different, you run two smaller selections. What each status means is explained in products.
Changing the tags on many products
Click Update tags in the selection bar on Products. The dialog opens with a Mode dropdown, and the mode decides what happens to the tags your products already have.
Add and Remove are your safe everyday pair. Pick Replace to retire a tag in favor of another: it asks you for two lists, Tags to swap out and Tags to add. Pick Overwrite only when you want the selection to end up with one exact list, because it erases every tag you did not choose.
Closing the dialog part-way asks whether to discard your tag choices. Tags themselves are explained in tags.
Turning integration sync on or off for a selection
Each of your products, brands and categories has a sync switch per connected account, which controls whether the PIM publishes it there. Update integration sync flips that switch for the whole selection. Click it in the selection bar and you get a dialog with one row per integration that can take this kind of record.
Every row starts on Leave unchanged, and Apply stays gray until you change at least one, so nothing happens by default. Pick Turn sync on or Turn sync off on a row and it answers you with the consequence, like 120 items will start syncing or Nothing to change. Each row is its own decision, because the same product can be live on one of your integrations and never pushed to another.
On products, choosing Turn sync off adds a dropdown, When switching off, asking what happens to your listings already on that integration. The choices name your integration, Shopify here:
Brands and categories give you no such choice: switching them off removes them from the integration. If nothing you have connected can take the record type, the button itself does not appear.
Merging brands or categories
Select 2 or more rows on Brands or Categories and Merge appears in your selection bar. It opens a short wizard: you pick the one record you are keeping, review a preview of the impact, including how many products move, and confirm. Merging is permanent, the other records are deleted, and everything they had moves to the one you picked.
The merge runs in the background and a message tells you the result, like how many brands merged and how many products were reassigned. While a merge involving one of your selected rows is still running, Merge is disabled with a note saying to wait.
What merging does to each field, and when you would use it, is covered in brands and categories. Merge is not available on a Select all, so check the rows you want yourself first.
Downloading many assets at once
Select rows in your Assets library and click Download in the selection bar. Nothing downloads in your browser: the PIM puts the files into a ZIP and emails you when it is ready, so a big selection costs you no waiting. The ZIP also appears in your exports table, and exports explains how long it stays there.
Running, pausing or deleting data sources together
The Data sources table under Uploads has three bulk actions, and you only see the section at all from Manager up.
This table has no Select all, so you always check the rows yourself. What a data source is, and what pausing one means for your catalog, is on data sources.
Deleting a selection
Every table’s Delete confirms with you first and names the count, like Delete selected products? with how many rows are about to go. Deleting here is permanent, in the PIM and beyond it.
On products, the confirmation also lists what happens on each of your connected integrations. It says which listings are deleted there too, which are archived, and which are left untouched, following each account’s own delete setting from integrations.
Your delete can also finish with some rows skipped. A row something else still blocks is skipped instead of failing your whole run; a category whose subcategories are not part of the selection is the common case. The result says so, like Deleted 18 of 20 categories, with the first reason and a count of the problems. Selecting a category together with all of its subcategories deletes the whole branch in one go.
Limits
What a bulk action cannot do
While your action runs
Watching a quick run
A selection you checked yourself, or a Select all of 100 rows or fewer, runs while you wait. One progress message appears, counts the work, and turns into your result in place, like Updated 200 of 200 products. When it succeeds, your selection clears and the table refreshes. When nothing at all went through, your selection stays, so you can fix the cause and click the action again.
While it runs, a Cancel appears in the selection bar. Clicking it frees you to keep working, and the message says the table will refresh with the latest state. It does not stop the work, though: a quick run always finishes on its own. If you start another action before then, it is turned away with the already-running message.
Watching a background run
A Select all of more than 100 rows does not run while you watch. It moves to the background, and the same progress message starts showing you live numbers instead, like Deleting products: 12,000 of 50,000.
This kind of run gives you a real Cancel, on the progress message itself. Clicking it stops the work within a moment, and the message tells you how far it got, like Cancelled: 12,500 of 50,000 processed. The rows already changed stay changed, which matters most when you are deleting.
A background run keeps going after you leave. Move to another screen and the progress message follows you. It even comes back on its own if you reload, or close the tab and return while the run is still going. When it ends, a message says so wherever you are in the app: Bulk action completed, Bulk action failed or Bulk action cancelled.
So there are two different cancels: on a quick run, Cancel only stops your waiting, and on a background run it stops the work itself. Neither one restores anything already written.
When only part of it goes through
If your run hits trouble part-way, it keeps what it finished. The result names the split: Updated 40 of 200 products before a failure. Retry to continue. The table refreshes to show you exactly what changed, and running the same action again finishes the rest. No single row is ever left half-written.