An order tracking page should show the tracking number, current status, key dates, the last carrier event, and a clear help path. Put these in a fixed order so customers can scan without reading. The page should answer where the parcel is, when it will arrive, and what to do if it is late, without promising a specific reduction in support tickets.
Why does a tracking page need its own structure?
Most stores send a shipping confirmation email with a tracking link. That link often goes straight to the carrier. The carrier page shows carrier language, carrier status codes, and sometimes ads. The customer then returns to your site or emails you. A structured order tracking page keeps the customer in your context and answers the questions they actually have.
Shopify's own documentation notes that when a tracking number is present, delivery status comes from the shipping carrier. If there is no tracking number, you can manually mark an order as delivered, which updates the customer's order status page and customer account. This matters: your page should not contradict the carrier. It should translate and frame the carrier data. Fulfilling your own orders individually
What should the order tracking page show?
Use a fixed vertical order. Customers scan, they do not read.
- Order number and tracking number. Show both. The order number helps when they contact you. The tracking number helps when they contact the carrier. If you have multiple fulfillments, show each tracking number separately.
- Current status in plain words. Use one of: Order received, Preparing, Shipped, In transit, Out for delivery, Delivered, Delayed, Exception. Avoid carrier codes alone.
- Key dates. Order date, ship date, estimated delivery window, and last update date. If the estimate changes, show the new estimate and the date it changed.
- Last carrier event. One line: what happened, where, and when. Example: "Departed sorting facility, Chicago, 12 Sep 2026, 08:14." This is the single most useful field for a worried customer.
- What happens next. One sentence. Example: "Next expected scan: local delivery depot within 24 hours."
- Help path. A visible link or button to contact support, plus a short note on what information to include.
Example (hypothetical)
A customer orders on 1 September. The page shows: Order received 1 Sep; Shipped 3 Sep; In transit 5 Sep; Last event "Arrived at regional hub, Newark, 6 Sep 14:20"; Estimated delivery 8–10 Sep. On 9 Sep the estimate updates to 11–12 Sep with a note "Carrier reported a delay at the hub." The customer sees the change and the reason without emailing. This is an illustration, not a measured result.
How do you handle multiple fulfillments?
Shopify can split an order into multiple fulfillments when items cannot ship together, when no single location can fulfill the whole order, or when a customer chooses in-store pickup for some items and shipping for others. Each fulfillment can have its own tracking number and notification. Your tracking page should reflect this instead of showing one status for the whole order.
Use a simple pattern:
- Shipment 1 of 2 — items, tracking number, status, last event.
- Shipment 2 of 2 — items, tracking number, status, last event.
- Pickup item — store location, pickup status, collection window.
If you cannot split or merge a fulfillment in the Shopify mobile app, do that work on desktop or the web version. The customer-facing page should still show the split clearly.
What should you do when there is no tracking number?
Some orders ship without tracking, for example low-value items sent by standard post. In Shopify, if a fulfillment has no tracking number, you can manually mark the order as delivered after the customer receives it. That updates the order status page and customer account. If you do not mark it, the order stays in the "On its way" status.
On your tracking page, say this plainly: "This shipment does not have carrier tracking. We will mark it delivered when it arrives." Then give a realistic delivery window and a help link. Do not show an empty tracking field.
How do you write status labels customers understand?
Carrier statuses vary. Map them to your own labels. Keep a small table in your admin or help doc so your team uses the same words.
| Carrier signal | Your label | What the page says |
|---|---|---|
| Label created | Preparing | "We are preparing your parcel." |
| Picked up | Shipped | "The carrier has your parcel." |
| In transit scans | In transit | "Moving through the carrier network." |
| Out for delivery | Out for delivery | "Arriving today in most cases." |
| Delivered scan | Delivered | "Carrier reports delivery." |
| No scan for X days | Delayed | "No new scan since [date]. We are checking." |
| Failed attempt | Action needed | "Carrier could not deliver. See options." |
Define X in your own policy. Do not promise a refund or a replacement on the page. State what you will do: check with the carrier, then contact the customer.
Where should the help path sit?
Put help after the last event and before any marketing content. The help block should include:
- A contact link or form.
- The order number and tracking number pre-filled if possible.
- A short list of what to include: order number, delivery address, and a photo if the parcel arrived damaged.
- Expected response time, stated as a range you can meet.
This is not about hiding support. It is about letting the customer solve the common question first. If they still need help, they arrive with the right information.
How do you check the page before publishing?
Run this check on one real order, using a test order if you prefer:
- Open the tracking link from the shipping confirmation email.
- Confirm the order number, tracking number, and status appear without scrolling on a phone.
- Confirm the last event has a place and a time.
- Confirm the estimated delivery window is visible and dated.
- Confirm the help link works and pre-fills the order number.
- Confirm the page does not contradict the carrier page.
- Confirm multiple fulfillments each show their own tracking number.
If a field is missing, fix the data source before changing the design. A missing tracking number is a fulfillment problem, not a layout problem. For a related check on how to verify what a page actually answers, see Before Trusting an AI Answer: Six Checks. If your tracking page is part of a click-and-collect flow, the product page questions overlap with Click and Collect: A Product Page That Answers Key Questions.
What mistakes should you avoid?
- Showing only the carrier link. The customer leaves your site and may not return.
- Using carrier codes as status. "Exception 47" means nothing to a customer.
- Hiding the last event. This is the field customers look for first.
- Promising a delivery date you cannot control. Show the carrier estimate and label it as an estimate.
- Mixing multiple shipments into one status. Split them.
- Putting marketing blocks above the tracking data. Move them below.
- Leaving an empty tracking field. Explain why there is no tracking number.
Follow-up questions
How often should the tracking page update?
As often as your carrier or platform provides new data. If you use a platform that pulls carrier events, the page updates when the carrier sends a new scan. If you update manually, set a daily check for orders in transit and update delayed orders first. The page should always show the date of the last update so the customer knows how fresh the information is.
Should the tracking page show the delivery address?
Show enough to confirm the destination without exposing full personal data. A city and postcode area is usually enough. If the customer needs to change the address, link to the help path rather than editing on the tracking page. Address changes depend on the carrier and the stage of the shipment, so state that you will check rather than promising a change. Shopify's fulfillment documentation does not describe changing a shipping address after fulfillment.
What to do next
Pick one live order and open its tracking page on a phone. Check the six fields: order number, tracking number, status, key dates, last event, help path. Fix the first missing field. Then repeat for an order with two fulfillments and an order with no tracking number. This gives you a page that answers the common delivery questions before they become support tickets.


