A points program turns every order into progress toward a reward, giving subscription customers a reason to stay beyond the product itself. Without one, the only thing keeping subscribers around is the product — and competitors sell products too.
Redeeming a reward gives customers a concrete reason to place the next order. subZwallet's Points Program lets you build that loop for both subscription and one-time orders on Shopify, with earning rules, redemption codes, optional point expiry and a birthday reward. It is included on every plan, including Free. Customers see their balance and rewards in the customer portal and in the rewards wallet page in their Shopify customer account.
Launching a points program without a plan leads to one of two failures: points are so easy to earn that margins collapse, or so hard to earn that nobody bothers redeeming. Start by deciding three numbers: the earning rate, the redemption ratio, and the first-reward threshold.
Example points economy table — A supplement brand with a $50 average order value (AOV) and 60-day subscription cycle:
With this setup, a subscriber earns $2.50 in reward value per order and hits their first redemption after two deliveries. That is a 5% effective rebate — within the recommended 3-10% earning range for subscription programs.
In the subZwallet sidebar, click Points Program. The dashboard shows Earning Rules, Redemptions, Birthday Reward, expiry settings, and a summary of points issued vs. redeemed. If few issued points are ever redeemed, your rewards are likely set too high. Read the benchmarks section below.

Each earning rule defines a trigger, a points type, and optional conditions. You can stack multiple rules with AND/OR logic to create precise targeting.
Trigger determines which orders qualify: ONE_TIME (single purchases only), SUBSCRIPTION (recurring orders only), or ALL (both). Points type controls the math: FIXED awards a flat number of points per qualifying order, PER_DOLLAR awards points proportional to order value, and PERCENTAGE awards points as a percentage of the order total.
Conditions narrow the rule further. Available conditions include: order_minimum, order_maximum, order_contains_product, order_contains_collection, customer_tier, customer_tag, first_order, day_of_week, date_range, and subscription_order_number. Combine conditions with AND (all must match) or OR (any must match) logic.
Example: Award 2x points on subscription order #3 to reward customers who make it past the critical second-order churn window. Set trigger = SUBSCRIPTION, points type = PER_DOLLAR, value = 10, condition = subscription_order_number equals 3.
Redemptions define what customers can spend points on. Each redemption has a name, a points cost, and a reward type. When a customer redeems, subZwallet creates a redemption code they can use on their next order, or adds the value to their cashback wallet.
Reward types:
Offer at least two redemption tiers — a low-cost option (e.g., 500 points for free shipping) and a higher-value option (e.g., 1,500 points for $15 cashback). Multiple tiers increase the likelihood that customers find a reward within reach, which directly improves your redemption rate.
The points-to-currency ratio is the single most important number in your program. It determines how much each point is worth in real money and directly controls your program's cost.
The birthday reward is a one-time annual points bonus awarded during the customer's birthday month. It requires the customer's birth date, which subZwallet collects through the customer account widget or can import from customer metafields.
Birthday rewards serve two purposes: they re-engage lapsed customers who stopped ordering, and they give active subscribers a surprise that strengthens emotional loyalty. Keep the amount modest (equivalent to $1-3 in value) — the gesture matters more than the size.
Track these metrics monthly in the Points Program dashboard to know whether your program is working:
If your redemption rate stays low, try these fixes: add a low-cost redemption option (free shipping at 300 points), remind customers of their balance (Klaviyo receives points events), or add a time-limited earning rule with a date range condition, such as double points on subscription orders for a week.
subZwallet stores points balances as customer metafields on Shopify, which means you can use Shopify's native customer segmentation to build audiences based on points data. For example, create a segment of customers with more than 500 points who have not redeemed in 60 days, then send them a "Your rewards are waiting" email from your marketing tool (such as Klaviyo).
Metafield-based segments update automatically as balances change — no manual list management required. This is particularly effective when combined with [customer tiers](/help/customer-tiers), where tier status and points balance together define high-value customer segments. See Shopify's customer segmentation guide: https://help.shopify.com/en/manual/customers/customer-segmentation
Points work best as part of a broader loyalty system. Pair them with cashback for immediate-gratification rewards, tiers for status-driven retention, and data-informed best practices for program design: