A sale is four tasks and two timestamps. Done properly, nobody has to be awake for either edge.
You will be redirected to the Shopify app store.
Most stores run sales the same way: someone discounts products the night before, and someone restores them the morning after. Both ends are error-prone, and both are avoidable.
Tag everything that is in the sale, with a tier in the tag if you are discounting at different depths — “sale-20”, “sale-30”. Tagging is itself a bulk task, filtered by collection, vendor or margin, and it gives you a stable, reviewable selection that will not shift when a smart collection re-evaluates.
Build the same task filtered to five products, schedule it for five minutes ahead with a revert ten minutes later, and watch what happens on the storefront. This catches the two failures that actually occur: a theme that does not render compare-at price the way you assumed, and a filter that matches more than you meant.
The free plan is enough for that rehearsal — ten products, filters and editors.
You will be redirected to the Shopify app store.
When the start time passes, the task list shows the run and the log lists every variant. If items were skipped, they are listed with a reason — usually a product that changed between scheduling and running.
At the revert time the previous prices are written back. If you also want the reference prices gone, run a cleanup task that clears compare-at price and removes the sale tags — that is the state your catalog should return to, not “discounted forever”.
Codes are the right tool for cart-level offers, newsletter incentives and anything you want to attribute to a campaign. Price changes are the right tool when browsing customers should see the sale price on the product page. Plenty of promotions use both.
Set up a few-hour sale with automatic start, badge tag and rollback.
Read moreBuild a tiered Black Friday promotion as scheduled tasks that roll themselves back.
Read moreApply a storefront discount across a range and restore prices afterwards.
Read more