The verdict in three sentences
Subscriptions turn an online grocery from a business of unpredictable transactions into one of recurring revenue: a basket subscriber is worth 4-6x a one-off buyer over a year. The technical key in 2026 is recurring mobile money (M-Pesa standing order or automated billing) plus a controlled cold chain. Done well, the model pushes amortised acquisition cost below KSh 250 per active customer.
LTV: subscriber vs one-off buyer
Comparison over 12 months, average basket KSh 1,800, gross margin 25%.
| Metric | One-off buyer | Weekly subscriber |
|---|---|---|
| Orders / year | 3 | 40 |
| Annual revenue / customer | KSh 5,400 | KSh 72,000 |
| Gross margin / customer | KSh 1,350 | KSh 18,000 |
| 6-month retention | 20% | 70% |
| Amortised acquisition cost | KSh 800 | KSh 200 |
| Net LTV (margin − CAC) | KSh 550 | ~KSh 17,800 |
Even with realistic churn, a book of 200 subscribers gives predictable revenue that lets you pre-buy stock and negotiate with farmers.
Recurring payment and cold chain
Two structural costs to model from day one.
| Line | Option / 2026 cost | Note |
|---|---|---|
| M-Pesa recurring / standing order | 1-1.5% per charge | Standing order or recurring pay link |
| WhatsApp payment reminder | ~KSh 0 | Reduces failed charges |
| Insulated packaging | KSh 75-180 / basket | Reusable with deposit |
| Cold room (rental) | KSh 90,000-240,000 / month | Shareable at first |
| Refrigerated delivery (cooler bike) | +KSh 75 / basket | vs dry delivery |
| Fresh-produce spoilage | 3-8% of revenue | Target < 5% with good rotation |
Spoilage is your biggest risk: above 8% loss, the 25% margin evaporates. Ordering against confirmed subscriptions (make-to-order) limits waste.
Mini case study
Wanjiru launches an organic online grocery in Nairobi. She targets 150 subscribers at a weekly KSh 1,800 basket. Monthly revenue: 150 × 4 × KSh 1,800 = KSh 1,080,000. Gross margin 25% = KSh 270,000/month.
Variable costs: recurring payment 1.2% (KSh 12,960), refrigerated delivery KSh 75 × 600 baskets (KSh 45,000), spoilage 5% (KSh 54,000), packaging KSh 105 × 600 (KSh 63,000). Total variable ≈ KSh 174,960. That leaves ~KSh 95,040 to cover cold room, salaries and acquisition. Cutting spoilage from 5% to 3% (make-to-order) recovers ~KSh 21,600/month.
Need a professional website?
Kolonell builds websites that attract clients, optimized for the Sénégalese market. Free quote in 2 minutes.
FAQ
How do I handle recurring payment with M-Pesa?
Two approaches in 2026: an M-Pesa standing order where available, or an automatic weekly pay link sent by WhatsApp with a reminder. The second avoids failed charges and keeps the customer in control.
What churn should I expect on a grocery subscription?
A monthly churn of 5-10% is realistic in year one. Below 70% retention at 6 months your LTV collapses: focus on delivery reliability and fresh-produce quality.
Do I need a cold room from the start?
No: share or rent (KSh 90,000-240,000/month) up to ~150 subscribers. Move to a dedicated cold room when volume exceeds rented capacity and unit cost drops.
How do I limit fresh-produce spoilage?
Buy and prepare against subscriptions confirmed on day T−1. This cuts spoilage from 8% to 3-5% of revenue, saving hundreds of thousands of shillings a month at 150 subscribers.
What average basket should I target to be profitable?
With 25% margin, target a basket ≥ KSh 1,500 to absorb delivery and packaging. Below that, the fixed logistics cost per basket (KSh 180-255) eats too much margin.
Let's talk about your project. We build your online grocery with subscriptions, recurring mobile money and route management. WhatsApp +221 77 596 93 33.
Mohamed Bah
Fondateur, Kolonell
Passionate about digital and entrepreneurship in Africa, Mohamed has been helping Sénégalese businesses with their digital transformation since 2020. Founder of Kolonell, he believes every SME deserves a professional and accessible online présence.

