> For the complete documentation index, see [llms.txt](https://responsive-media.gitbook.io/advanced-free-shipping/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://responsive-media.gitbook.io/advanced-free-shipping/conditions-cart-and-order/has-subscription.md).

# Has Subscription

## Overview

The **Has Subscription** condition applies discounts based on whether the cart contains items with recurring subscription selling plans. This is perfect for rewarding subscription customers or handling mixed carts.

{% hint style="info" %}
This condition works with Shopify's native subscription functionality and subscription apps that use Shopify selling plans.
{% endhint %}

## Available Operators

Unlike other conditions, Has Subscription uses special operators to detect subscription items:

**Contains subscription** - Cart has at least one subscription item (may also have one-time items).

**Does not contain subscription** - Cart has no subscription items (all one-time purchases).

**Subscription only** - Cart contains ONLY subscription items (no one-time purchases).

**Mixed (subscription + one-time)** - Cart has both subscription AND one-time purchase items.

## Understanding Each Operator

### Contains Subscription

**Triggers when**: At least one item has a subscription selling plan

**Example carts that qualify**:

* 2 subscription items
* 1 subscription item + 3 one-time items
* 5 subscription items + 1 one-time item

**Example carts that DON'T qualify**:

* 3 one-time items only

**Use case**: Reward any customer who subscribes to at least one product.

### Does Not Contain Subscription

**Triggers when**: No items have subscription selling plans

**Example carts that qualify**:

* 3 one-time purchase items
* 1 one-time purchase item

**Example carts that DON'T qualify**:

* 1 subscription item
* 1 subscription + 2 one-time items

**Use case**: Offer discounts to encourage one-time customers to try subscriptions.

### Subscription Only

**Triggers when**: ALL items are subscriptions (no one-time purchases)

**Example carts that qualify**:

* 2 subscription items
* 1 subscription item

**Example carts that DON'T qualify**:

* 1 subscription + 1 one-time item
* 3 one-time items

**Use case**: Reward customers who fully commit to subscriptions.

### Mixed (Subscription + One-Time)

**Triggers when**: Cart has BOTH subscription and one-time items

**Example carts that qualify**:

* 1 subscription + 1 one-time item
* 2 subscriptions + 3 one-time items

**Example carts that DON'T qualify**:

* 2 subscription items only
* 3 one-time items only

**Use case**: Handle special cases where customers mix purchase types.

## Common Use Cases

### Reward Subscription Customers

**Free shipping for any subscription order**

**Configuration**:

* Condition: Has subscription **contains subscription**
* Target: All shipping rates → Free

**Result**: Any cart with at least one subscription gets free shipping.

{% hint style="info" %}
This is the most common subscription discount. It rewards customers for subscribing without being too restrictive.
{% endhint %}

### Subscription-Only Discount

**Free shipping for pure subscription orders**

**Configuration**:

* Condition: Has subscription **subscription only**
* Target: All shipping rates → Free

**Result**: Only carts with 100% subscription items get free shipping.

**Use case**: Encourage customers to subscribe to all their regular purchases.

### Encourage Subscriptions

**$5 off shipping for one-time purchases (to encourage subscribing)**

**Configuration**:

* Condition: Has subscription **does not contain subscription**
* Target: All shipping rates → $5 off

**Message to customer**: "Subscribe and save even more with free shipping!"

### Mixed Cart Handling

**Special discount for mixed carts**

**Configuration**:

* Condition: Has subscription **mixed (subscription + one-time)**
* Target: All shipping rates → 50% off

**Use case**: Reward customers who are building subscription habits while still making one-time purchases.

## Combining with Other Conditions

### Subscription + Value

**Free shipping for subscription orders over $50**

* Condition 1: Has subscription **contains subscription**
* Condition 2: Cart total **is at least** $50

Both conditions must be met.

### Subscription OR Value

**Free shipping for subscriptions OR high-value orders**

* Rule Group 1:
  * Condition: Has subscription **contains subscription**
* Rule Group 2:
  * Condition: Cart total **is at least** $100

Subscription customers always get free shipping, OR anyone spending $100+.

### Subscription + Location

**Free shipping for US subscription customers**

* Condition 1: Has subscription **subscription only**
* Condition 2: Country **is** US

### Subscription + Customer

**Extra discount for VIP subscribers**

* Condition 1: Has subscription **contains subscription**
* Condition 2: Customer tag **contains** "VIP"

## Examples by Strategy

{% tabs %}
{% tab title="Subscription Incentive" %}
**Goal**: Make subscriptions more attractive than one-time purchases

**Discount 1** (Subscriptions):

* Condition: Has subscription **contains subscription**
* Discount: Free shipping

**Discount 2** (One-time):

* Condition: Has subscription **does not contain subscription**
* Discount: $5 off shipping (only if cart ≥ $75)

**Result**: Subscriptions get better shipping terms, encouraging sign-ups.
{% endtab %}

{% tab title="Pure Subscription Reward" %}
**Goal**: Reward customers who go all-in on subscriptions

**Configuration**:

* Condition: Has subscription **subscription only**
* Discount: Free shipping + free express upgrade

**Result**: Customers who subscribe to everything get premium benefits.
{% endtab %}

{% tab title="Tiered Subscription Benefits" %}
**Goal**: Different benefits based on subscription commitment

**Discount 1** (Any subscription):

* Condition: Has subscription **contains subscription**
* Discount: 25% off shipping

**Discount 2** (Subscription only):

* Condition: Has subscription **subscription only**
* Discount: Free shipping

**Result**: Some subscription = 25% off, all subscription = free.
{% endtab %}

{% tab title="New Subscriber Welcome" %}
**Goal**: Encourage first-time subscribers

**Configuration**:

* Condition 1: Has subscription **contains subscription**
* Condition 2: Customer order count **equals** 0
* Discount: Free shipping

**Result**: First-time customers who subscribe get free shipping.
{% endtab %}
{% endtabs %}

## Subscription vs One-Time Purchase Settings

Don't confuse the **Has Subscription condition** with the **Purchase Type settings** at the bottom of the discount form:

| Feature      | Has Subscription Condition             | Purchase Type Settings         |
| ------------ | -------------------------------------- | ------------------------------ |
| **Purpose**  | Check IF cart has subscriptions        | Control WHERE discount applies |
| **Location** | In conditions section                  | At bottom of form              |
| **Options**  | Contains, doesn't contain, only, mixed | One-time, Subscription, Both   |

**Purchase Type Settings** control whether the discount itself can apply to subscription orders:

* **One-time purchase** - Discount only applies to one-time purchases
* **Subscription** - Discount only applies to subscription orders
* **Both** - Discount can apply to either (most common)

{% hint style="info" %}
Usually you want Purchase Type set to "Both" and use the Has Subscription condition to control the logic. This gives you more flexibility.
{% endhint %}

## Best Practices

{% hint style="info" %}
**Start with "Contains subscription".** This is the most flexible option and rewards any subscription commitment.
{% endhint %}

{% hint style="info" %}
**Clearly communicate benefits.** Show customers they'll save on shipping by subscribing. Display this on product pages.
{% endhint %}

{% hint style="info" %}
**Don't be too restrictive.** "Subscription only" might discourage customers from adding one-time items to their subscription orders.
{% endhint %}

{% hint style="warning" %}
**Test with your subscription app.** Different subscription apps may implement selling plans differently. Always test in Test Mode first.
{% endhint %}

## Troubleshooting

<details>

<summary>Discount not applying to subscription orders</summary>

* Check Purchase Type settings (should be "Both" or "Subscription")
* Verify products have subscription selling plans enabled
* Confirm customer selected subscription option (not one-time)
* Test in Test Mode with a known subscription product

</details>

<details>

<summary>Discount applying to wrong orders</summary>

* Review which operator you're using (contains vs only vs mixed)
* Check if you meant to use Purchase Type settings instead
* Verify subscription products are properly configured

</details>

<details>

<summary>Mixed carts not working as expected</summary>

* Confirm you're using "mixed" operator (not "contains")
* "Contains" includes mixed carts, "mixed" requires both types
* Test with various cart combinations

</details>

## Related Conditions

* **Customer Order Count** - Combine with subscription for first-time subscriber discounts
* [**Cart Total**](/advanced-free-shipping/conditions-cart-and-order/cart-total.md) - Add value thresholds to subscription discounts
* **Customer Tags** - Create VIP subscription tiers
* **Product in Cart** - Specific product subscription discounts

## Learn More

**Subscriptions Advanced** - Deep dive into subscription discount strategies


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://responsive-media.gitbook.io/advanced-free-shipping/conditions-cart-and-order/has-subscription.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
