WhatsApp delivery delay apology templates

By Alva Chew 7 min read Updated November 11, 2026

A delivery delay message says sorry once, explains the cause in one line, gives a new date and tells the customer what they can do. Below are 10 templates to copy for courier delays, stock delays, weather, peak season and missed deliveries. AeroChat sends them when tracking or order data shows a delay and answers the customer’s follow-up questions in the same chat.

What a delay message should do

Customers forgive a late parcel more easily than silence. Tell them before they have to ask. Give a cause they can understand, a new date you believe, and a choice where you can offer one, such as waiting or canceling.

Don’t over-apologize, and don’t blame the customer’s area or the courier by name in a way that sounds like an excuse. One sentence of apology is enough.

The WhatsApp rules that apply

If the customer messaged you in the last 24 hours, you can send any of these as a free-text reply. Outside that 24-hour customer service window, a business-initiated message needs an approved template. These messages fit Meta’s utility category when they are about the customer’s own order or account and contain nothing promotional. Meta’s guidelines say utility templates must not promote products, upsell, cross-sell or include offers. A template that mixes an update with a promotion is classed as marketing. See the WhatsApp message templates guide, WhatsApp message templates and template approval.

Source: Meta’s WhatsApp template category guidelines on developers.facebook.com, as of November 2026.

Keep a delay update free of offers if you send it as a utility template. If you want to add an apology discount, send it in a separate message inside the 24-hour window after the customer replies, or as its own marketing template.

10 WhatsApp delivery delay apology templates to copy

Copy a template, change the wording to match how your store talks, and keep the variables in double curly brackets. AeroChat fills them from your store data when it sends the message.

1. Courier delay

Use when tracking shows the parcel is held up with the courier.

Hi {{customer_name}}, we're sorry. Your order {{order_number}} is running late with {{courier_name}}.
The new expected delivery date is {{new_delivery_date}}.
Track it here: {{tracking_url}}. Reply here if you have any questions.

2. Stock delay before dispatch

Use when an item in the order hasn’t arrived at your warehouse yet.

Hi {{customer_name}}, we're sorry. The {{product_name}} in your order {{order_number}} is taking longer to arrive at our warehouse.
We now expect to ship it on {{new_dispatch_date}}.
Reply WAIT to keep the order, or CANCEL and we'll refund you in full.

3. Split shipment

Use when you ship what’s ready and send the rest later.

Hi {{customer_name}}, part of your order {{order_number}} is delayed, so we've shipped the items that are ready first.
On the way now: {{shipped_items}}
Shipping on {{later_date}}: {{delayed_items}}
There's no extra delivery charge for the second parcel.

4. Weather or local disruption

Use when weather or a local event affects deliveries in an area.

Hi {{customer_name}}, deliveries to {{customer_area}} are delayed because of {{disruption_reason}}.
Your order {{order_number}} is safe and will be delivered as soon as the courier can reach you. The current estimate is {{new_delivery_date}}.
We're sorry for the wait.

5. Peak season backlog

Use during big sales and holidays when couriers are slower.

Hi {{customer_name}}, couriers are handling very high volumes this week, so your order {{order_number}} may take {{extra_days}} more days to arrive.
The latest estimate is {{new_delivery_date}}. We'll update you here if that changes.

6. Customs delay

Use for international orders held at customs.

Hi {{customer_name}}, your order {{order_number}} is waiting for customs clearance in {{destination_country}}.
This can add a few days. The tracking link will update as soon as it is released: {{tracking_url}}
We're sorry for the delay.

7. Missed delivery

Use when the courier tried to deliver and nobody was in.

Hi {{customer_name}}, {{courier_name}} tried to deliver your order {{order_number}} today but couldn't reach you.
They'll try again on {{next_attempt_date}}. If you'd like a different day or address, reply here and I'll arrange it.

8. Delay with no new date yet

Use when you don’t have a reliable date yet and want to keep the customer informed.

Hi {{customer_name}}, we're sorry. Your order {{order_number}} is delayed and we don't have a confirmed new date yet.
We'll message you here as soon as we do, and no later than {{next_update_date}}.

9. Delay with option to cancel

Use when the delay is long and you want to offer a full refund.

Hi {{customer_name}}, your order {{order_number}} is now expected on {{new_delivery_date}}, later than we promised.
If that doesn't work for you, reply CANCEL and we'll refund {{order_total}} to your original payment method.

10. Delivered after a delay

Use to close the loop once the late order arrives.

Hi {{customer_name}}, your order {{order_number}} has been delivered. Thanks for your patience while it was delayed.
If anything isn't right with it, reply here and we'll sort it out.

Send these automatically with AeroChat

AeroChat watches order and tracking status in your store platform, such as Shopify, WooCommerce or Wix and connected couriers such as AfterShip or POS Malaysia. When a parcel passes its expected date or the courier reports an exception, it sends the matching message:

  • Courier, weather, customs and peak delays: the new estimate and tracking link come from the courier’s tracking data.
  • Stock delay and split shipment: triggered by unfulfilled items on the order past your dispatch target.
  • Missed delivery: triggered by a failed delivery attempt, and AeroChat can rebook the delivery where the courier’s API allows it.
  • CANCEL replies: AeroChat cancels and refunds within the limits you set, or passes larger refunds to your team.
  • Follow-up questions: “where is it now?” gets a live answer from the tracking data, in the same chat.

See what to tell customers when tracking isn’t updating and stopping “where is my order” questions.

Related

Questions

Should I offer a discount in a delay message?

You can, but not in the same utility template. Meta’s guidelines say order updates must not include offers. Send the apology code separately, inside the 24-hour window after the customer replies, or as a marketing template.

When should I tell the customer about a delay?

As soon as you know, before the original delivery date passes. A message the customer didn’t have to ask for prevents most “where is my order” chats.

Can AeroChat refund a delayed order?

Yes, within the refund limits you set in the workflow. Anything above your limit goes to your team with the order details.

What if the courier gives no new date?

Use the “no new date yet” template and commit to a date for the next update. AeroChat sends the update when tracking changes or when that date arrives.

Tell customers about delays before they ask

Connect your store and courier, and AeroChat sends delay updates from your tracking data and answers the follow-up questions in WhatsApp. Start your 7-day free trial. No credit card needed.

Start your 7-day free trial

On Shopify? Install AeroChat from the Shopify App Store.