A scheduled Shopify sale should feel uneventful. The discount should appear at the right time, the correct products should be included, and nobody should need to edit hundreds of variants at midnight. The difficult part is not lowering a price. It is proving to yourself that the change is aimed at the right catalog slice before it runs.\n\nAurora illustration of scheduled Shopify price changes in a product task queue\n\nThis guide is a practical preflight for using Ultimator Bulk Editor to schedule a price change. The app can update product and variant fields in bulk, including price and compare-at price, either immediately or on a schedule. Use that power like a checklist, not a shortcut.\n\n## Before you start\n\nPrepare three things before creating the task: the sale start and end times in your store’s timezone, the exact product set that should change, and a rollback plan. A rollback can be another scheduled task, a saved export, or a documented rule that returns prices to their previous values.\n\nDo not begin with a vague instruction like “take 20% off summer items.” Translate it into a filter you can inspect: collection equals Summer 2026, product status equals Active, tag does not include Excluded, and vendor matches the intended line. The more clearly you can describe the group, the easier it is to notice an accidental inclusion.\n\n## 1. Build a selection that you can explain\n\nOpen Ultimator Bulk Editor and create a new bulk update task. Set the search criteria first, before choosing the update. Filter by the catalog attribute that most closely matches the promotion: collection, product type, vendor, tag, status, or a combination.\n\nAurora illustration of product filters gathering matching items into a bulk edit tray\n\nReview the resulting count and sample the first, middle, and last few products. I also look specifically for products that should never be discounted: gift cards, bundles with fixed margins, recently launched items, or products with a separate campaign price. A count that looks reasonable can still contain the wrong edge case.\n\nWhat you should see: a product and variant list that you could confidently describe to a teammate in one sentence.\n\n## 2. Decide whether the task changes prices, compare-at prices, or both\n\nIn Shopify, price and compare-at price communicate different things. The sale price is what a customer pays. The compare-at price is the reference amount that can make a discounted price visible in themes that support it. Do not assume one field automatically creates the effect you want.\n\nFor a percentage promotion, decide the calculation in advance. If a $100 item should sell for $80, make sure the update is reducing the selling price by 20%, not increasing a compare-at price by 20% and leaving the customer-facing price unchanged. If prices need tidy endings, use the rounding option after the percentage change and check its effect on a few representative values.\n\nUltimator Bulk Editor supports setting, increasing, decreasing, and rounding price values. Choose one operation that matches the promotion policy. Combining several adjustments in one task can be legitimate, but it makes the result harder to review.\n\n## 3. Test the rule on a small sample\n\nBefore scheduling a store-wide task, create a small test group or use a narrowly filtered set of products. Apply the same intended operation and inspect the result in Shopify Admin and on the storefront.\n\nCheck products with different price points and variant structures. A single-variant product, a product with four sizes, and a product with uneven variant prices can reveal different problems. Confirm that the sale presentation looks correct in your theme and that the Add to cart price matches the page.\n\nAurora illustration of a scheduled price change moving along a launch-day timeline\n\nWhat you should see: the customer-facing price, any compare-at price, and the discount display behave as expected across your sample.\n\n## 4. Schedule the launch with a buffer\n\nWhen the sample is correct, recreate or expand the task for the full selected group. Set the scheduled time using your Shopify store timezone, then give yourself a buffer before the public campaign starts. If an email is due at 9:00 AM, I prefer the price task to finish before that rather than rely on both systems becoming visible at exactly the same minute.\n\nWrite the task name so it answers three questions at a glance: which campaign, which catalog group, and when it runs. For example: Fall preview - outerwear - 20 percent - Sep 18 08:30. Months later, that name is much easier to audit than sale update final.\n\nIf the sale has a fixed end time, prepare the restoration task at the same time. You can schedule a future bulk update instead of relying on someone to remember an overnight change. Review the restore task separately; it should use the right original price logic, not simply reverse a percentage that may produce a different number after rounding.\n\n## 5. Run a final preflight before you commit\n\nTake one last pass through the selection and update rules before you schedule. This is the quiet minute that prevents the loud mistake.\n\nAurora illustration of a bulk update preflight with product cards and an approval check\n\nUse this short list:\n\n- Confirm the task includes only Active products meant for the campaign.\n- Confirm excluded products and collections are absent.\n- Confirm whether variants, products, or both receive the update.\n- Confirm the price operation and rounding rule.\n- Confirm the scheduled time and store timezone.\n- Confirm that a rollback or restoration task exists.\n- Confirm the task name makes sense to someone who did not create it.\n\n## Troubleshooting\n\nThe storefront does not show the expected sale state. Check your theme’s handling of compare-at prices and test an affected product directly. The bulk edit may have worked even if the theme does not visually emphasize the discount.\n\nSome variants have the wrong price. Inspect whether the task targeted variants and whether the products use different original variant prices. Do not repair a large set by hand; correct the filter or operation, test it, then run a focused follow-up task.\n\nThe task included an item that should have been excluded. Add an explicit exclusion rule or tag before the next campaign. The fix is usually a clearer selection rule, not a more complicated price formula.\n\n## Final recap\n\nA safe bulk price change follows a simple rhythm: define the catalog slice, choose one clear price rule, test it on a small group, schedule it with time to verify, and prepare the restoration task before the sale begins. With Ultimator Bulk Editor, that process can scale to a large catalog without turning a promotion into a manual editing session.