With delivery rules, you can control which delivery options are shown at checkout for orders that match the conditions. There are two approaches: hiding the specified delivery options, and showing only the specified delivery options.
A delivery rule shows or hides delivery options only when all of the configured conditions are met. If the conditions are not met, nothing is controlled, and Shopify's shipping settings apply as they are.
Here is an example where a rule shows only "Delivery A" among multiple shipping methods when the destination is Japan.
Situation | Result |
|---|---|
Destination is Japan | The rule applies, and only Delivery A is shown. |
Destination is the United States | The rule does not apply, and Shopify's shipping methods (Delivery A, Delivery B, etc.) are shown as is. |
The settings available for a delivery rule are as follows. The following image shows the delivery rule settings screen.
Field | Description |
|---|---|
Title | An internal name to identify the rule. |
Delivery options | The display mode and the target delivery types and shipping methods. |
Languages | The language condition for applying the rule. |
Customers | The customer condition for applying the rule. |
Products | The product condition for applying the rule. |
Orders | The order condition for applying the rule. |
Status | Whether the delivery rule is enabled or disabled. |
An internal name to identify the rule. It is not shown to customers. The list does not show whether the shipping destination is "Selected countries" or "All except selected," so including something like "(All except selected)" in the title makes rules easier to tell apart.
Configure the delivery options to show or hide when the conditions are met.
Display mode | Behavior |
|---|---|
Hide the specified delivery options | Hides the specified delivery types and shipping methods at checkout (default). |
Show only the specified delivery options | Shows only the specified delivery types and shipping methods, and hides all others. |
Note: With "Show only the specified delivery options," options for delivery types that are not checked are always hidden. For a delivery group among the checked delivery types where no shipping method matches, that group's options stay visible to prevent all of that type's options from disappearing. Be careful, because checkout may become impossible for destinations where only pickup in store or local delivery is available.
Note: If you have multiple "Show only the specified delivery options" rules enabled, or combine them with "Hide" rules, all delivery options may be hidden for a delivery group where the conditions overlap. This case is not protected against.
If you have multiple "Hide the specified delivery options" rules, the delivery option is hidden as soon as any one of them matches its conditions.
Value | Target |
|---|---|
Shipping | Regular shipping methods |
Pickup in store | Pickup in store |
Local delivery | Local delivery |
Note: What this controls is the delivery options shown at checkout. It cannot hide the tabs themselves, such as "Shipping" or "Pickup."
If you select "Shipping" as the delivery type, you can narrow down shipping methods by name. If you don't specify a name, all delivery options of the "Shipping" type are targeted.
Match type | Shipping methods matched |
|---|---|
Exact match | Exactly matches the name you enter. |
Starts with | Starts with the text you enter. |
Ends with | Ends with the text you enter. |
Contains | Contains the text you enter. |
The shipping method suggestions are the shipping method names within a profile, not the shipping profile name.
Names are compared with case sensitivity. For multilingual stores, add the name for each language separately.
Configure the language condition for applying the rule. Choose from "All languages" or "Specific languages."
Configure the customer condition for applying the rule.
Value | Customers this applies to |
|---|---|
All customers | All customers, regardless of login status. |
Customers with accounts | Logged-in customers. |
Guests | Guests (not logged in). |
If you select "Customers with accounts," you can narrow down further by customer tag or customer metafield.
You can specify both "Include customers with any of these tags" and "Exclude customers with any of these tags". In both fields, multiple tags are combined with OR.
Field | Customers the rule applies to |
|---|---|
Include customers with any of these tags | Customers who have any one of the specified tags |
Exclude customers with any of these tags | Removes customers who have any one of the specified tags |
If you set both, the rule applies only to customers who have an included tag and none of the excluded tags.
Narrows down customers by the value of a customer metafield. Specify the namespace, key and type, then enter values under "Include customers with any of these values" and "Exclude customers with any of these values".
Field | Customers the rule applies to |
|---|---|
Include customers with any of these values | Customers whose value matches any one of the specified values |
Exclude customers with any of these values | Removes customers whose value matches any one of the specified values |
If you set both, the rule applies only to customers whose metafield has an included value and not an excluded value.
The include condition does not apply to customers who have no value set for the metafield.
Customers who have no value set for the metafield are not excluded either.
When you set the namespace and key, enter at least one included or excluded value.
You can specify up to 100 tags in total across included and excluded tags.
You can specify up to 100 excluded values.
The same tag or the same value cannot be both included and excluded.
Configure the product condition for applying the rule. It applies if the cart contains even one item that matches the condition.
Value | Orders this applies to |
|---|---|
All items | All orders, regardless of the items in the cart. |
Specific collections | Orders whose cart contains items from the specified collections (up to 50 collections). |
Specific products | Orders whose cart contains the specified products or variants (up to 50 each). |
Specific product tags | Orders whose cart contains items with any of the specified tags (up to 50 tags, combined with OR). |
Configure the order condition for applying the rule. If you select "Specific orders," you can combine the following conditions to narrow it down.
Set a minimum and maximum amount for the total price in the cart. Set the amount in the store currency; if you sell in local currency, it is converted using the exchange rate for evaluation.
Value | Orders this applies to |
|---|---|
Minimum price | Orders at or above the set amount. |
Maximum price | Orders at or below the set amount. |
Price type | How the amount used for evaluation is calculated. |
There are two types of price used for evaluation. Neither includes shipping or tax.
Cart subtotal (before discounts, excluding shipping and tax): Evaluated using the cart subtotal before discounts.
Cart subtotal (after discounts, excluding shipping and tax): Evaluated using the cart subtotal after discounts.
The following image shows where the price basis is reflected at checkout.
Set a minimum and maximum weight for the total weight of all items in the cart. The total weight is calculated by multiplying the variant weight registered in Shopify by the quantity. Variants with no weight set are not included in the total.
Value | Description |
|---|---|
Minimum weight | Applies when the weight is at or above the set value. |
Maximum weight | Applies when the weight is at or below the set value. |
Weight unit | Grams (g), Kilograms (kg), Ounces (oz), Pounds (lb) |
When product weight unit differs | "Convert and include in calculation" converts to the rule's unit and adds it to the total; "Exclude from calculation" excludes items with a different unit from the total. |
Narrows down by the key and value of an attribute set on the cart. If the specified key is not on the cart, or the value does not match, the rule does not apply.
Narrows down by the shipping destination country. The country entered in the shipping address at checkout is used for evaluation.
Value | Orders this applies to |
|---|---|
Selected countries | Orders shipping to the specified countries. |
All except selected | Orders shipping to countries other than the specified ones. |
Here are the settings for differentiating sales by country.
What you want to do | Display mode | Shipping destination |
|---|---|---|
Sell only to specific countries | Hide the specified delivery options | All except selected (select the countries you want to allow) |
Don't sell to specific countries | Hide the specified delivery options | Selected countries (select the countries you don't want to sell to) |
Note: If you want to "sell only to specific countries," setting the shipping destination to "Selected countries" (the countries you want to allow) and using "Show only the specified delivery options" will not achieve this. Countries you have not allowed fall outside the condition, so the rule does not apply, and Shopify's shipping methods are shown as is. To sell only to specific countries, use "Hide the specified delivery options" + "All except selected" (select the countries you want to allow).
Note: A rule can have up to 128 shipping destination countries. You cannot save 129 or more. If you have many countries, split the rule or invert it to "All except selected."
There is no bulk import feature for countries. Add them one at a time from the country selector.
With "All except selected," countries added to the app's country selector later are automatically included as well. If you want to exclude a country, add it to the list whenever it's needed.
A delivery rule you create is not applied at checkout until you enable it.
Value | Behavior |
|---|---|
Enabled | The delivery rule's show/hide behavior is applied. |
Disabled | The delivery rule's show/hide behavior is not applied. |