How to Limit a Customer to Purchasing a Product Only Once (Lifetime Limit)?

Hi everyone,

I’m looking for a way to prevent any single customer from purchasing a specific product more than once—ever. I want to ensure that once a customer buys a certain product (in my case, a certain tee shirt design), they are never able to purchase it again in future orders.

I’ve seen apps that allow per-order limits, but I need a true lifetime purchase limit per customer for this product. Ideally, the solution should:

  • Work across multiple orders (not just limit purchases within a single transaction).
  • Identify customers based on email, phone number, or account if they have one.
  • Prevent checkout if they’ve already bought the restricted product before.
  • Work for both guest checkouts and customer accounts if possible.

Does anyone know of an app that can handle this, or is there a way to achieve it through Shopify Scripts, Flow (I’m not on Plus), or another workaround?

Thanks in advance for any help!

Hi @thankgodusa ,

Shopify doesn’t have a built-in way to enforce lifetime purchase limits, but here are some options:

Shopify Flow (Advanced Plan & Above) – Tag customers after purchase and block future orders, but only works for logged-in users.

Third-Party Apps – Apps like Mechanic or CustomerHub can track purchase history and restrict repeat orders.

Hi @thankgodusa,

I saw your question about setting lifetime purchase limits. With DC Order Limits, you can track customer purchases over their entire order history, so lifetime limits work well.

Basically, you’d do this:

  1. Create a new customer limit rule

  2. Set the maximum quantity to 1 (or whatever number you want)

  3. Keep the tracking period set to lifetime (so it never resets)

  4. Choose the specific product you want to limit

For guest checkout, you get a couple of choices: either let guests buy without any restrictions, or require everyone to log in so the limit applies to all customers.

Let me know if you run into any questions while setting it up — happy to help!

There is no built-in Shopify feature that enforces a true lifetime “only once ever” purchase per customer across all orders. But you can use third-party apps that track customer history and block repeat purchases, like Limit Once which lets you mark specific products as “one per customer” and prevents a second purchase at checkout.

Other order limit apps (e.g., Pareto or DC Order Limits) may offer lifetime purchase caps or can be combined with customer-tagging automations to block repeat purchases, although truly enforcing it for guest checkout users without accounts is hard without custom solutions.

Shopify Flow or Scripts won’t solve this on non-Plus plans alone because Shopify doesn’t natively check past orders before checkout.

Best practical option: use a dedicated app like Limit Once.