Royal Mail

Royal Mail is a premium shipping method for WooCommerce that lets you calculate shipping costs using Royal Mail rates. The Royal Mail extension can calculate rates worldwide or UK domestic.

As the Royal Mail postal service and courier company does not provide an API, this extension contains prices and services hard-coded. Our extension reflects the current October 2023 price guides for over the counter and January 2024 for online rates.

To use this extension, your store’s Country/State must be the United Kingdom and the currency must be Pound sterling. The extension’s built-in box-packer require that your non-virtual products have weights and dimensions set. More info at: Adding Dimensions and Weights to Products for Shipping.


↑ Back to top
  1. Purchase the product from
  2. Download the ZIP file from your dashboard
  3. Go to Plugins > Add New > Upload and select the ZIP file you just downloaded
  4. Click Install Now and then Activate.
  5. Read on to learn how to set up and configure the product.

More information at: Install and Activate Plugins/Extensions.

More information at: Managing subscriptions.

Setup and Configuration

↑ Back to top
This shipping method has to be added to a Shipping zone. If you haven’t configured your Shipping zones yet, please check our Setting up Shipping Zones guide before proceeding.
  1. Go to WooCommerce > Settings > Shipping > Shipping zones.

2. Click the Edit button on the shipping zone where you want to offer this method.

3. Inside the shipping zone, click the Add shipping method button.

4. Then, select the shipping method and click the Continue button.

  • Click the Edit button on the right side of the Shipping methods table to configure the settings:
    • Method Title – Name the shipping method. This is visible to customers.
    • Rates and Services – Controls the services and rates you offer customers.
      • Parcel Packing Method – See below.
      • Rate type – Choose between Regular prices (over the counter) and Online prices (discounted). Check the Service availability per rate type section below.
      • Offer Rates – Choose to return all rates (user gets selection/choice) or return a single rate.
      • Services – Rename and re-order Royal Mail shipping rates.

Once the plugin is set up, customers will be offered a choice of Royal Mail rates based on:

  • which services & rates you’ve enabled
  • the contents of the order
  • the origin of the order
  • the destination of the order
Example of Royal Mail rates


↑ Back to top
  1. Go to: WooCommerce > Settings > Shipping > Royal Mail
  2. Debug Mode – Enable debug mode to show debugging information on your cart/checkout.

Service availability per rate type

↑ Back to top

All services listed below are available in both Regular and Online prices, except where noted.

Within the UK

↑ Back to top
  • Royal Mail 1st Class
  • Royal Mail 2nd Class
  • Royal Mail Signed For® 1st Class
  • Royal Mail Signed For® 2nd Class
  • Royal Mail Special Delivery Guaranteed by 9am® (Regular prices only)
  • Royal Mail Special Delivery Guaranteed by 1pm®
  • Royal Mail Tracked 24 (Online prices only)
  • Royal Mail Tracked 24 with Signature (Online prices only)
  • Royal Mail Tracked 24 with Age Verification (Online prices only)
  • Royal Mail Tracked 48 (Online prices only)
  • Royal Mail Tracked 48 with Signature (Online prices only)
  • Royal Mail Tracked 48 with Age Verification (Online prices only)
  • Parcelforce Worldwide Express 9 (Regular prices only)
  • Parcelforce Worldwide Express 10 (Regular prices only)
  • Parcelforce Worldwide Express AM (Regular prices only)
  • Parcelforce Worldwide Express 24 (Regular prices only)
  • Parcelforce Worldwide Express 48 (Regular prices only)
  • Parcelforce Worldwide Express 48 Large (Regular prices only)


↑ Back to top
  • Royal Mail International Tracked
  • Royal Mail International Tracked & Signed
  • Royal Mail International Standard
  • Royal Mail International Signed
  • Royal Mail International Economy
  • Parcelforce Worldwide Ireland Express (Regular prices only)
  • Parcelforce Worldwide Euro Priority (Regular prices only)
  • Parcelforce Worldwide Global Economy (Regular prices only)
  • Parcelforce Worldwide Global Express (Regular prices only)
  • Parcelforce Worldwide Global Priority (Regular prices only)
  • Parcelforce Worldwide Global Value (Regular prices only)

Parcel Packing Method

↑ Back to top

There are two packing methods with Royal Mail. Each affects the parcels you send to the plugin for a quote.

Pack items individually (Default)

↑ Back to top

Each item in your cart (non-virtual) is sent to the plugin individually. Quotes for all items are combined for the final cost.

Pack items in boxes together (Recommended)

Items are packed into pre-defined boxes and sent to the plugin for a quote. We recommend this option. See Box-Packing below for more information.


↑ Back to top

The box packer included with this shipping method allows you group items into packages for which you define the height, width, length, and weight. The packing is mainly volume-based but does also consider item sizes.

The box packer is volume based. In most cases, this provides good results but will never be as accurate as a real person packing a box (see BIN Packing Problem). Therefore, it is important you understand that packing results are as accurate as they can be, and any anomalies should be acceptable.

Setting up box sizes

↑ Back to top

Most methods of Royal Mail have fixed sizes and do not require custom box sizes. However, International Mail does require custom sizes and their package sizes can vary.

Within settings, look for the “International Parcel Sizes” setting. Click ‘add box’ to set up box dimensions:

  • Defined dimensions are used for packing, and items will be fit within these.
  • Box weight is the weight of an empty box.
International Parcel

How the calculation works

↑ Back to top

The packer does the following:

  1. Finds boxes that fit items being packed (uses H x W x D).
  2. Packs all fitting items into boxes (using volume).
  3. Uses the largest box fitting 100% of items *or* uses the highest % packed box, and then passes unpacked items back (and repeats the process)
  4. Packs unpackable items alone, using item dimensions.
  5. Returns all packed boxes.

Customer Usage

↑ Back to top

Customers will get quotes based on address input from two places:

  • Cart page – Using the shipping calculator
  • Checkout page – Filling in shipping and billing forms

Rates can be selected by customers as usual.

Click & Drop

↑ Back to top

Royal Mail offers a Click & Drop service that you can use to purchase shipping labels online. To use Click & Drop, please follow Royal Mail’s own How to integrate your WooCommerce store guide. If you have any questions about integrating Click & Drop, please do reach out to Royal Mail.

Compensation Optional

↑ Back to top

There’s a “Compensation Optional” checkbox in the settings of Royal Mail shipping method:

This is described in the Royal Mail price guide and their website.

Packages up to £20 can be shipped using economy rates (£50 for Royal Mail Signed For®).
If the declared package value is over that value – insurance won’t work on Economy and more expensive rates might have to be used instead.
One might choose not to declare value and ship economy without insurance though.


↑ Back to top

My Tax/VAT isn’t applying to Royal Mail

↑ Back to top

Depending on the services you offer, and what one a customer picks, it may be VAT exempt or already include VAT. You can view Royal Mail pricing on their site, select one of the pricing sheets there to see what rates are exempt, etc…

No rates returned/no rates available

↑ Back to top
  • Enable debug mode to see debugging information on the cart page. This will often reveal the problem.
  • Check your products have sizes and weights set. Without this, the calculation cannot be performed.

Only some rates are offered

↑ Back to top
  • Royal Mail 1st and 2nd classes will not be offered for orders over £20 without having the Compensation Optional setting enabled.

Questions and Support

↑ Back to top

Something missing from this documentation? Do you still have questions and need assistance?

  • Have a question before you buy this extension? Please fill out this pre-sales form – please include the name of this extension in your query.
  • Already purchased and need some assistance? Get in touch with a Happiness Engineer via the Support page and choose this extension name from the “I need help with” dropdown