What a Preorder End Date Does (and What Happens Next)

by | Aug 4, 2026 | Articles | 0 comments

What does the preorder end date actually control?

The end date controls one thing: when the preorder campaign stops. Everything else about the preorder — the price, the charge timing, the promised ship date — sits in separate fields that keep their own schedules.

That single distinction is behind most of the date questions we get. A merchant planning a release on 4 September sets 4 September in three different places, expecting them to describe the same event, and then finds the campaign closed at a different moment than the launch. They are three different levers, and it’s worth knowing which one you’re pulling.

End date or shipping date — which one do you set?

Set the end date, then pick the shipping date to match how you want Shopify to treat the order:

Field Where it lives What it decides
End date Product / campaign config in Timesact The day the preorder campaign stops accepting orders
Shipping date The Selling Plan The fulfillment status Shopify gives the order, and the date customers see through {{shippingDate}}
Charge timing The Selling Plan’s Billing Policy Whether the card is charged in full at checkout or on a specific future date

The shipping date is worth a deliberate choice rather than a default. A specific date marks preorder orders Scheduled, a period or interval marks them On Hold, and leaving it as Not set keeps them Unfulfilled — the one to pick when a 3PL or fulfilment partner pulls Unfulfilled orders, or when you’re avoiding split shipments. Whichever you choose, the ship-by promise your customer reads comes from your template, cart label, or Selling Plan copy, so nothing is lost by leaving the field unset.

It also doesn’t fulfill anything on your behalf. When your stock lands, you fulfill those orders through your normal process in Shopify, the same as any other order.

So for a product releasing on 4 September: the end date is what stops preorders, and the shipping date is what decides how the order sits in your admin until you ship it.

Your end date runs on UTC+0

Every date in Timesact is evaluated in UTC+0 (London time), not your store’s local timezone. This is the single most useful thing to know before you schedule a drop, and it is the reason a campaign occasionally ends earlier in the day than a merchant expected.

Work out the offset once for your market and build it into how you pick dates. A store in Sydney is most of a day ahead of UTC+0; a store on the US West Coast is behind it. If you need the campaign to run through the whole of your local 4 September, choose the date that covers it in UTC+0 terms rather than the one that matches your calendar.

End dates work at day granularity. Pick the day you want the campaign to stop and let the UTC+0 boundary do the rest — there’s no need to manage a clock time alongside it.

What your product page shows the day a campaign expires

When the end date arrives, the campaign expires and the preorder button stops rendering. What appears in its place is decided by Shopify inventory, not by Timesact:

  • Inventory above zero → the product shows Add to Cart and sells as a normal in-stock item.
  • Inventory at zero or below → the product shows Sold Out.

This catches people out, so it’s worth sitting with. If your stock arrived and was counted into Shopify before your end date passed, the product doesn’t quietly go dormant — it returns to being an ordinary product and starts taking ordinary full-price orders. That’s the correct behaviour for a campaign that has finished, and it’s exactly what you want when the end date and the restock genuinely coincide.

Count in the full delivery when it lands. Preorder sales sit as negative inventory, so adding the whole quantity received is what brings the variant back above zero — 100 units received against 10 preorders leaves 90 available to sell.

Update the inventory in Shopify first, then remove the product or variant from the preorder list in the app. The outcome is the same, for the same reason: the preorder state comes off, and Shopify inventory decides what the button says.

There’s one setup where this handles itself. If you’re running the stock-management option that only preorders when a variant is out of stock, you don’t need to remove anything when stock lands — the preorder moves to a pending state on its own and the standard Add to Cart or Sold Out button takes over.

Reopening or clearing out a finished campaign

An expired campaign is not a dead one. You have two clean options, and which you pick is mostly about how tidy you like your product list:

Reopen it. Edit the end date to a future date and the campaign becomes active again. This is the fastest route when a shipment slips and you want to keep selling into the delay.

Clear it out. Remove those products from the preorder list to keep the list focused on what’s live. There’s a filter in the app for finding exactly which products are assigned to a given template or Selling Plan, so you can pull up just the ones whose stock has landed. If you run them as preorders again later, you add them back.

Leave the template and the Selling Plan themselves in place. You don’t need to delete either one to stop preorder on a product, and it’s worth keeping any that other products are still using — removing a template or Selling Plan while it’s still assigned to live products can affect how those products display on your storefront.

Stores that only ever run preorders around a release tend to prefer clearing out; stores with rolling preorders across a catalogue tend to prefer editing dates. Both are fine.

Telling customers when the window closes

Your dates decide behaviour; your template decides what anyone actually reads. The preorder button label, the badge, the banner message, and the cart label all live in Settings → Templates in Timesact, and that’s where a closing date becomes visible to a shopper rather than being a setting only you can see.

For a countdown, the template accepts {{daysLeftUntilPreorderEndDate}}, which resolves against the campaign end date you set in the product config. Two things make it work: set the end date explicitly, and place the variable in a template rather than in a Selling Plan field. A variable with no configured value renders the literal text variable_not_set on your storefront, so an end date left blank shows up as exactly that.

The template is also where the difference between “closing Friday” and “ships in September” gets communicated. Those are your two dates doing their separate jobs, and the message a customer reads on the product page is where they meet. If you’re running a Coming Soon state ahead of the campaign, its copy comes from a template in the same way, and that state shows while the variant is out of stock.

Enable the Timesact App Embed on the theme you’re publishing — Online Store → Themes → Customize → App Embeds — and click Save in the theme editor. Your template copy then renders on the storefront.

When a date isn't the right lever

An end date closes a window in time. It doesn’t cap units. If you want to cap how many units a variant takes rather than close the campaign on a set day, that’s the per-variant preorder limit — a cutoff rather than a second off-switch for the campaign. Open the variant in Timesact, go to Stock Management, switch Unlimited Inventory off, enter your Product Quantity, and save; with Unlimited Inventory left on, the number isn’t enforced. Once a variant hits its cap, it returns to its standard sold-out state while the rest of the campaign carries on.

Dates and unit caps combine well. A drop that runs “until 4 September, with 200 units available per variant” is an end date plus a per-variant limit, doing one job each.

Whichever closes the campaign, the orders you’ve already taken keep their Pre-order tag, so your fulfilment and reporting views stay intact after the window shuts.

Preorder dates stop being fiddly once you know which field owns which job: the end date closes the campaign, the shipping date sets expectations and drives the order’s fulfillment status, and the Selling Plan decides when the card is charged. Set all three deliberately in UTC+0, put the closing date in front of customers through your template, and decide in advance whether the campaign should reopen or be cleared when it ends.

Install Timesact on Shopify

Book a free setup call

FAQs

When exactly does a preorder campaign stop?

The end date is what closes it, and it’s evaluated in UTC+0 rather than your local timezone — which is why a campaign can stop earlier in your day than you expected. Work out your offset, set the date against UTC+0, and preview the product page once it’s live.

What timezone do preorder start and end dates use?

All Timesact dates run on UTC+0 (London time), and this isn’t adjustable per store. Work out your local offset once and apply it whenever you schedule a campaign.

What happens to my product when the preorder campaign expires?

The preorder button stops rendering and Shopify inventory decides what shows instead. Above zero inventory the product shows Add to Cart and sells normally; at zero or below it shows Sold Out.

Can I reactivate an expired preorder campaign?

Yes. Edit the end date to a future date and the campaign becomes active again. Alternatively, remove those products from the preorder list to clear finished campaigns out — you don’t need to delete the template or Selling Plan they used, and it’s worth leaving any that other products are still running on.

Should I set a shipping date as well as an end date?

They do different jobs. The end date is what stops the campaign, so set that one deliberately. The shipping date is a separate choice: a specific date marks the order Scheduled, a period marks it On Hold, and Not set keeps it Unfulfilled — pick the one that matches your fulfilment flow, and put the ship-by promise in your template or cart label copy so customers read it either way.

Discover more from Timesact Preorder | Notify Me

Subscribe now to keep reading and get access to the full archive.

Continue reading