Limit a Shopify Promotion to the First 150 Paid Orders

8 min setup
No coding required
Runs automatically

Launch offers like a free gift or an extended warranty for the first 150 customers need a counter that survives between orders and stops cleanly at the cap. This workflow keeps a running total in a MESA data table, checks every paid order against it, tags each qualifying order, and pushes a Klaviyo event so the right confirmation email goes out. Order 151 simply gets nothing.

Shopify logo icon
Shopify Order Paid (Trigger)
Shopify Order Add Tag
Shopify Create or Update Order Note Attribute
Klaviyo logo icon
Klaviyo Create Event

How it works

8 steps to cap a launch promotion at the first 150 paid orders and tag every winner

Shopify logo icon

Shopify Order Paid (Trigger)

App connector: Shopify • Time to complete: 1 minute

Run once for every order that is marked as paid.

Filter

App connector: Filter • Time to complete: 1 minute

Continue only for orders that should count: placed on or after the launch date, not a test order, and not already tagged with the promotion tag, so a replayed webhook never takes a second slot.

Data Query

App connector: Data • Time to complete: 1 minute

Read the promotion's counter record from a MESA data table that holds the campaign name and the number of slots claimed so far.

Filter

App connector: Filter • Time to complete: 1 minute

Continue only if the slots claimed so far are fewer than 150.

Data Update Record

App connector: Data • Time to complete: 1 minute

Add one to the counter record to claim this order's slot.

Shopify Order Add Tag

App connector: Shopify • Time to complete: 1 minute

Tag the order with the promotion tag, for example OPENING-PROMO, so staff and reports can find every winning order.

Shopify Create or Update Order Note Attribute

App connector: Shopify • Time to complete: 1 minute

Record the slot number on the order, such as Promo Slot: 37, so support can answer questions about it.

Klaviyo logo icon

Klaviyo Create Event

App connector: Klaviyo • Time to complete: 1 minute

Create a custom Klaviyo event such as Promotion Slot Granted for the order's email, with the order number and slot number as properties, so a Klaviyo flow sends the confirmation email.

Trusted by 1,000+ merchants
Logo: Rothy's Logo: Adidas Logo: Allure Logo: GQ Logo: DraftKings Logo: Chubbies Logo: Made In Cookware Logo: MUD/WTR

Ready to cap a launch promotion at the first 150 paid orders and tag every winner

Get setup in 8 minutes.

Use this template →

FAQs

What happens to order 151?

The counter filter stops the workflow before any tag or event, so order 151 and every order after it goes through normally with no promotion.

Can a replayed order take two slots?

No. The first filter skips any order that already carries the promotion tag, so a retried or replayed webhook never claims a second slot.

Can I change the cap?

Yes. Change 150 in the counter filter to any number, or store the cap in the data table record so you can change it without editing the workflow.

Personalize this template

Customize this workflow even further:

Give slots back on refunds
Add a second workflow on Refund Created that subtracts one from the counter and removes the tag when a promoted order is fully refunded.
Require a discount code
Add a condition to the first filter so only orders that used the launch discount code count toward the cap.

You're in good company

"MESA has been a game changer for us. And, if you ever get stuck, their support team is always super helpful."

  • Ico star
  • Ico star
  • Ico star
  • Ico star
  • Ico star
PetFriendly

"It's like Zapier but exactly designed for Shopify. I have been able to complete all the workflows that I've needed."

  • Ico star
  • Ico star
  • Ico star
  • Ico star
  • Ico star
Zailys

"The MESA team has been amazing at helping us set up our automations. We would highly recommend this app!"

  • Ico star
  • Ico star
  • Ico star
  • Ico star
  • Ico star
Rothy's

cap a launch promotion at the first 150 paid orders and tag every winner

8 min setup • Fully supported if you need help