Per-customer purchase limits for Shopify
Decide how much any one customer can buy — one per customer, three orders a month, 40 lb per 30 days — and have Shopify check it at checkout, across every order they place.
Limit orders, units, spend or weight
Cap the number of orders, the units of a product, the total a customer spends, or the total weight they order. Add two rules to combine them — for example three orders and 40 lb per customer.
Per day, week, month, year, rolling 30 days or lifetime
Pick the window the rule resets on, or set it to lifetime for a true one-per-customer allocation that never reopens.
Store-wide, per product or per collection
Apply a rule to the whole store, to one product, or to a collection — one per customer on the drop, a monthly allowance across the whole range.
Counts every order a customer places
Limits follow the logged-in customer across orders, devices and sessions — not just one cart. A full cancellation gives the usage back.
Login required, guests blocked
Customers are identified by their Shopify customer account. While customer limits are on, guest checkout is blocked, so nobody can get around the cap by checking out as a guest.
Enforced at checkout, not displayed
Rules run inside Shopify's checkout through a validation Function, so they hold on Shop Pay and other express checkouts — not only on the cart page.
- No code
- Works with your theme
- Holds on Shop Pay & express checkout
- Included on Pro
Can Shopify limit purchases per customer?
Not across orders. Shopify's native add-to-cart limit caps how many of a variant fit in one cart, and B2B quantity rules set minimums and maximums for B2B buyers within one order. Neither remembers what a customer bought yesterday, so a shopper can place a second order and buy again. A per-customer limit needs an app that counts each customer's orders over time and checks the total at checkout.
That's the difference between a per-checkout limit and a per-customer limit. Per-checkout stops one big cart. Per-customer stops the same person coming back five times — which is what limited drops, fair-share products and employee allowances actually need.
How OrderRules identifies a customer
OrderRules tracks customers by their Shopify customer ID, which exists when the shopper is logged in. It doesn't match guests by email, because a new email address would reset the count.
So while customer limits are on, guest checkout is blocked and shoppers must log in. That's the trade-off: an account step at checkout in exchange for a limit that holds across every order. If you need guest checkout, use product caps and daily caps instead — they work for everyone.
What counts, and what resets
Every order a logged-in customer places counts from the moment you set the rule. A fully cancelled order gives its usage back; refunds and partial cancellations don't. Calendar periods reset in your store's timezone; rolling 30 days counts each order on the day it's placed and the 30 days after.
Spend caps check what a customer has already spent, so the order that crosses the cap goes through and the next one is blocked. Set a spend cap a little below the real ceiling if it must not be exceeded. Two checkouts completing in the same second can both pass, because checkout validation reads a snapshot rather than holding a lock.
Works with, and limits
Works with every Shopify plan, Shop Pay and other express checkouts, headless checkouts and B2B checkouts — limits are checked at checkout by a Shopify Function.
Limits: customers must log in, and guest checkout is blocked while customer limits are on. Rules apply the same way to every logged-in customer and can't target tags. POS orders and subscription renewals count toward limits but aren't blocked. Spend caps are soft, and refunds don't give usage back — cancel instead.
Per-customer limits: Shopify native vs OrderRules
Shopify covers limits within one order. OrderRules adds limits across a customer's orders.
| Need | Shopify native | OrderRules |
|---|---|---|
| Max units of a variant in one cart | Yes — add-to-cart limit | Product caps (shared totals per day/week/month) |
| Min, max, increment for B2B buyers | Yes — B2B catalog quantity rules | Minimum and step per product, for everyone |
| One per customer, ever | No | Yes — lifetime limit |
| N orders per customer per month or rolling 30 days | No | Yes |
| Spend per customer per period | No | Yes (soft cap) |
| Weight per customer per period | No | Yes |
| Different limits by customer tag | No | No — one rule for every logged-in customer |
| Works for guest checkout | — | No — customers must log in |
Customer limits are on the Pro plan. They apply the same rule to every logged-in customer, including B2B company buyers.
How to set a per-customer limit on Shopify
No code. About five minutes.
- 1
Turn on customer accounts in Shopify
In Settings → Customer accounts, make sure shoppers can sign in or create an account. Customer limits need a logged-in customer.
- 2
Open Customer Limits in OrderRules
On the Pro plan, open Customer Limits and enable customer limits. From then on, guests are blocked at checkout and asked to log in.
- 3
Add a rule
Choose what to limit (orders, units, spend or weight), the scope (store-wide, a product or a collection), the value, and the period — day, week, month, year, rolling 30 days or lifetime.
- 4
Write the message customers see
Edit the message shown when a customer reaches the cap. Framing it as fairness — everyone gets a turn — works better than restriction.
- 5
Test with an express checkout
Log in as a test customer, place an order up to the limit, then try another with Shop Pay. Checkout should block the order over the cap.
Frequently asked questions
You set a maximum — orders, units, spend or weight — per customer over a period: day, week, month, year, rolling 30 days or lifetime. OrderRules counts each logged-in customer's orders and blocks the checkout that would go over the limit. While customer limits are on, guest checkout is blocked so every buyer is identified.
The Shopify customer account. OrderRules tracks customers by their Shopify customer ID, which exists when they're logged in. It doesn't match guests by email, which is why guest checkout is blocked while customer limits are on.
Yes. Create a rule with Total Spend as the limit type, an amount, and a period. The cap is checked against what the customer has already spent, so the order that crosses it goes through and the next one is blocked — set it slightly below a hard ceiling.
Yes — add two rules. For example, three orders and 40 lb per customer per rolling 30 days. Both are checked at checkout, and whichever is reached first blocks the order.
Put a per-customer limit on the drop products — often one per customer, lifetime — and keep customer limits on so guests must log in. Each account can only buy its allocation, including through Shop Pay and express checkouts.
A fully cancelled order gives its usage back. Refunds and partial cancellations don't — the order still counts. If you refund an order to let a customer buy again, cancel it instead.
No. A per-customer limit applies the same rule to every logged-in customer, including Shopify B2B company buyers; OrderRules can't target customer tags. Keep limits on the products that need them and sell bulk stock as separate products.
Per-customer rules are on the Pro plan at $9.99 per month, or $95.90 per year, with a 14-day free trial. Billing runs through Shopify.
Sell to more customers, not more to the same one.
Included on the Pro plan at $9.99/month. Start free for 14 days.