A shipping confirmation has an unusual advantage: the customer wants to receive it. Open rates for transactional messages are typically much higher than for promotions, and the customer has money outstanding and a delivery to look forward to. That makes it worth getting right, and many stores do not. They send the default template, with a tracking link that does not work for six hours and a delivery estimate that is wrong.
This guide covers what the email must contain, when to send it, how to deal with split shipments, delays and carriers, and how to turn a message into a support-ticket reducer. If you want to read about the wider flow, our post-purchase email flow guide places this email in sequence, and where is my order covers the tickets it prevents.
What the email must contain
| Element | Why it matters | Example |
|---|---|---|
| Order number and date | Lets the customer match it to their order | Order 10482, placed 14 March |
| Items in this parcel | Makes clear what is arriving, especially in split shipments | Linen Tablecloth x1, Napkins x6 |
| Delivery address | Catches mistakes before the parcel is lost | The shipping address in a short block |
| Carrier and service | Sets expectations and helps support | Carrier name and service level |
| Tracking number and link | The primary action | A button to the tracking page |
| Delivery window | Answers “when” | Expected between Thursday and Monday |
| Support route | Gives a path when something looks wrong | Reply to this email or visit the help page |
Resist adding more than that. Every extra block competes with the tracking button. Cross-sells and review requests have their own moments later in the flow, and delivery messages that look like adverts invite the filter.
When to send it
The best trigger is the first carrier scan, or the moment the carrier accepts the parcel, not the moment a label is created. A label can sit in a warehouse for a day before the parcel moves. A confirmation sent at label creation produces a tracking link that says “no information yet” and a customer who writes to you. Where your shipping software offers both events, use the carrier acceptance one. Where it only offers label creation, add a short delay or a check that tracking shows movement.
| Trigger | Pros | Cons |
|---|---|---|
| Label created | Immediate, always available | Tracking may show nothing for hours; customer worries |
| Carrier accepted or first scan | Link works; message is accurate | Depends on the carrier’s data and delays |
| Label created plus a check | A compromise | Needs a small amount of logic |
Split shipments, backorders and partial orders
When an order ships in more than one parcel, send an email for each parcel, with only the items in it. State the number, such as “parcel 1 of 2”, and say what is still to come and when. A single confirmation that lists everything with one tracking number is misleading if the second parcel follows a week later. Our dropshipping routing guide covers the case where parcels come from different suppliers and arrive at different times.
- Show what is in this parcel, and list the remaining items separately with an expected ship date.
- Give separate tracking links if the carriers differ.
- Do not mark the order as fulfilled in your own system until every parcel has shipped, or the status will mislead later emails.
- Make cancellation and refund rules clear for the part that has not shipped.
Set a realistic delivery estimate
The estimate is the line the customer remembers. If you give a range, be sure it reflects the carrier’s service and the destination, not the best case. For international parcels, mention that customs can add time and that duties may apply if that is true for your store. Overpromising means a cheaper email now and an unhappy customer later. Underpromising and delivering early is much safer.
Use the carrier’s own estimate where it provides one, and add your handling time if it is not already included. Show a date range and not a single day.
Examples of subject lines and text
- Plain: “Your order 10482 has shipped”
- With the item: “Your Linen Tablecloth is on its way”
- With the window: “Shipped: arriving Thursday to Monday”
- Split: “Part 1 of your order has shipped”
| Part | Sample copy |
|---|---|
| Opening | Your order has shipped. Here is what is in this parcel and how to follow it. |
| Tracking | Carrier: [name]. Tracking number: [number]. [Button: Track your parcel] |
| Window | We expect it to arrive between [date] and [date]. Delays can happen at busy times; tracking shows the latest. |
| Remaining items | Still to come: [item]. We expect to ship it by [date] and will email you again. |
| Help | If something looks wrong, reply to this email with your order number. |
Use a branded tracking page
Carrier tracking pages are accurate but not friendly. A branded tracking page on your own site shows the order, the items, the status in plain language and the support route, and keeps the customer in your world. Link the email to it and show the carrier’s number as well. A page like that also makes a natural home for delay notices, and it can hold a small, relevant recommendation without turning the email into an advert. See order status updates for how we build these.
Delays and stalled tracking
Tracking that has not moved for several days is the most common cause of a support ticket. Instead of waiting for the customer to write, monitor it. A simple rule is to flag any parcel with no new scan for a set number of days, send a short message that acknowledges it and offers help, and open a task for support. The tone should be plain: say what you see, what you are doing and what the customer can expect.
| Condition | Action |
|---|---|
| No scan for a few days after shipping | Message to customer, check with carrier |
| Carrier reports exception | Message with the reason if known, task for support |
| Delivered but customer reports not received | Follow the carrier’s claim process and your policy |
| Returned to sender | Contact customer, offer reship or refund |
The principle is the same as in our order automation rules: detect the exception, notify the customer, give support what they need and leave the decision to a person where it costs money.
Keep it transactional, with light extras
Transactional emails can include limited promotional content in many jurisdictions, but the rules differ and the primary purpose must remain the transaction. Check the requirements in your market. In practice, a small block with help links or one relevant product is plenty. Leave discount codes and campaigns for the flow that follows delivery.
Build and test it
- List the events from your shipping software and choose the trigger.
- Create the template with order, items, address, carrier, tracking and window.
- Add logic for split shipments and backorders.
- Create the stalled-tracking rule and the delay message.
- Test with a real shipment from each carrier you use.
- Check the message on mobile, in dark mode and in a plain-text client.
- Read the first fifty support tickets after launch for things the email did not answer.
A worked example
A store handles 1,200 orders a month and about 8 percent generate a “where is my order” ticket, around 96 tickets. At six minutes each and $24 an hour, that is around $230 of support time monthly. The store moves its confirmation trigger from label creation to carrier acceptance, adds a branded tracking page and a stalled-tracking message. Tickets fall to about 4 percent, or 48 a month, saving roughly $115 in time, plus fewer anxious customers and chargebacks. The time saved is modest; the value is in the experience and the lower risk of disputes. The figures are illustrative.
Common mistakes
- Sending at label creation and giving a tracking link that shows nothing.
- One email for a split order, with a single tracking number.
- Unrealistic estimates based on the best case.
- Cluttered layout that hides the tracking button.
- No plain-text version or poor mobile rendering.
- No monitoring of stalled parcels, leaving customers to find out alone.
Sources and further reading
Figures and rules in this guide come from the primary pages below. Platform limits and prices change, so open the page before you build on a number.
- Shopify Help Center: shipping notifications, how fulfilment notifications are triggered
- FTC: CAN-SPAM Act compliance guide, rules on transactional and commercial email
- USPS, an example of a carrier that publishes tracking tools