---
title: "Free shipping by state, ZIP code or postcode"
description: "Free shipping for the 48 contiguous US states, certain ZIP codes, suburbs or metro areas."
url: https://rmewfqxya.us.gleap.help/en/articles/31-free-shipping-by-state-zip-code-or-postcode
collection: "Guides"
updated: 2026-10-30
language: en
---

# Free shipping by state, ZIP code or postcode

Free shipping for the 48 contiguous US states, certain ZIP codes, suburbs or metro areas.

_Updated October 2026_

**Short answer:** Shopify's free shipping discount can only be limited by country. To include or exclude states, provinces or ZIP codes, use the **Province / State** and **Postcode / ZIP** conditions in RM: Advanced Free Shipping. It discounts the rates you already have, so you don't need carrier-calculated shipping or Shopify Plus.

## Free shipping to the 48 contiguous US states

-   **Shipping country** **Is one of** United States
    
-   AND **Province / State** **Is not one of** Alaska, Hawaii
    
-   AND your threshold, for example **Cart total** **Is at least** 75
    

![Conditions: Shipping country is one of United States, AND Province / State is not one of Alaska, Hawaii](https://staticfiles.us.gleap.ai/p6ad4251a43e13d5e6030fd91/dyiesw2Db9HmgVEU06bS2X9qeVTRtABHalEUdimhzMH8rrrC8DXB2a1C9MfUYnQsfcEpzE43ySg.png)

Add any territories you also exclude, such as Puerto Rico, Guam or Armed Forces, to the same Province / State condition. Exclude the few rather than selecting all 48: long lists can hit Shopify's size limit for a discount.

## Free shipping to certain ZIP codes or postcodes

Add a **Postcode / ZIP** condition with **Matches any of**:

-   **Exact**: `94107`
    
-   **Starts with**: `941*`
    
-   **Numeric range**: `2000:2234`. Use a colon, not a hyphen.
    

![A Postcode / ZIP condition with an exact code, a range and a wildcard](https://staticfiles.us.gleap.ai/p6ad4251a43e13d5e6030fd91/SHEdIrv6Ck1ogbZBx7OH1OX6j19ZjhHwM4N733XTSQ3DHVkr2lcmDo7ZSCNMwexcOdMgQkwm7Cg.png)

Spaces and upper/lower case are ignored, so `m5v 2t6` matches `M5V2T6`. Ranges only work for numeric postcodes. For letter-based ones, such as in Canada and the UK, use wildcards like `M5V*` or `SW1*`.

## Free local delivery nearby

Set **Delivery type** to **Local delivery** and **Discount value** to **Free**, with a postcode condition if you like. Local pickup can't be discounted.

## What Shopify does without an app

-   Shipping zones go down to country and province/state, and each zone can have a free rate. It applies to everyone in that zone, with no codes, customer groups or dates.
    
-   Postcodes are only built into **Local delivery**, which has its own limits per location.
    

## Good to know

-   Location conditions use the shipping address, so they're checked once the customer enters it. Until then, **Is one of** and **Matches any of** don't match, and **Is not one of** and **Does not match** do.
    
-   Pair **Province / State** with **Shipping country**, because some codes exist in more than one country: WA is both Western Australia and Washington.
    
-   US ZIP+4 codes such as `94107-1234` need a wildcard: `94107*`.
    

See [Shipping country, province/state and Shopify Market](https://rmewfqxya.us.gleap.help/en/articles/15-shipping-country-province-state-and-shopify-market.md) and [Postcode / ZIP](https://rmewfqxya.us.gleap.help/en/articles/16-postcode-zip.md).

## Common questions

**Can Shopify's free shipping discount exclude Alaska and Hawaii?**  
No. It can only be limited by country.

**Do I need carrier-calculated shipping for free shipping by ZIP code?**  
No. **Postcode / ZIP** conditions work with any rates, including flat rates.

**Can I use ZIP code ranges?**  
Yes. Numeric ranges use a colon, such as `94100:94199` or `2000:2234`.

**Does it work with Canadian and UK postcodes?**  
Yes, with wildcards such as `M5V*` or `SW1*`. Ranges only work for numeric postcodes.
