Fixed Handling Fees & Percentages: Carriers & Shipping Rules
Calculate and adjust handling fees and percentages for accurate shipping rates
Table of Contents
- Where to Apply Fees in ShipperHQ
- Common Rate Adjustment Scenarios
- Fees on the Carrier
- Percentage Surcharge/Discount
- Flat Fees/Percentage Surcharges on Rules
- Don't Exceed Carrier Rule Maximum Price
Within ShipperHQ, you can add fees to carriers and shipping rules. These fees can either surcharge the rate or set a flat fixed rate, overriding the live rate returned by the carrier's API. Here, we'll explain how handling fees, percentages, or a combination of both are calculated.
Where to Apply Fees in ShipperHQ
ShipperHQ gives you two places to adjust shipping rates: directly on a carrier, or via a shipping rule.
Carrier-level fees apply to every rate that carrier returns, regardless of what's in the cart. Use this when you want a consistent fee across all orders — for example, a $5 handling fee on every UPS shipment.
Shipping rule fees apply only when the rule's conditions are met. Use this when the fee should depend on cart contents, order value, weight, destination, or other factors — for example, a surcharge on heavy orders or a discount when cart value exceeds a threshold.
Most merchants use a combination of both. The sections below explain how the math works in each case.
Common Rate Adjustment Scenarios
| Scenario | Article |
|---|---|
| Add a flat fee or percentage surcharge to a carrier | How to Add a Surcharge/Handling Fee to a Carrier |
| Surcharge rates when an order exceeds a weight threshold | How to Surcharge Rates Over a Certain Weight Threshold |
| Surcharge rates based on cart value | Surcharge Shipping Rates Based on Cart Price |
| Replace live carrier rates with a flat rate | How to Override Live Carrier Rates with Flat Rates |
| Discount shipping by a fixed dollar amount | How to Offer $X Off of Shipping Cost |
Fees on the Carrier
Two types of fees can be applied at the carrier level:
- Flat Surcharge — a fixed dollar amount, not derived from the carrier rate. Can be applied per order, per item, or per package. A package is counted when multiple boxes are needed, or when products exceed the Maximum per package weight set on the Package tab.
- Percentage Surcharge/Discount — a percentage calculated from the rate the carrier API returns. A positive value adds a surcharge; a negative value applies a discount. For example, a 2% surcharge on a $189.88 rate adds $3.80.
The Handling Order setting controls whether either fee is calculated on the raw carrier rate or on the rate after shipping rules have been applied. If you have rules that modify the carrier rate, this setting will impact the final rate. For example, a percentage fee calculated before rules processing uses the original carrier rate as its base, whereas the same fee calculated after rules processing uses the rule-adjusted rate.
You can also control whether the handling fee applies when a method returns free shipping — for example, from a custom carrier set to $0 or from a free shipping rule. For full configuration details, see How to Add a Surcharge/Handling Fee to a Carrier.

Flat Fees/Percentage Surcharges on Rules
Calculations for rules differ slightly from those for carriers. Here's how flat and percentage rates are calculated:
- When a flat rate is configured in a rule, it applies to the shipping total, whether it overrides or surcharges the rate.
- If followed by a percentage surcharge, this percentage may be calculated from the order value or the shipping price. Unlike percentage fees on the carrier, which are based solely on the shipping total.
For instance, with a flat rate of $125 and a 2% percentage fee based on an order total of $500, the math will be $125 + (2% of $500 = $10), resulting in a total of $135.

Avoiding Exceeding the Shipping Rule Maximum Price
By default, a handling fee is applied under all scenarios, regardless of whether it fires before or after Shipping Rules are triggered. However, that means when Handling Order is set to Before Rules Processing, it's possible for the fee to push the total above a maximum price configured on a shipping rule.
To prevent this, you can enable Don't Exceed Carrier Rule Maximum Price in the carrier Fee tab. When enabled, the handling fee is capped at the shipping rule's maximum price for the carrier methods that both the handling fee and the shipping rule are applied to.
Example: A $10.00 handling fee is configured on USPS, and a shipping rule scoped to USPS Priority has a maximum price of $20.00. The live rate is $10.55, and a 20% surcharge rule adds $2.11 — leaving $7.34 of headroom before the cap. With this box checked, the handling fee is partially applied at $7.34 rather than the full $10.00, bringing the total to exactly $20.00. Other USPS methods are unaffected by the rule, and will have a full $10 handling fee.
Maximum price caps can be configured per rule in the rule's Advanced tab. To enable the Maximum Price field on your rules, go to Shipping Rules › ⚙️ Settings › Apply Actions and set Maximum Price to Yes. See Creating Shipping Rules for details.