OneCart is South Africa's on-demand "instant mall" delivery service — you order from Makro, Pick n Pay, Game, Dis-Chem and more in one basket, and a personal shopper fills and delivers it. The interesting thing for an operator isn't the app. It's how OneCart makes money without owning a single unit of inventory, and what that discipline teaches a store that does carry cost of goods.
This is a decision-stage teardown. If you're already running real orders and real ad spend, you've made the same three choices OneCart made — you just may not have priced them as deliberately. Let's decode the model, then convert it into numbers you can act on this week.
OneCart's pricing strategy, decoded
OneCart's public materials describe an aggregator platform that delivers goods at in-store prices. It doesn't mark up the milk. Instead it charges separately for the service of getting the milk to you — which is the whole lesson. Here's how the layers stack.
Layer 1: the flat delivery fee (fixed cost, fixed charge)
When you shop from one mall, OneCart charges a flat delivery fee per mall, and shopping across two or more malls is capped at a set maximum, according to its help centre. The single-mall fee is R35 and the multi-mall cap is R70.
The logic: delivery is a fixed cost per trip, so it's recovered with a fixed fee. It doesn't scale with basket size, because the driver's cost doesn't scale with basket size.
Layer 2: the concierge fee (variable cost, variable charge)
On top of delivery, OneCart adds a concierge (service) fee to pay the personal shopper. Early reporting put that fee at between 5% and 7% of the order value, used alongside a retailer rebate to cover the shopper's time.
Notice the design. The shopper's effort roughly scales with basket size, so this fee is a percentage — a variable charge for a variable cost. OneCart matched the fee shape to the cost shape, which is exactly what most store owners get wrong when they bury a flat shipping cost inside a percentage markup, or vice versa.
Layer 3: the merchant commission (and no subscription)
The third stream is a commission or rebate from the retailers themselves, plus in-app advertising, per breakdowns of OneCart's revenue model. Critically, the same source notes OneCart runs without a paid membership tier — unlike Instacart-style competitors that waive delivery for subscribers.
That's a positioning decision: OneCart earns on every order rather than betting on recurring membership. For a POD store, the parallel is choosing between a one-off transactional margin and a subscription/repeat model — and it changes everything downstream about how hard your first-order price has to work.
What OneCart's model teaches an operating store
You're not delivering groceries. But you make the identical structural choices every time you price a product. Here's the translation, with real operator numbers.
Lesson 1: match the charge to the cost — split fixed from variable
Say you run a POD apparel store doing 340 orders a month at a $34.99 average price. Your tee costs $12.00 from the supplier and shipping runs $4.75 per order. Those are two different animals: $12.00 scales with units, $4.75 is a fixed per-order toll — just like OneCart's delivery fee.
The clean way to recover a fixed per-order cost is to bake it into the price and advertise free shipping, or charge it as a flat line — never as a percentage. OneCart proves the point at scale: it never expresses delivery as a percentage of your basket. Our product pricing guide walks the full cost stack, and the same fixed-versus-variable split drives Mr D's delivery pricing strategy in South Africa, which is worth reading alongside this one.
Lesson 2: charge for value, not for the item
OneCart's biggest tell is that it sells at in-store prices and makes its money on the concierge and delivery layers. Your equivalent of the "concierge fee" is your contribution margin — the gap between price and true landed cost, before ads.
Here's that gap at three candidate prices for the same tee. Payment processing uses Shopify Payments' Basic-plan online rate of 2.9% plus 30¢ per transaction; every other line is derived arithmetic from the costs above, with a $10 blended ad cost per order.
| Line | @ $29.99 | @ $34.99 | @ $39.99 |
|---|---|---|---|
| Revenue | $29.99 | $34.99 | $39.99 |
| − Supplier product cost | −$12.00 | −$12.00 | −$12.00 |
| − Baked-in shipping | −$4.75 | −$4.75 | −$4.75 |
| − Processing (2.9% + 30¢) | −$1.17 | −$1.31 | −$1.46 |
| = Contribution before ads (CM2) | $12.07 | $16.93 | $21.78 |
| − Ad allocation | −$10.00 | −$10.00 | −$10.00 |
| = Profit after ads per order | $2.07 | $6.93 | $11.78 |
Moving from $29.99 to $39.99 is a 33% price change but a 469% swing in per-order profit ($2.07 → $11.78 = 5.69×). Almost every added dollar of price is pure contribution — only the ~3¢ processing slice scales with it. Price is the single highest-leverage number in your stack, and it's the one OneCart guards most carefully.
Lesson 3: your price sets your break-even ROAS
Break-even ROAS equals 1 ÷ (contribution margin ratio). At $29.99 your CM2 ratio is 12.07 ÷ 29.99 = 40.2%, so you must clear a 2.49 ROAS just to break even on ads. At $39.99 the ratio is 54.5%, and break-even ROAS drops to 1.84.
That means a price change re-grades every ad campaign overnight without you touching the ad account. A raise you'd been afraid of can turn losing campaigns profitable — which is precisely why repricing is a lever, not a chore. When you're ready to operationalize it, the workflow lives in our guide to repricing tools for a running store.
Lesson 4: transparency is a strategy, not a weakness
OneCart doesn't hide markup inside product prices — it names its fees. Buyers pay in-store prices plus a visible service charge, and that clarity is part of the trust. The counter-move — quietly padding unit prices — tends to erode reference-price trust, the same tension explored in how Carvana prices its cars.
How to apply OneCart's logic to your store
Start by separating your costs the way OneCart does: list every fixed per-order cost (shipping, packaging) and every variable one (product, processing). Recover fixed costs with a flat or baked-in charge, and let your markup do the variable work.
Then treat price as your primary profit lever, not a number you set once and forget. Recompute your break-even ROAS at two or three candidate prices, and test upward — a higher price usually converts slightly worse and still wins on revenue per visitor.
This is where an AI employee earns its keep. PodVector AI's Victor connects to your Shopify store, Meta Ads, Google Ads, and your Printify, Printful, or Gelato supplier, and computes your true per-order profit — the CM2 and after-ad lines above — from live data rather than a spreadsheet you keep meaning to update. Victor isn't a dashboard; it's an AI employee that surfaces the pricing math, drafts the changes, and executes only what you approve, then drops the reports into your Google Drive. Put Victor on your store and let it run the numbers OneCart runs on every order.
For a broader menu of how growth-focused stores structure descriptions and price together, the teardown of Renovatly's growth product descriptions and pricing pairs well with this one.
FAQs
What is OneCart's pricing strategy in one sentence?
OneCart sells goods at in-store prices and makes money on three separate layers — a flat delivery fee, a variable concierge fee, and a merchant commission — with no subscription tier. It matches the shape of each charge to the shape of the underlying cost: fixed fee for a fixed cost, percentage fee for a variable one.
How much does OneCart charge in delivery and service fees?
OneCart charges a flat R35 delivery fee per mall, capped at R70 across multiple malls, per its help centre. On top of that, early reporting described a concierge fee of 5% to 7% of order value to pay the personal shopper. Verify current rates before quoting them — on-demand fees change often.
Why does OneCart charge delivery as a flat fee but the concierge fee as a percentage?
Because the costs behave differently. A delivery trip costs roughly the same regardless of basket size, so it's recovered with a fixed fee, while a personal shopper's effort scales with the number of items, so that's charged as a percentage. The lesson for merchants: recover fixed per-order costs (shipping, packaging) with flat charges and let your markup carry the variable costs.
How does this apply to a print-on-demand store that doesn't do delivery?
Your "concierge fee" is your contribution margin — the gap between price and true landed cost. In the worked example above, raising a tee from $29.99 to $39.99 lifts per-order profit from $2.07 to $11.78, because added price flows almost entirely to margin. Treat price as your top lever exactly the way OneCart treats its fee layers.
Does OneCart mark up the products themselves?
No — it advertises delivery at in-store prices and earns on the service layers and retailer commissions instead, according to its revenue-model breakdown. That transparency is a deliberate trust play; hiding markup inside unit prices tends to work against you once buyers compare.
How can PodVector AI help me price like this?
Victor, PodVector AI's AI employee, integrates with Shopify, Meta Ads, Google Ads, and your POD supplier to compute true per-order profit and break-even ROAS from live data, then drafts pricing changes that you approve before anything executes. It turns the OneCart-style cost-splitting exercise into a standing process instead of a one-time spreadsheet.