Run the sale, not the discounts.
DiscountJet is not another discount app. It is the only app where the atomic unit is a campaign — a scheduled, versioned set of discounts and bundles published as one atomic, pre-validated operation.
Every incumbent sells merchants one more discount type. The merchant's real problem is operating a sale: a dozen discounts that must start together, not conflict, price correctly on the storefront, and end cleanly — without wrecking margin or checkout. Shopify's own platform caps (25 active automatic discounts, opt-in combinability, functions that run blind to each other) make this worse every year. DiscountJet owns the layer above discounts: sale operations.
1.1Three pillars
1 · Campaign wedge
Multi-discount + bundle campaigns with scheduling, versioning, ownership locks and pre-publish conflict checks. No incumbent ships this; the closest complaints in reviews ("which offer is this product in?", stacking chaos) prove the pain.
2 · Checkout-native + safe
Three Shopify Functions engines (tier, bundle, special — incl. delivery discounts), built on the official Discount Function API. Publish-refusal checks, audit history and a revert path sell what nobody else sells: discount safety.
3 · Flat, generous, fast
No order quotas, no overage caps that pause promos mid-BFCM, no "Powered by" badge. Monthly-renewing free tier (the proven Kite growth engine). Cloudflare Workers edge — zero cold starts.
1.2Where we play
- Primary segment: SMB & mid-market Shopify merchants (Basic → Advanced) who run multi-promo sales — seasonal sales, clearance, BFCM-style events, volume/bundle pushes.
- Wedge buyer: the merchant currently juggling 10–25 automatic discounts in Shopify admin, or stacking 2–3 discount apps that fight each other.
- Not (yet): enterprise Plus-only flows, POS, headless — sequenced in Phase 3 (see §6).
1.3Timing reality check
BFCM is 4 weeks away (late Nov 2026). A brand-new listing with zero reviews will not win BFCM installs. Plan: use BFCM as a design-partner season (20–50 merchants from Devkind's network running real sales), then public-launch in January 2027 — sale-planning season — and build review velocity through Q1 sale events (Valentine's, Mother's Day, summer clearance).
1.412-month goals (targets, to be ratified)
| Goal | Target — 12 months post-launch | Why this number |
|---|---|---|
| Published campaigns / wk (fleet) | 300+ | Proxy for real usage, not installs |
| App Store reviews | 120+ @ ≥4.8★ | Kite hit 1,000 in 36 mo (~28/mo); Discounty ~26/mo. 10/mo is a floor, not a stretch |
| Free → paid conversion | 4–6% | Category-typical for generous free tiers |
| Monthly churn (paid) | <4% | Sale-driven usage must convert to always-on volume/bundle tiers |
| Support first response | <4 bus. hrs | The SLA gap we exploit (incumbents: 24–48h or 3 weekdays) |
A crowded category with a structural gap.
Discount apps are one of the largest, most proven categories on the Shopify App Store — and the platform's own rules keep generating the problem we solve.
2.1Category size & demand signals
- Momentum leaders by modeled install share (ShopDigest, Oct 2026): SMART Bundles 47.4%, Kite 41.3% — new entrants do take share in this category.
- Review velocity is winnable: several leaders sit on small bases (Discount Kit 98, DiscountRay 12, Regios 99) while the category norm is 4.8–5.0★.
- Typical paid entry: $9.99–$29.99/mo; mainstream $19–50; premium engines to $199–399. Average app cost across all plans ≈ $58/mo (Uptek).
2.2The platform rules that create our market
| Shopify constraint | Detail | Consequence for merchants |
|---|---|---|
| 25-automatic-discount cap | max 25 active automatic discounts, app discounts included | A serious sale eats the budget fast; merchants need a layer that manages the lifecycle |
| Code limits per order | 5 product/order codes + 1 shipping code | Stacking strategy must be designed, not improvised |
| Combinability is opt-in | per-discount, per-class (Product / Order / Shipping) | Merchants routinely create discounts that silently refuse to combine |
| Functions run blind | max 25 concurrent discount functions, no cross-visibility | Multiple apps = emergent stacking chaos, exactly what 1★ reviews describe |
| Same-line product stacking | Plus-only; a 2026-04 API defect reported for app functions | Even power users hit walls — conflict checking before publish is the answer |
Every one of these constraints pushes in the same direction: merchants don't need more discount types — they need orchestration. That is precisely DiscountJet's campaign layer. The platform is our best salesperson.
2.3Why merchants install discount apps
- AOV & conversion: volume tiers, bundles, GWP — the mechanism behind "buy more, save more".
- Inventory clearing: markdown/clearance from compare-at price (DiscountJet ships this as a template).
- Competing with big retail: always-on promo expectations; merchants need sale cadence they can operate solo.
- Native ceiling: Shopify's built-in discounts stop at % / amount / free shipping / BXGY; everything beyond needs an app.
2.42025–26 trends we ride
Shopify Functions is now table stakes
Checkout-native discount functions ("no hacks") are a listed strength of every fast-growing entrant (Kite, new AIOD listing, Dealeasy). DiscountJet is Functions-native from day one with three engines.
Margin-aware discounting is emerging
Discount Prime's 2026 positioning (conflict detection, net-margin per campaign) validates the direction — but it's a young product. DiscountJet's pre-publish refusal checks are the same instinct, already shipped.
Sources: apps.shopify.com/categories/marketing-and-conversion-promotions-discounts/all · discountprime.app/shopify-app-store-tracker/discounts · uptek.com/shopify-statistics/app-store · help.shopify.com (Combining discounts) · shopify.dev (Discount Function API) · shopdigest.com install-share charts · community.shopify.dev stacking-defect thread — full list in footer.
Everyone sells discounts. Nobody sells the sale.
Eight apps covering the category's full price spectrum. Data from live App Store listings, vendor pricing pages and review pages; prices USD; verify before external use.
3.1Comparison table
| App | Rating (reviews) | Entry price | Free tier | Functions-native | POS | BFS badge | Known-for |
|---|---|---|---|---|---|---|---|
| BOGOS | ~5.0 (4,570) | $29.99/mo | 30 orders lifetime | Yes | Yes | Yes | Proof & breadth (95K+ brands claim) |
| Kite | 4.9 (1,335) | Free → $29/mo | 50 orders / month | Yes | Unstated | Yes | Fastest review velocity in category |
| Discounty | 4.9 (1,286) | $9.90/mo | 10 variants, 3 campaigns, forever | Partial (price editor changes catalog) | Yes | Yes | Bulk price editor + revert |
| VolumeBoost | 4.6 (641) | ~$9.99/mo | to $300 app revenue | Legacy path | Yes | Yes | Volume tiers; chronic reliability friction |
| AIOD (Cirkle) | 4.8 (365) | $9.99/mo | Dev stores only | Legacy + new listing | Yes | New listing only | Cheap all-rounder |
| Discount Ninja | 4.4 (185) | $49/mo + quotas | None (14-day trial) | Yes | No | No | Power features; weakest support reputation |
| Discount Kit | 4.9 (98) | $99.99/mo | None | Yes | Via native | Yes + Build Award | Enterprise SLA, mid-market |
| DiscountRay | 5.0 (12) | Free → $14/mo | Qty+tier discounts (badged) | Implied | Unstated | Yes | B2B / per-customer pricing |
| DiscountJet | — (0) | Free → $19/mo (rec.) | Monthly-renewing, no badge (rec.) | Yes — 3 engines | Phase 3 | Eligibility from launch | Campaigns — the sale as one unit |
3.2Where each standout actually stands
BOGOS — the proof leader
Wins on: 4.5k reviews, 12-year track record, POS + headless + subscriptions breadth.
Beatable on: free tier is 30 orders lifetime; per-order overage; gift selection bypassed by express payment methods.
Kite — the growth engine
Wins on: 50 free discount orders every month — the exact mechanic behind the category's fastest review velocity (1,000 reviews / 36 mo).
Beatable on: free tier blocked on Advanced/Plus stores; per-order billing surprises at volume; no campaign concept.
Discounty — the onboarding machine
Wins on: named-agent support in minutes; "a plan, not a trial" free tier; Built for Shopify.
Beatable on: variant-count limit walls with a broken upgrade flow; checkout conflicts reported; two inconsistent pricing pages erode trust.
Discount Ninja — the power incumbent
Wins on: "most fully featured discount engine there is" — stacking, VIP targeting, recurring schedules.
Beatable on: $49 floor + order quotas + overage caps that pause promotions mid-BFCM; storefront strikethrough needs custom coding or multi-day paid setup; "3 weekday" fix SLA; 4.4★.
Discount Kit — the enterprise pro
Wins on: 2026 Build Award, published 99.9% SLA + Slack channel (only one in category), complex logic (RRP-based, per-market, metafield conditions).
Beatable on: $99.99 floor excludes SMBs entirely; 98 reviews = thin proof; no free plan.
AIOD / VolumeBoost — the budget tier
Win on: cheapest full feature sets, POS coverage.
Beatable on: operational horror stories — a stuck discount forcing 15+ order cancellations (AIOD); discount boxes silently vanishing with 24–48h dev response (VolumeBoost, 4.6★); no best-discount-wins logic; no import/export.
3.3The pattern in the 1-star reviews
- Chaos, not features: "which offer is this product in?", discounts stacking when merchants wanted either/or, offers fighting each other at checkout.
- Operational safety: stuck discounts, broken storefront pricing, theme updates silently killing integrations.
- Punitive pricing mechanics: order quotas, overage caps, plan-gating by Shopify plan, lifetime-limited free tiers.
- Slow support: 24–48h responses while customer-facing prices are wrong; chatbots that end chats.
The category's weaknesses are almost entirely operational, not functional. DiscountJet's campaign layer — pre-publish refusal checks, versioning, ownership locks, audit history — is built for exactly this failure surface. We compete on the axis incumbents are structurally worst at.
Sources: apps.shopify.com listings & review pages for discount-url, discount-kit, discounty-bulk-discount-sales, all-in-one-automatic-discounts, discountray, kite-free-gift, freegifts, volume-discount-by-hulkapps · vendor pricing: discountninja.io/pricing, discountkit.app, aiodapp.com/pricing, discounty.ai · storeleads.app · shopdigest.com.
The only app that sells the sale.
Positioning: "DiscountJet runs your whole sale — every discount, every bundle, one scheduled publish, checked for conflicts before your customers ever see a price."
4.1Positioning map
Vertical position is illustrative of pricing/complexity posture, not a measured quantity. The horizontal axis is the strategic claim: no competitor's atomic unit is a multi-discount campaign.
4.2What's genuinely ours (verified in the codebase)
| Capability | Status | Competitive note |
|---|---|---|
| Campaigns as atomic unit — wizard: Discounts → Bundles → Schedule → Summary; one publish creates/locks multiple discounts + bundles | Shipped | No incumbent ships this. Directly answers "which offer is this product in?" complaints |
| Pre-publish conflict checking — publish refusals with indexed reasons (e.g. bundle-in-campaign naming, expand-only bundle rules) | Shipped | Only Discount Prime (young product) markets conflict detection |
| Three Functions engines — tier (% off, buy-more-save-more, compare-at clearance), bundle (incl. cart transforms), special (line + delivery discounts) | Shipped | Delivery-option discounts are rare; matches Ninja/Kit breadth at SMB price |
| Versioned bundle campaigns + campaign ownership locks on discounts | Shipped | Answers the "theme update broke my sale" class of failure — state is reproducible |
| Template catalogue — shipped promo shapes (defaults choose shape, never margin numbers) | Shipped | Faster time-to-first-campaign than any competitor's blank form |
| Edge runtime (Cloudflare Workers, D1, zero cold starts) | Shipped | Speed story; no incumbent markets latency |
| Storefront strikethrough widgets, progress bars | Roadmap | Must-have vs Ninja/Kite — ship before public launch (§6) |
| POS + headless, margin analytics, B2B segmentation | Phase 3 | Sequenced expansion, not launch scope |
4.3Messaging frame
- Headline: "Run the whole sale — not fifteen separate discounts."
- Against Discount Ninja: "Enterprise-grade promo power without order quotas, overage caps, or custom theme coding."
- Against AIOD/BOGOS: "Checked before publish. Versioned. Reversible. Your sale can't silently break."
- Against Discounty: "We don't rewrite your catalog prices — discounts stay native, clean and combinable."
- Proof obligations: strikethrough without code, <4h support, Built for Shopify badge, public status page.
Do not market unconditional "stacking" until the documented 2026-04 app-function same-line stacking defect is validated against current API versions. Market what we control: pre-publish conflict checking and an explicit combination matrix. Test on real stores first.
Flat pricing in a metered market.
The complex end of this category is priced like enterprise software with punitive mechanics (order quotas, overage caps that pause promotions, rev-share). We price like a tool, not a toll.
5.1Market anchors
| App | Model | Floor | Punitive mechanics |
|---|---|---|---|
| Discount Ninja | Quota + overage | $49/mo | promotions pause when overage cap hit; $0.10–0.20/order |
| AIOD (new listing) | Rev-share | $19.99/mo | 0.5% of attributed revenue above $50k/mo, capped $500/mo |
| BOGOS | Order-quota | $29.99/mo | $0.05/extra order; plan-gated by Shopify plan |
| Discount Kit | Flat | $99.99/mo | none — but SMB-excluding floor |
| Discounty | Variant-count | $9.90/mo | limit walls mid-sale; upgrade flow reportedly broken |
5.2Recommended tiers
Free — forever
- Tier engine (% off, volume, clearance templates)
- 50 discounted orders / month, renewing
- 2 active campaigns
- No "Powered by" badge. No card.
Kite proved monthly renewal drives review velocity; BOGOS's lifetime-30 tier is the anti-pattern.
Launch — $19/mo
- All three engines incl. bundles + special (delivery)
- Unlimited discounts & campaigns
- Scheduling, versioning, conflict checks
- Strikethrough app blocks (no code)
Undercuts the $49 power floor by 61%; matches the $9.90–29.99 SMB band with more engine.
Growth — $49/mo
- Everything in Launch
- Segment / customer-tag targeting
- Priority support, published SLA (<4h first response)
- Early access: margin analytics, POS (Phase 3)
Only published SLA under $99 in the category (Kit's is $349.99).
Never meter by order. Never pause a live promotion for billing. Never gate by the merchant's Shopify plan. These three rules are marketing assets — every one attacks a documented top complaint.
5.3Free-tier unit economics sanity check
50 discounted orders/mo on Workers + D1 is negligible marginal cost (Functions invocations price at pennies per million; our engine runs per checkout function call, not per order anyway). The free tier's real cost is support load — capped by keeping free-tier scope to the tier engine and self-serve templates. Revisit if support load >15% of capacity.
Design partners now. Public launch in January.
Timing: BFCM (Nov 2026) is a design-partner season, not a launch window. Public launch targets January 2027 — planning season — with Q1 sale events as the review-velocity engine.
Foundation & design partners
- Recruit 20–50 design partners from Devkind's merchant network; run their real BFCM-adjacent sales on DiscountJet; weekly feedback loop.
- Ship the pre-launch blockers: storefront strikethrough app blocks (no-code), Built-for-Shopify eligibility requirements, public status page, demo store with guided first campaign.
- Publish support SLA (<4h first response) and hold it from day one — it must be true before it's marketed.
- App Store listing assets: keyword strategy ("discount campaign", "sale scheduler", "bundle discount", "volume pricing"), screenshots of the campaign wizard, demo video.
- Validate stacking behavior against current API versions on partner stores (see §7 risks).
Public launch & review velocity
- January launch: App Store listing live; design partners convert to first 20–40 reviews (target ≥4.9★; category norm).
- Review engine: in-app prompt after a campaign's first successful publish — the moment of delight, timed to a working sale.
- Content: "Why your 25-discount budget runs out", "The sale that broke at checkout" (anonymized failure patterns), BFCM 2027 prep series starting Sept.
- Community presence: Shopify forums, r/shopify, community threads where stacking complaints appear — answer problems, don't pitch.
- Free tier as acquisition: 50 orders/mo renewing, no badge — direct comparison content vs lifetime-capped competitors.
Scale & moat
- Discount-safety suite: storefront price verification, campaign health monitoring, one-click kill-switch + revert. Nobody sells discount safety; it's the strongest brand wedge in the category's 1-star data.
- POS + headless (Hydrogen) parity on every paid plan — undercuts BOGOS's $109.99 Plus gating.
- Margin analytics: discount cost vs incremental revenue per campaign — the "without sacrificing margins" story Kite tells but doesn't ship.
- B2B/customer-tag segmentation (the DiscountRay whitespace with real UX behind it).
- Migration/import tooling — lowers switching cost from every incumbent (an explicit AIOD complaint).
- Target: 120+ reviews, 4–6% free→paid, <4% churn, 300+ published campaigns/week.
6.1Channel priorities
| Channel | Phase | Why | First metric |
|---|---|---|---|
| App Store listing SEO | 0–1 | Category demand is search-driven; "discount" keywords are proven volume | listing impressions → installs |
| Design-partner referrals | 0–1 | Cold-start reviews + testimonials; Devkind network | partners → published campaigns |
| Content / SEO | 1–2 | Failure-pattern content matches how merchants search when hurt | organic signups |
| Community (forums, Reddit) | 1 | Stacking complaints appear weekly; helpful answers convert | thread → install referrals |
| Shopify partner/co-marketing | 2 | Build Award trajectory; agency channel for sale-operations positioning | partner-sourced installs |
Risks, honestly.
7.1Risk register
| Risk | Severity | Mitigation |
|---|---|---|
| Cold-start reviews — 0 vs BOGOS's 4,570; merchants filter by review count | High | Design-partner → review funnel (§6); free tier converts trial-friction to install-friction; velocity target 10+/mo from month 1 |
| Stacking API defect — documented 2026-04 app-function same-line stacking failure | High | No unconditional stacking claims; validate on partner stores before any marketing mention; sell conflict-checking instead |
| Campaign concept education — "campaign" is a new unit; merchants search "discount app" | Med | Listing leads with discount/bundle keywords, campaigns as the differentiator; templates make first campaign <5 min; demo video shows the wizard |
| Incumbent price aggression — Discounty already runs $1 first-month promos | Med | Don't race to the bottom; compete on no-metering + safety + SLA; free tier is the permanent answer to promo wars |
| BFCM window missed — no launch listing until Jan 2027 | Med | Deliberate: BFCM = design-partner season; Jan = planning season with less listing noise |
| Platform dependency — Shopify API/version changes (2026-10 webhook API already live in repo) | Med | Functions-native = the blessed path; subscribe to dev-changelog; version pinning policy in CI |
| Support load scaling — SLA is a pillar; one bad week breaks the brand | Med | Self-serve templates, in-app guidance, status page; free-tier scope limits support surface; hire ahead of paid-base growth |
7.2KPI dashboard (weekly)
| Metric | Definition | Target | Alert if |
|---|---|---|---|
| Installs / wk | new App Store installs | growing w/ reviews | flat 3 wks |
| First-campaign time | install → first published campaign | <24h (median) | >48h |
| Campaigns / wk | published campaigns across fleet | 300+ by m12 | declining |
| Review velocity | new App Store reviews / mo | 10+ from m1 | <5 |
| Free → paid | conversions / active free | 4–6% | <2% |
| Churn (paid) | monthly logo churn | <4% | >6% |
| Support FRRT | first response, business hrs | <4h | >8h once |
| Publish failures | campaign publish refusals unresolved >24h | ~0 | any pattern |
Published campaigns per week. Installs lie, free signups lie, even reviews can be gamed. A published campaign is a merchant trusting us with live customer-facing prices. Everything in this plan exists to grow that number safely.