Should You Build or Buy Loyalty in Checkout on Shopify Plus?
Building a custom checkout UI extension wins for loyalty in checkout on Shopify Plus, even when the points program itself is bought. An estimated $10,000–$25,000 scoped build (Deploi estimate, illustrative) puts balance, earn preview, and redemption in your brand's highest-converting real estate. Documented first-checkout and discount-state gaps hit both lanes; owned code designs around them, while the vendor's block just inherits them. Buy the stock widget only to prove redemption demand first.
Your profile — see how the verdict shifts
- Confidence
- Medium — Checkout UI extensions are the settled Plus surface and the build is bounded, but the documented extension gaps keep moving and widget verification is pending
- Reference scenario
- $20M–$100M GMV · Shopify Plus · bought loyalty program · agency dev bench
- As of
- August 2026
Decision at a Glance
| Your profile | Verdict | Why |
|---|---|---|
| Not on Plus (checkout is closed) | WAIT | Checkout UI extensions in checkout itself are Plus-gated; render points on the cart, account, and order-status pages instead, and revisit at a Plus migration. |
| Plus, member orders under ~20% | BUY | Toggle the vendor's stock checkout block if your tier includes it; prove people actually redeem in checkout before commissioning code. |
| Plus, loyalty-led (20%+ member orders) | BUILD | Redemption UX now moves real conversion; a custom extension matches your brand, shows guests an earn preview, and handles the stacking edge cases the stock block drops. |
| Plus at scale, heavy promo calendar | BUILD | Every promo multiplies discount-state collisions with points; an owned extension plus a discount Function decides what stacks instead of leaving it to a widget. |
What Loyalty in checkout (Plus) Actually Drives
| Outcome | Impact | How it works |
|---|---|---|
| Revenue — direct | High | Redemption visible at the moment of payment converts hesitation into completion; a points discount the shopper applies in place removes the leave-checkout-and-hunt-for-codes detour. |
| Customer experience | High | Members expect the balance they earned to appear where they spend it; a checkout that ignores the program reads as a broken promise, not missing UI. |
| Retention & LTV | Medium | An earn preview at checkout, such as 'this order earns 340 points', plants the return visit before the first order even completes. |
| Data & insight | Medium | Redemption-at-checkout events tie loyalty activity to conversion outcomes, the dataset that later prices every change to the program. |
| Operational efficiency | Low | Fewer where-is-my-discount tickets arrive when stacking outcomes render explicitly instead of failing silently after the order ships. |
Spend ceiling: Size the spend to checkout conversion, not loyalty features: the extension is a $10–25K-band build (Deploi estimate, illustrative) guarding your highest-stakes surface, and it should never grow into a loyalty engine. The program itself is the points-program decision.
What buying enables (top apps)
- + Live this sprint: the vendor's block renders balance and redemption with zero code and vendor-maintained upkeep
- + Program mechanics, fraud rules, and the points ledger stay the vendor's problem, where they belong
- + One dashboard: the widget's redemption settings live beside the rest of the loyalty program
What building additionally unlocks
- + Earn previews for guests and first-time buyers, the shoppers the stock widget's first-checkout gap leaves blank
- + Explicit stacking decisions: a discount Function that rules on promo-plus-points instead of dropping the redemption silently
- + Your brand, your placement, your suppression logic in the store's highest-converting real estate
- + A checkout surface that survives switching loyalty vendors; only the API adapter re-points
Find Your Verdict in 3 Questions
Are you on Shopify Plus? (Checkout UI extensions in checkout are Plus-gated.)
Yes: Go to question 2.
No: Your verdict: WAIT — render points on the cart, account, and order-status pages, and revisit at a Plus migration.
Do member orders drive 20%+ of revenue, with a dev bench available?
Yes: Go to question 3.
No: Your verdict: BUY — toggle the vendor's stock checkout block if your tier includes it, and prove redemption demand first.
Does your promo calendar stack codes, gifts, or shipping offers on top of points?
Yes: Your verdict: BUILD — an owned extension plus a discount Function is the only lane that decides stacking instead of suffering it.
No: Your verdict: BUILD — the bounded extension still wins on brand fit, guest earn previews, and surviving a vendor switch.
The TCC Scorecard — 12 Dimensions
TCC — Total Cost of Capability: what it actually costs to have this capability over three years, whichever way you get it. Each dimension is scored 0–5 for both paths. How we score →
| Dimension | Buy | Build | Why |
|---|---|---|---|
| Cost | |||
| Acquisition & implementation | The vendor's checkout block toggles on in an afternoon; the custom extension is an estimated 3–6 week project (Deploi estimate, illustrative). | ||
| Recurring fees | The stock widget rides the loyalty subscription you already pay (Smile.io Plus plans from $999/mo per July 2026 research), though checkout surfaces often sit on higher tiers; the extension adds no fee line. | ||
| Maintenance & upgrades | The vendor absorbs checkout API churn for its widget; your extension tracks Shopify's roughly six-month API version cycle at ~15–20% of build cost per year (Deploi estimate). | ||
| Switching & exit | Swap loyalty vendors and the stock widget disappears with the contract; a custom extension keeps the checkout UX and re-points one API adapter. | ||
| Risk | |||
| Vendor risk | Loyalty suites prune products, as when Yotpo shut its SMS, Email, and Subscriptions lines in 2025; an owned extension depends only on the platform and your loyalty API contract. | ||
| Security & compliance surface | Both lanes run sandboxed extension code in checkout; the custom lane decides exactly which loyalty data crosses into that surface and logs every call. | ||
| Platform-deprecation exposure | Checkout UI extensions are the sanctioned surface for both lanes now that checkout.liquid is dead for Plus; the platform risk is shared, not the differentiator. | ||
| Value | |||
| Fit to requirement | Stock widgets render the vendor's generic banner where the vendor's template puts it; a custom extension shows guests an earn preview, members a redemption control, and nothing when a better promo is applied. | ||
| Time to market | The toggle wins this sprint; the build lands in about a month plus stacking tests (Deploi estimate, illustrative). | ||
| Performance & scale | Both render as sandboxed extension components, but a purpose-built extension makes one scoped balance call while suite widgets ship whatever the vendor bundles. | ||
| Data ownership & AI-readiness | Redemption behavior at the moment of payment is conversion-critical experiment data; an owned extension emits those events into your analytics instead of the vendor's dashboard. | ||
| Focus & opportunity cost | A bounded one-surface build, but it still queues behind other revenue-critical checkout work; toggle the widget when the bench is full. | ||
The App Landscape
| App | Status | Pricing | Best for |
|---|---|---|---|
| Loyalty app checkout widgets (your vendor's block) | Category — Stock checkout blocks from the major loyalty platforms; Smile.io Plus plans start at $999/mo (per July 2026 research), and block availability plus plan gating vary, so verify your tier | Bundled with loyalty plans; checkout surfaces often tier-gated (illustrative) | Proving redemption demand in checkout before commissioning code |
| Native store credit at the payment step | Native — Not a widget: redemption paid out as store credit renders natively at the payment step on all plans; API issuance is gated by tier (July 2026 research) | Included with Shopify plans; API issuance gated by tier (July 2026 research) | Programs that redeem into store credit instead of checkout discount codes |
| Custom checkout UI extension | Build lane — Not an app: your own extension on the sanctioned checkout surface, calling your loyalty platform's API; the lane this page prices | $10,000–$25,000 one-time (Deploi estimate, illustrative) | Plus stores where members drive 20%+ of orders |
The Build Path
- Balance + earn-preview extension: One extension target renders the member's balance and, for guests, an earn preview computed from cart total and earn rate, so the documented first-checkout gap stops costing you enrollment.
- Redemption + stacking Function: A redemption control applies points as a discount while a paired discount Function rules on combinations, so a promo code and a points discount never collide silently.
- Store-credit payout variant: Pay redemptions out as native store credit instead: store credit renders at the payment step on its own, and the extension shrinks to balance display and earning messaging.
- Effort band
- $10,000–$25,000 for the extension pair (Deploi estimate, illustrative); lands in the $10–25K contact-form band
- Typical timeline
- 3–6 weeks for balance, earn preview, and redemption; add 1–2 weeks for a stacking Function (Deploi estimate, illustrative)
- Maintenance, honestly
- ~15–20% of build cost per year (Deploi estimate): Shopify's roughly six-month API version bumps, loyalty-API contract changes, and re-testing at checkout upgrades. The vendor's widget hides the same cost inside its subscription.
- What you own — and what you take on
- You own: the checkout UX, the stacking logic, the redemption event stream, and a surface that survives a loyalty-vendor switch. You take on: the loyalty-API adapter, latency budgets, and the upkeep above.
3-Year Total Cost of Capability
| Buy (app path) | Build (custom path) | |
|---|---|---|
| Year 0 (setup) | $0–$2,000 widget configuration (Deploi estimate, illustrative) | $10,000–$25,000 (Deploi estimate, illustrative) |
| Years 1–3 (recurring) | $0–$3,600 possible loyalty-tier delta (illustrative) | $4,500–$15,000 upkeep (Deploi estimate, illustrative) |
| 3-year total | ≈$0–$5,600 (illustrative) | ≈$14,500–$40,000 (Deploi estimate, illustrative) |
- † All figures illustrative samples for the reference scenario — not quotes, not verified pricing.
- † Buy path assumes the stock checkout widget is included in the loyalty tier you already pay; the loyalty subscription itself is priced on the points-program decision.
- † Build path: balance, earn-preview, and redemption extension plus a stacking Function; upkeep at ~15–20% of build cost per year; three-year horizon.
What the Sticker Price Hides
On the buy path
- — Checkout surfaces drift to higher loyalty tiers at repricing; the block you toggled on free can reappear as an upsell
- — Stock widgets hit the documented first-checkout gap head-on: guests and first-time buyers see nothing exactly where enrollment messaging would pay
- — Discount-state collisions fail silently: a promo code knocks out the points discount and the widget keeps rendering as if it applied (community-reported pattern)
- — The widget renders the vendor's brand and layout in your highest-converting real estate, and the customization ceiling is the vendor's settings page
On the build path
- — The stacking matrix is the fiddly 20%: points discounts versus promo codes, gift cards, and shipping offers all need explicit rules
- — Checkout extension APIs still carry documented visibility limits; some states your code simply cannot read, so design fallbacks, not assumptions
- — Loyalty-API latency bites in checkout; a slow balance call costs more than no widget, so budget the timeout path
- — ~15–20% of build cost per year in upkeep (Deploi estimate), tracking roughly six-month API version cycles
What Merchants Say
Loyalty-in-checkout complaints cluster on silent redemption failures: points redeemed, discount not applied, and the support ticket lands after the order ships.
The recurring widget gripe is placement and polish: the block sits where the vendor's template puts it, looks like the vendor, and breaks quietly at checkout upgrades.
If You Change Your Mind Later
If you bought and outgrow it
Exit tracks the loyalty contract: switch vendors and the stock checkout widget vanishes with it, so checkout redemption goes dark mid-migration unless the replacement is scheduled first. Point balances are the parent points-program decision; the assets at risk here are checkout continuity and the redemption-behavior data sitting in the vendor's dashboard.
If you built and want out
The extension is yours: a loyalty-vendor switch means re-pointing one API adapter while the checkout UX, stacking rules, and event stream keep running. Leaving Plus retires the surface entirely, which is the honest bound on what the build protects, so keep the adapter thin and the logic portable.
When This Answer Changes
We're watching for:
- ▸ Shopify closing the documented first-checkout and discount-state gaps in checkout UI extension APIs, which would raise both lanes' ceiling
- ▸ Loyalty vendors shipping materially deeper checkout blocks or moving them across plan tiers (illustrative)
- ▸ Native store credit expanding toward first-party points, which would collapse redemption into the payment step on every plan (none shipped as of July 2026 research)
Verdict change log:
No changes since first publication (August 2026).
Common Questions
Can a checkout loyalty widget show points to first-time or guest shoppers?
No balance exists to show: the documented first-checkout gap means guests and first-time buyers reach checkout with no loyalty identity, so stock widgets render nothing where enrollment messaging would pay. A custom extension works around the gap with an earn preview, for example 'this order earns 340 points', which needs only the cart total and your earn rate.
Why do points discounts disappear in Shopify checkout?
Discount-state collisions cause most disappearing points discounts: redemptions usually apply as a discount code, and Shopify's combination rules or a second promo code can knock the redemption out with no reported error. Owned code closes the gap: a checkout UI extension plus a discount Function, the surface that replaced Scripts (which stopped executing 2026-06-30), decides what stacks and shows the shopper the outcome. Test the promo-plus-points matrix before launch.
How much does a custom loyalty checkout extension cost?
A custom loyalty checkout extension runs an estimated $10,000–$25,000 and 3–6 weeks: balance display, an earn preview for guests, a redemption control, and a stacking Function (Deploi estimate, illustrative; scope moves the number). Upkeep adds roughly 15–20% of build cost per year (Deploi estimate). The vendor's stock widget toggles on in an afternoon, which is the honest time-to-market trade the scorecard prices.
Your Next Steps
If you're going with BUILD(matches your selected profile)
- Audit the stacking matrix first: list every promo type that can co-exist with a points discount
- Scope the extension pair: balance plus earn preview, a redemption control, and a discount Function for combinations
- Set a latency budget for the loyalty-API balance call and design the timeout fallback (render nothing, never a spinner)
- Ship behind one loyalty-API adapter so a later vendor switch is a re-point, not a rebuild
- Instrument redemption events into your analytics from day one; checkout-completion lift is the ROI number
If you're going with BUY
- Verify which loyalty plan tier includes the checkout block and what it renders for guests
- Walk the first-checkout path yourself: incognito window, guest email, one promo code plus a points redemption
- Set discount-combination rules deliberately before the widget goes live
- Diary a re-decision when member orders cross 20% of revenue or the widget's placement starts costing conversion
Official Docs & Sources
- Store credit — Shopify Help Center
- About discounts — shopify.dev
Official documentation linked for verification — our verdicts and estimates are our own.
Related Decisions
Should You Build or Buy a Points Program on Shopify?
Buying a points program wins for Shopify brands under roughly $50M in revenue; the liability math and vendor ecosystems beat building.
Should You Build or Buy Store-Credit Rewards on Shopify?
Store-credit rewards belong on Shopify's native ledger: customize the earn rules instead of renting a parallel wallet.
Should You Build or Buy a Referral Program on Shopify?
A referral program on Shopify is a buy you may already own: loyalty suites bundle it, and fraud policing is most of what the subscription buys.
Build or Buy Birthday & Anniversary Rewards on Shopify?
Building birthday and anniversary rewards on Shopify Flow, store credit, and your email platform wins for any store without a loyalty app.
Should You Build or Buy Product Subscriptions on Shopify?
Product subscriptions are a genuine three-way call: native for simple replenishment, buy for retention depth, build the portal at scale.
Ready to make points count at checkout?
We build checkout UI extensions that show the balance, apply the discount, and never fail silently, on whatever loyalty platform you already run. Bounded scope, biggest surface.
Contact us todayVerdict scored for the reference scenario above. Estimates are not quotes; app pricing carries its verification date and gets re-verified quarterly. Full scoring anchors: see the TCC methodology.
Read how we score these decisions (the TCC Framework). No affiliate links, no paid placement — no app vendor pays to appear here.