WooCommerce’s built-in shipping system is designed around the idea that shipping rules apply to the whole order or to broad categories of products grouped into shipping classes. That works well enough when your store sells products of roughly similar size, weight, and shipping complexity. The moment your catalog spans products that ship in fundamentally different ways, a small lightweight accessory alongside a heavy piece of furniture, a standard item alongside a fragile one requiring special handling, or a locally sourced product alongside one that ships from a distant supplier, the limitations of order-level and class-level shipping configuration become a real operational problem. Per Product Shipping for WooCommerce solves this by moving shipping rule configuration down to the individual product level, giving store owners granular control over exactly what shipping costs apply to each specific product in the catalog.
Developed as a dedicated WooCommerce shipping extension and available through the WooCommerce ecosystem, Per Product Shipping for WooCommerce addresses the gap between the flexibility that diverse product catalogs require and the blunt instruments that standard WooCommerce shipping configuration provides. It is a focused plugin that does one thing well, putting meaningful shipping cost control at the product level where it belongs for stores with genuinely varied fulfillment requirements.
What Is Per Product Shipping for WooCommerce
Per Product Shipping for WooCommerce is a premium WooCommerce extension that adds individual shipping rule configuration to every product in your store. Instead of relying solely on shipping zones and classes to determine what a customer pays for shipping, you define specific shipping costs, rules, and adjustments directly on each product’s settings page, and those rules combine with the rest of the cart contents at checkout to produce an accurate and product-appropriate shipping cost for the complete order.
The plugin gives you the ability to set a base shipping cost for a product, define additional per-unit costs for quantity-based shipping, create variation-specific rules for products that exist in multiple configurations, and override global shipping settings entirely for individual products that need to be handled differently from the rest of the catalog. For stores where the cost of shipping genuinely varies by product rather than by destination alone, this level of control is the difference between shipping pricing that reflects reality and shipping pricing that consistently loses money or overcharges customers.
Key Features
| Feature | Description |
|---|---|
| Per Product Shipping Rules | Define individual shipping costs and rules directly on each WooCommerce product settings page |
| Per Variation Shipping Rules | Set different shipping costs for each variation of a variable product independently |
| Quantity Based Pricing | Configure an additional per-unit shipping cost that scales with the quantity of the product ordered |
| Multiple Rule Rows Per Product | Add multiple shipping rule rows to a single product covering different countries, zones, or shipping methods |
| Override Global Shipping | Configure a product to override the standard WooCommerce shipping methods with its own rules |
| Rule Combination Logic | Control how per-product rules combine with standard WooCommerce shipping costs in a mixed cart |
| Country and Region Specific Rules | Set different shipping costs for a product based on the customer’s country or region |
| Shipping Method Targeting | Apply per-product rules to specific shipping methods rather than all available methods |
| Cost Adjustment Types | Configure rules as fixed costs, costs added to existing methods, or percentage adjustments |
| Import and Export | Import and export per-product shipping rules via CSV for bulk configuration across large catalogs |
Shipping Rule Configuration Options
| Option | What It Controls |
|---|---|
| Base Cost | Fixed shipping cost assigned to this product regardless of quantity ordered |
| Per Item Cost | Additional cost added for each unit of the product beyond the first |
| Minimum Cost | Floor price for the product’s shipping contribution regardless of calculated results |
| Maximum Cost | Ceiling price for the product’s shipping contribution regardless of calculated results |
| Country Filter | Restrict a shipping rule to apply only when the destination is in a specific country |
| State and Region Filter | Further restrict a rule to specific states, provinces, or regions within a country |
| Shipping Class Override | Use this product’s rules instead of the shipping class rules that would normally apply |
| Method Condition | Apply this rule only when the customer has selected a specific WooCommerce shipping method |
| Handling Fee | Add a fixed handling fee to the product’s shipping cost for special packaging or processing |
| Rule Priority | Define which rule takes precedence when multiple rule rows match the same shipping scenario |
Variation Level Shipping Configuration
| Variation Scenario | How Per Product Shipping Handles It |
|---|---|
| Size Based Weight Difference | Set a higher shipping cost for a large or heavy variation than a small or light one |
| Fragile Variant Surcharge | Apply a handling fee to a fragile glass or ceramic variation that standard variants do not require |
| Oversized Variant Rules | Configure oversized variation rules that override standard shipping methods with freight options |
| Digital Versus Physical Variants | Set zero shipping cost for a downloadable variant while standard physical variants use normal rules |
| Bundle Variant Weight | Apply a higher per-unit cost to a bulk pack variant that ships differently from individual units |
| Color or Material Difference | Different materials with different weights can carry different per-variation shipping costs |
| Regional Variation Availability | Restrict specific variations to ship only within certain countries or regions |
Who Should Use Per Product Shipping for WooCommerce
Stores with highly varied product catalogs where different products have genuinely different shipping cost profiles will find Per Product Shipping for WooCommerce the most precise solution available for making checkout shipping costs reflect operational reality. A store selling both lightweight phone cases and heavy laptop stands cannot charge a single flat rate that is fair to both customers and the business simultaneously. Per product rules allow the phone case to carry a minimal shipping contribution while the laptop stand carries a cost that reflects its actual fulfillment expense, with the combined cart total reflecting the true shipping cost of the complete order rather than an approximation.
Handmade and artisan product stores where each product category involves different packaging, different handling time, and different carrier requirements will benefit from the product-level control that Per Product Shipping for WooCommerce provides. A ceramic studio selling both small earrings and large decorative platters needs fundamentally different shipping logic for each product type, and standard class-based shipping is too blunt to capture the real cost differences at the individual product level without creating an unwieldy number of shipping classes.
Dropshipping WooCommerce stores where different products ship from different suppliers with different shipping cost structures will find per-product rules the natural match for a fulfillment model where the shipping cost of each product is determined by the specific supplier relationship rather than a unified store-level shipping policy. Each product can carry the shipping cost that the relevant supplier charges, and the combined checkout total reflects the actual cost of fulfilling each item from its respective source.
WooCommerce stores selling a mix of standard retail products alongside oversized, heavy, or specialty items that require freight, white-glove delivery, or special handling will benefit from the ability to configure entirely different shipping rule sets for the specialty items while leaving the standard products to use the regular WooCommerce shipping methods. A furniture store can configure its small accessories to use standard carrier rates while its large furniture pieces carry their own freight-appropriate rules without either product category interfering with the other.
Subscription and recurring product businesses where certain subscription items have a predictable per-delivery shipping cost that differs from the store’s general shipping structure will find per-product rules allow that predictable cost to be captured accurately at the individual product level rather than requiring a separate shipping class configuration for every subscription product with a unique cost profile.
Per Product Shipping vs Other WooCommerce Shipping Configuration Options
| Feature | Per Product Shipping | WooCommerce Flat Rate | WooCommerce Shipping Classes | WooCommerce Table Rate Shipping | WooCommerce Advanced Shipping |
|---|---|---|---|---|---|
| Individual Product Rules | Yes | No | No | No | No |
| Per Variation Rules | Yes | No | No | No | No |
| Quantity Based Per Item Cost | Yes | Limited | No | Yes | Yes |
| Country Specific Rules Per Product | Yes | No | No | Yes | Yes |
| Override Global Shipping | Yes | No | No | No | No |
| Multiple Rules Per Product | Yes | No | No | No | No |
| CSV Import and Export | Yes | No | No | No | No |
| Handling Fee Per Product | Yes | Yes | No | Yes | Yes |
| Rule Combination Control | Yes | No | No | Limited | Yes |
| One-Time Price | Yes | Free | Free | Yes | Yes |
How to Install Per Product Shipping for WooCommerce
Download the Per Product Shipping for WooCommerce zip file from WPDropzone. Ensure WooCommerce is already installed and active before proceeding as the plugin requires WooCommerce to function. In your WordPress admin panel navigate to Plugins, click Add New, then Upload Plugin, and select the downloaded zip file. Click Install Now and activate the plugin once installation completes. After activation, open any WooCommerce product for editing and navigate to the Shipping tab within the product data panel. You will find a new Per Product Shipping section where you can add shipping rule rows, configure costs, set country and region conditions, and define quantity-based pricing for that specific product. Repeat this process for each product that requires individual shipping rules. Products without per-product rules configured continue to use your standard WooCommerce shipping zone and class configuration as normal, so you only need to configure the plugin for products that genuinely require individual handling.
Frequently Asked Questions
How do per-product shipping rules combine with standard WooCommerce shipping methods in a mixed cart? When a customer’s cart contains a mix of products with per-product shipping rules and products using standard WooCommerce shipping methods, Per Product Shipping for WooCommerce combines the costs according to your configured rule combination logic. The most common configuration adds the per-product shipping costs on top of the applicable standard shipping method cost, so the customer sees a total that reflects both the base delivery cost and the individual product contributions. The combination behavior is configurable to suit different store requirements and pricing models.
Can I set different shipping rules for different countries on the same product? Yes. Each product can have multiple shipping rule rows, and individual rows can be targeted to specific countries or regions. A product can carry one shipping cost for domestic orders, a different cost for orders within the European Union, and a third cost for all other international destinations, all configured as separate rule rows on the same product. The plugin applies the row that matches the customer’s destination at checkout, defaulting to a general rule if no country-specific row matches.
Does Per Product Shipping work with WooCommerce variable products and their variations? Yes. Per Product Shipping for WooCommerce supports variation-level shipping rules that allow each variation of a variable product to carry its own independent shipping cost configuration. A small size variation can carry a different shipping rule from a large size variation, a physical product variation can carry shipping costs while a downloadable variation has zero shipping cost, and variations with significantly different weights or dimensions can reflect those differences in their individual per-variation shipping rules.
How does the quantity-based per-item cost work when a customer orders multiple units? The per-item cost configuration adds an incremental shipping cost for each unit of the product ordered beyond the base cost. If a product has a base cost of three dollars and a per-item cost of one dollar, a customer ordering four units would see a shipping contribution from that product of six dollars, which is the three dollar base plus one dollar for each of the three additional units. This makes per-product shipping costs scale appropriately with order quantity rather than applying a fixed cost regardless of how many units are in the cart.
Can I import per-product shipping rules across a large product catalog without configuring each product manually? Yes. Per Product Shipping for WooCommerce includes a CSV import and export system that allows you to define shipping rules for multiple products in a spreadsheet and import them all simultaneously. This is particularly valuable for stores with large catalogs where configuring rules product by product through the WordPress admin would be prohibitively time-consuming. You can export existing rules to review and modify them in bulk, then reimport the updated file to apply changes across the entire catalog at once.
What happens to products that do not have per-product shipping rules configured? Products without any per-product shipping rules configured continue to use your standard WooCommerce shipping zone and shipping class configuration exactly as they would without the plugin installed. Per Product Shipping for WooCommerce only affects the shipping cost calculation for products where you have explicitly added rule rows, which means you can implement product-level rules selectively for the products that need them without disrupting the shipping behavior of the rest of your catalog.
⚠️ Disclaimer: This plugin/theme is for personal use and practice only. Run a malware scan before use. For commercial use, purchase a license from the official website.