AI Automation

How to Automatically Send Shipment Tracking Emails in WooCommerce

Ansar BhattiAnsar Bhatti 9 min read
White delivery van on a road, representing a WooCommerce order on its way to the customer

Short answer: WooCommerce does not send tracking details by default. To send shipment tracking emails automatically, add a tracking plugin such as Advanced Shipment Tracking (free) or the official WooCommerce Shipment Tracking extension (about $59 a year when we checked), save the carrier and tracking number on each order, then change the order status to Completed or Shipped. The plugin adds the carrier, number and tracking link to the customer email. For a fully hands-off setup, connect a shipping label tool so tracking numbers are added to orders the moment you buy a label.

Every store owner knows the message: Where is my order? A good tracking email answers that question before the customer asks it, which saves you support time and makes the wait feel shorter. This guide compares five ways to send shipment tracking emails in WooCommerce, walks through the setup step by step and shows how to fix the problems that stop emails from arriving.

Person holding a cardboard box on a table while packing a WooCommerce order for shipping
Pack the order, add the tracking number, then let the plugin do the emailing. Photo: Unsplash.

Does WooCommerce send tracking emails by default?

No. The default Completed order email has no field for a carrier or tracking number, so you need a plugin, a shipping tool or a little code to add one. The only built-in workaround is to add an order note and tick Note to customer, which emails the customer your text. It works for a handful of orders a week, but you must type the carrier and number by hand every time.

Five ways to send tracking emails automatically

Method How automatic is it? Cost Best for
Customer order note Manual for every order Free A few orders a week
Free tracking plugin (Advanced Shipment Tracking, Orders Tracking for WooCommerce) You add the number, the email is automatic Free, with paid upgrades Most small stores
Official WooCommerce Shipment Tracking You add the number, the email is automatic About $59 per year Stores that want an official extension
Shipping label tool (WooCommerce Shipping, ShipStation, Shippo) Tracking is added when you buy the label Plugin free, labels and platform plans paid Stores shipping many orders a day
Automation tool (n8n, Make, Zapier) with WooCommerce webhooks Fully custom, including SMS and WhatsApp Depends on the tool and build Stores that want branded, multi-step messages

Prices were checked in October 2026 and can change. Most stores should start with a tracking plugin and move to a label tool or automation once volume grows.

How to send tracking emails with a plugin, step by step

The steps are almost the same for every tracking plugin. This is the flow used by the official extension and by free plugins such as Advanced Shipment Tracking.

  1. Install and activate the plugin. Go to Plugins, Add New, search for the plugin, install and activate it.
  2. Choose your carriers. Enable only the carriers you really use so tracking links resolve correctly. If yours is missing, add a custom provider with its full tracking URL.
  3. Add tracking to an order. Open WooCommerce, Orders, then the order. In the tracking panel choose the provider, enter the tracking number and shipped date, preview the link and save. You can add several tracking numbers to one order.
  4. Change the order status. Saving tracking does not send anything by itself. Setting the order to Completed sends the Completed order email with the tracking details included.
  5. Test it. Place an order to your own address, complete it and open the email on your phone. Check that the button opens the right carrier page.
Smartphone screen showing a list of notifications, like a shipment tracking email arriving
A tracking email should arrive as a clear notification on the customer phone. Photo: Unsplash.

Before you test, check that the Completed order email is switched on under WooCommerce, Settings, Emails. If it is off, nothing is sent however the plugin is set up.

Use a Shipped status instead of Completed

Completed and Shipped describe two different events. Completed usually means the order is finished, while Shipped means the parcel has left your hands. If you send tracking on Completed, you may email too early, or too late for orders that complete automatically. Advanced Shipment Tracking adds Shipped and Partially Shipped statuses that can replace Completed, so the tracking email goes out at the right moment. If your store marks physical orders complete automatically at payment, turn that off first, or the email will fire before you pack the box.

Make it fully automatic with a shipping label tool

Typing tracking numbers works until you ship dozens of orders a day. A label tool removes the typing: you buy the label, the tracking number is saved to the order and the email follows.

  • WooCommerce Shipping is a free plugin for US stores. It prints discounted labels from the order screen, and its built-in tracking feature adds tracking IDs to the Order Complete email. Shipments must originate in the US and the store currency must be US dollars. The plugin is free, but labels are paid for with a card.
  • ShipStation, Shippo and EasyShip create labels on their own platforms and send tracking numbers back to WooCommerce. They have paid plans.
  • Bulk import is useful if a warehouse sends you a spreadsheet. Plugins such as Advanced Shipment Tracking can match tracking numbers from a CSV file to orders, and the paid versions can import files automatically from a server on a schedule.
Mail truck parked at the side of the road, a carrier delivering a tracked parcel
Label tools can pass tracking numbers to WooCommerce automatically. Photo: Unsplash.

Automate with n8n, Make or Zapier

If you want branded messages, WhatsApp or SMS alerts and follow-ups, connect WooCommerce to an automation tool. WooCommerce has built-in webhooks under Settings, Advanced, Webhooks, and the Order updated topic fires whenever an order changes. A typical flow looks like this:

  1. The order moves to Shipped and the webhook fires.
  2. The workflow reads the tracking number and carrier from the order.
  3. It sends your own branded email, and optionally a WhatsApp or SMS message, with a Track your parcel button.
  4. After a few days it checks whether the parcel is delivered. If not, it sends a short reassurance message. If yes, it asks for a review.

We build workflows like this for small stores. See our AI automation services, where workflow builds start from $135.

If you only need a simple link and prefer no plugin, a small snippet can add a tracking link field to each order and print it in the Completed order email. Add it to a child theme or a code snippets plugin, and test it on a staging site first. It supports one link per order and does not detect carriers.

// 1. Add a tracking link field to the order screen.
add_action( 'woocommerce_admin_order_data_after_shipping_address', function ( $order ) {
	woocommerce_wp_text_input( array(
		'id'    => '_tracking_url',
		'label' => 'Tracking link',
		'value' => $order->get_meta( '_tracking_url' ),
	) );
} );

// 2. Save it when the order is saved.
add_action( 'woocommerce_process_shop_order_meta', function ( $order_id ) {
	$order = wc_get_order( $order_id );
	if ( $order && isset( $_POST['_tracking_url'] ) ) {
		$order->update_meta_data( '_tracking_url', esc_url_raw( wp_unslash( $_POST['_tracking_url'] ) ) );
		$order->save();
	}
} );

// 3. Add the link to the Completed order email only.
add_action( 'woocommerce_email_order_meta', function ( $order, $sent_to_admin, $plain_text, $email ) {
	$url = $order->get_meta( '_tracking_url' );
	if ( $sent_to_admin || ! $url || 'customer_completed_order' !== $email->id ) {
		return;
	}
	if ( $plain_text ) {
		echo PHP_EOL . 'Track your order: ' . esc_url( $url ) . PHP_EOL;
	} else {
		echo '<p><a href="' . esc_url( $url ) . '">Track your order</a></p>';
	}
}, 20, 4 );

What a good tracking email includes

  • The order number and a short thank you.
  • The carrier name, tracking number and a clear Track your parcel button.
  • The shipped date and an honest delivery estimate.
  • What to do if the parcel is late or damaged, with your support email or WhatsApp.
  • A mobile-friendly layout, since most customers will open it on a phone.
Person holding a phone in front of a laptop to check the status of an online order
Most customers check their order status on a phone. Photo: Unsplash.

Tracking email not sending? Common fixes

Problem Likely cause Fix
No email at all Completed order email disabled, or the status never changed Enable it under WooCommerce, Settings, Emails and set the status again
Email arrives without tracking Status changed before the tracking was saved, or a theme template override removes the tracking block Save tracking first, then change the status. Check for old copies of email templates in your theme
Wrong or broken link Carrier not enabled, or a custom provider with an incomplete URL Enable the right carrier or enter the full tracking URL
Email lands in spam WordPress sends through PHP mail without authentication Send through SMTP from your own domain and set up SPF and DKIM
Email goes out too early Orders auto-complete at payment Turn off auto-completion for physical products and use a Shipped status

Not sure which automation tool to pick? Compare n8n vs Zapier vs Make.

Frequently asked questions

Does WooCommerce have built-in shipment tracking?

No. WooCommerce does not add tracking numbers to emails out of the box. You need a tracking plugin, a shipping label tool or custom code.

Can I send tracking emails in WooCommerce for free?

Yes. Advanced Shipment Tracking and Orders Tracking for WooCommerce both have free versions that add tracking details to customer emails. The order note method is also free but manual.

How do I send tracking for an order I already completed?

Save the tracking details on the order, then resend the customer email from the order actions menu. Tracking appears in order emails sent after the details are saved.

Can I add more than one tracking number to an order?

Yes. The official extension and Advanced Shipment Tracking both support several tracking numbers on one order, which helps when you ship in separate parcels.

Will customers see tracking in their account?

Yes. The tracking plugins show the carrier, number and link on the order page under My Account, as well as in the email.

Do digital products need tracking emails?

No. Only physical orders need them. Make sure the tracking block is hidden or empty for downloads so customers are not confused.

Next step

If you would like tracking emails, WooCommerce set-up or a branded post-purchase automation built for your store, send us a message. You can also read about our WordPress development services or learn how to get found with our WooCommerce SEO guide.

Sources: WooCommerce Shipment Tracking documentation, WooCommerce Shipment Tracking product page, Advanced Shipment Tracking plugin page, WooCommerce Shipping plugin page, PluginHive and FunnelKit, checked October 2026. Prices and features can change.

Related articles

Ready to grow your traffic and leads?

Get a free consultation and a clear plan for your website. We reply within 24 hours, faster on WhatsApp.

Newsletter Signup

Practical SEO, WordPress and AI search tips. No spam, unsubscribe anytime.

WhatsApp