How to add a tracking number to a WooCommerce order

WooCommerce does not ship with a tracking number field, so you need the official Shipment Tracking extension or a plugin such as Advanced Shipment Tracking or YITH WooCommerce Order Tracking. Once one is installed, you open the order, type the number, pick the carrier and save, and the customer sees it in their email and account. This guide walks through each route, the bulk options, and the point where typing numbers by hand stops making sense.

Why there is no tracking field out of the box

Open any order under WooCommerce > Orders and you will find billing details, shipping details, line items and order notes. What you will not find is a place to record a courier and a tracking number. WooCommerce core treats shipping as a price calculation at checkout, not as a record of what happened to the parcel afterwards.

That gap is the reason a small ecosystem of extensions exists. They all do the same basic job: add a box to the order screen, store the carrier and number against the order, and show that information to the customer. The differences are in how much they automate and how they present the result.

Option 1: the official Shipment Tracking extension

The WooCommerce Shipment Tracking extension is the one maintained by the WooCommerce team. After you install and activate it, every order edit screen gets a Shipment Tracking box. You add the tracking details there, and the information is included in the completed-order email and shown on the customer's My Account page.

It is a sensible choice if you ship a modest number of parcels, use a handful of couriers and want something that follows WooCommerce conventions. It does not try to be a full shipping platform. It records what you tell it and passes that on to the customer.

  1. Install and activate the Shipment Tracking extension from your WooCommerce account or the plugin screen in WordPress.
  2. Go to WooCommerce > Orders and open the order you have just handed to the courier.
  3. Find the Shipment Tracking box on the order edit screen and choose Add Tracking Number.
  4. Enter the tracking number and choose the carrier from the list. If your courier is not listed, choose the custom option and paste in the courier's tracking link format.
  5. Set the date shipped, then save the tracking entry.
  6. Change the order status to Completed so the customer receives the completed-order email with the tracking details.

Option 2: a plugin such as Advanced Shipment Tracking or YITH

Plugins like Advanced Shipment Tracking for WooCommerce and YITH WooCommerce Order Tracking cover the same ground and then add their own features. Depending on the plugin and its plan, these can include a custom "Shipped" order status, branded tracking emails, a tracking page for customers, and import tools. Features and plan limits change, so read the current listing before you commit.

The workflow on the order screen is almost identical: open the order, add the carrier and number, save. The difference you are paying for is what happens around that step, such as which email goes out and what the customer sees when they click the link.

  • Check that your couriers are in the plugin's carrier list, or that you can add a custom one with its own tracking URL.
  • Check whether the plugin sends its own email or reuses the WooCommerce completed-order email.
  • Check how the plugin copes with a split shipment, where one order leaves in two parcels with two numbers.
  • Test with a real order in a staging copy of your shop before you turn it on for customers.

Where the customer actually sees the tracking number

PlaceWhat the customer seesWhat you need to do
Completed-order emailThe carrier name and a link to the courier's tracking pageSet the order to Completed after adding the number, or use a plugin that sends its own shipping email
My Account > Orders > ViewThe tracking details under the orderNothing extra, as long as the customer has an account or is logged in
A tracking page on your siteA form or a link that looks the parcel upAdd a page, either with a plugin's shortcode or your own, and link to it from your emails and menu

Adding the number is only half the job. The customer has to find it, and there are usually three places they look.

Adding tracking numbers in bulk

Typing a number into each order is fine at five parcels a day. At fifty it eats an afternoon. There are a few ways to speed it up without changing your whole setup.

  • Bulk status change: select several orders on the WooCommerce > Orders list and change them to Completed in one go. This sends the completed emails but does not add numbers, so it only helps if the numbers are already recorded.
  • Plugin CSV import: several tracking plugins, including Advanced Shipment Tracking, let you upload a spreadsheet of order numbers, carriers and tracking numbers and apply them in one step. Export the manifest from your courier or shipping tool, match the column names the plugin expects and import.
  • Courier or shipping platform sync: if you buy labels through a platform such as Bob Go, the tracking number can be sent back to the order for you, so nobody types it. Check the platform's WooCommerce connection for a setting that writes tracking back to the order.
  • Order number matching: whichever method you use, make sure the order ID in your spreadsheet is the WooCommerce order number, not an internal reference, or the import will skip rows.

Common mistakes that make tracking numbers useless

Most problems are small and avoidable. A trailing space copied from a spreadsheet will break a courier's lookup link. Picking the wrong carrier from the dropdown sends the customer to a page that says the number does not exist. Entering a courier's waybill number when the carrier's site expects a different reference produces the same result.

It is also easy to mark an order Completed before the parcel has actually been collected. If the customer clicks the link straight away and sees nothing, they email you, which is the exact outcome you were trying to avoid. Add the number when the courier has the parcel, not when you finish packing it.

Finally, remember split shipments and partial refunds. If an order goes out as two boxes, record both numbers, and say so in an order note so a colleague covering support knows there are two.

When automation beats typing numbers by hand

Manual entry has two costs. The obvious one is time. The less obvious one is that a recorded number only tells the customer where to look. Nobody on your side finds out that a parcel has stalled in a depot until the customer writes in.

Automation starts to pay off when you ship regularly, use more than one courier, or find that most of your support inbox is people asking where their parcel is. How much of your inbox that is varies a lot from shop to shop, so measure it yourself: tag a week of emails and count the tracking queries before you decide how much time to invest.

A reasonable rule is this. If entering numbers takes you more than a few minutes a day, or if you only learn about delays from angry customers, move to something that reads courier scan data for you and writes it back or shows it for you.

Where TrackIt For Business fits

TrackIt For Business connects to a WooCommerce store, and completed orders become tracked shipments automatically, so there is no box to fill in for each parcel. It follows parcels across more than 3,000 carriers while you keep your own couriers, and it is not a courier or a logistics platform. If you are not on WooCommerce, you can add shipments manually, by CSV import or through the REST API.

The dashboard shows status and flags parcels that are at risk or late, and customers can receive a branded Apple Wallet or Google Wallet pass that updates as the parcel is scanned, plus a self-serve tracking page. It costs $14.99 a month, plus R1.50 per package the first time its Wallet passes are generated. Tracking-only packages cost nothing extra, and you can cancel at any time.

A short checklist before you go live

  • Pick one method (official extension, plugin or automation) and stick to it so numbers are not recorded in two places.
  • Place a test order, add a real or sample tracking number and read the email the customer receives.
  • Check the tracking link opens the right courier page for each carrier you use.
  • Decide who adds numbers, when in the process it happens, and what status triggers the email.
  • Add a line to your order confirmation email telling customers where their tracking will appear.

Questions fréquentes

Does WooCommerce have a built-in tracking number field?

No. Core WooCommerce does not store a carrier or tracking number against an order. You need the official WooCommerce Shipment Tracking extension or a plugin such as Advanced Shipment Tracking for WooCommerce or YITH WooCommerce Order Tracking.

Where do I add the tracking number once the extension is installed?

Go to WooCommerce > Orders, open the order and use the Shipment Tracking box on the edit screen. Enter the number, choose the carrier, save, and set the order to Completed so the customer receives the details.

Can I add tracking numbers to many orders at once?

Yes, if your plugin supports CSV import or your shipping platform writes tracking back to the order. The standard bulk action on the orders list only changes status, so it does not add numbers by itself.

Will my customer get an email with the tracking number?

With the official extension the tracking details appear in the completed-order email and in My Account. Some plugins send their own shipping email instead. Place a test order to see exactly what your customer receives.

How does TrackIt For Business help with tracking numbers?

Once a WooCommerce store is connected, completed orders become tracked shipments without anyone typing numbers. You get a status dashboard, delay alerts and optional branded Wallet passes for customers, and you keep using your own couriers.

How to Add a Tracking Number to a WooCommerce Order | TrackIt