Stores that grew on Framique.
Real merchants, real numbers, real receipts. If we can't show you where a figure came from, it doesn't go on this page.
How we build this page
The proof standard
Three commitments, held before a single story is written — so no reader has to take our word for what's checkable.
Written consent, every time
We email the merchant a consent form naming the exact figures, quote and photo we intend to publish. We do not publish until we get an explicit yes back, dated and filed.
Breaks it: Publishing from a call transcript, or a metric the merchant didn't sign off on individually.
Dashboard-sourced numbers only
Every metric on a story card maps to a query an internal reviewer ran against that merchant's own analytics — order count, return rate, time-to-publish, GMV band. The source table and date range are named in a footnote.
Breaks it: Self-reported numbers from a WhatsApp message, or numbers that can't be re-run.
No fabricated people or photos
Every founder photo is either the merchant's own (with consent) or the card ships with no photo — never a stock image standing in for a real person.
Breaks it: Stock photography with a fabricated name, or an AI-generated "founder" headshot.
Case studies
Read the stories
Every card below is a published article, sourced live — nothing here is written for this page alone.
No stories have cleared the checklist yet.
We publish a story only once it has written consent, independently re-queried numbers and a verbatim quote — see the proof standard above. Check back, or start free today and you could be one of the first.
Verifiable, not decorative
Proof of platform
The figures below are read live from the platform's own database at request time — the same rule as everywhere else on this page: a number ships only if it's queryable, or it doesn't ship at all.
16
Payment rails settled end to end
For live status, incident history and a trailing uptime log, see the status page — it is never hardcoded here, because a static uptime claim on a marketing page is exactly the kind of number this page refuses to print. View platform status
Recognise your own shop
Five segment archetypes, matched to the five official themes
Operating profiles, not case studies — the range of numbers a healthy shop in that segment typically shows, drawn from category norms rather than attributed to a named merchant.
Fashion boutique
BDT 800 – BDT 3,500 average order value40–300 SKUs, frequent turnover (new drops every 1–3 weeks)55–75% cash on delivery — trust still being built with new buyers
- Typical failure modes: Size/fit returns eating margin · Stockouts on the SKU driving the ad click · Catalogue photos inconsistent across drops
- Metrics that matter: Return rate by size/variant · Ad-click-to-checkout conversion · Restock lead time
- 30-day plan: audit return reasons by variant, add a size guide to every product template, re-shoot the ten highest-return SKUs, set low-stock alerts on the SKUs driving 80% of traffic, then compare return rate and conversion against the week-1 baseline.
প্রোডাক্ট টাইটেল ও সাইজ লেবেলে বাংলা সংস্করণ থাকা উচিত (M/L/XL এর পাশে মিডিয়াম/লার্জ/এক্সট্রা লার্জ) — ফিট নিয়ে অনিশ্চয়তাই যেখানে বাংলা-প্রথম ক্রেতারা চেকআউট না করে হোয়াটসঅ্যাপে প্রশ্ন করে বসেন।
Neighbourhood shop (mudir dokan)
BDT 200 – BDT 900 average order value100–600 SKUs, low turnover, high repeat-purchase overlap80–95% cash on delivery — established local trust, cash habit
- Typical failure modes: Manual price updates lag supplier price changes · No visibility into which SKUs are profitable after courier cost · Repeat customers still calling in orders instead of using the storefront
- Metrics that matter: Repeat-purchase rate · Net margin after courier cost per order · Phone-order share vs storefront-order share
- 30-day plan: flag SKUs where shelf price hasn't moved in 60+ days, compute per-order courier cost against AOV for the bottom 20% margin SKUs, send existing phone-order customers a pre-filled storefront link, then compare phone-order share against the week-1 baseline.
এই সেগমেন্ট সবচেয়ে বেশি বাংলা-প্রথম হতে পারে — প্রোডাক্টের নাম, ক্যাটাগরি ও স্টোরফ্রন্ট নিজেই ডিফল্টে বাংলা হওয়া উচিত, ইংরেজি টগল হিসেবে থাকুক, উল্টোটা নয়।
Single-product drop
BDT 500 – BDT 4,000, single price point or narrow variant set1–5 SKUs, campaign-driven, time-boxed40–60% cash on delivery — often ad-driven, colder traffic
- Typical failure modes: Checkout drop-off from missing trust signals on a brand-new domain · Ad spend outpacing fulfilment capacity, causing delivery delays · No plan for traffic after the drop sells out
- Metrics that matter: Landing-page-to-checkout conversion · Refund/return rate in the first 14 days · Sell-out-to-restock gap
- 30-day plan: instrument the page to see where visitors drop before checkout, cap ad spend to confirmed fulfilment capacity, pre-build a "sold out — notify me" state before the drop, then measure conversion and refund rate against the week-1 baseline.
কাউন্টডাউন ও স্টক-স্বল্পতার কপি অবশ্যই বাস্তব হতে হবে (আসল স্টক সংখ্যা, আসল সময়) — একটি বাড়িয়ে বলা "৩টি বাকি" কাউন্টার এই সেগমেন্টের ক্রেতাদের চিরতরে হারানোর সবচেয়ে দ্রুততম উপায়।
Grocery / daily essentials
BDT 600 – BDT 2,200, high basket-item count500–3,000+ SKUs, high restock frequency, perishables mixed with shelf-stable60–80% cash on delivery
- Typical failure modes: No clear customer-facing rule for out-of-stock substitutions · Delivery-window mismatches for perishables · Search/category structure too shallow for basket sizes this large
- Metrics that matter: Basket completion rate (started vs paid) · Substitution acceptance rate · Delivery-window adherence
- 30-day plan: write one substitution policy and apply it consistently, separate perishable and non-perishable delivery windows, rebuild category depth around the top ten basket combinations, then compare basket completion rate against the week-1 baseline.
সার্চ, ফিল্টার ও কার্ট লাইন আইটেম জুড়ে একক ও পরিমাণের ভাষা (কেজি, লিটার, পিস, প্যাকেট) সামঞ্জস্যপূর্ণ হতে হবে — চেকআউটে ইউনিট-অসঙ্গতির বিভ্রান্তিতে গ্রোসারি সবচেয়ে বেশি সংবেদনশীল।
Wholesale / B2B
BDT 15,000 – BDT 500,000+, highly variable by buyer tier50–1,000 SKUs, often with tiered/negotiated pricing per buyer5–20% cash on delivery — invoice/bank-transfer and credit terms dominate
- Typical failure modes: No self-serve reorder path; every repeat order still goes through a call · Price lists out of sync between quotes and what the storefront shows · No audit trail for who approved a large order internally
- Metrics that matter: Reorder rate without a sales call · Quote-to-order lead time · Price-list sync lag
- 30-day plan: check how many of your top ten repeat buyers' last three orders went through a call versus self-serve, fix the most-quoted SKU category's pricing sync first, add an internal-approval note field to the order flow, then measure reorder-without-a-call rate against the week-1 baseline.
B2B ক্রেতারা প্রায়ই আলোচনার মাঝে ভাষা পাল্টান (ফোনে বাংলা, পিও-তে ইংরেজি) — স্টোরফ্রন্ট থেকে তৈরি প্রোডাক্ট ও প্রাইসিং ডকুমেন্ট দুই ভাষাতেই সাপোর্ট করা উচিত, ক্রেতাকে জিজ্ঞেস না করেই।
Compute it yourself
Metric definitions
Every metric used anywhere on this page or in any published story is defined here, so a reader can compute the same number for their own shop and check our math.
| Metric definitions | Formula | Dashboard source | Common mistake |
|---|---|---|---|
| AOV (average order value) | Total order value ÷ number of orders, for a stated period | Analytics → Orders → Summary | Including cancelled/refunded orders inflates or deflates this — state whether they're excluded |
| COD share | COD orders ÷ total orders, for a stated period | Analytics → Payments → Method breakdown | Comparing COD share across periods with different promo mixes |
| Return rate | Returned units ÷ shipped units, for a stated period | Analytics → Fulfilment → Returns | Measuring by order count instead of unit count hides partial returns |
| Repeat-purchase rate | Customers with 2+ orders ÷ total customers, for a stated cohort window | Analytics → Customers → Cohorts | An unbounded "all time" window flatters any shop the longer it's been open |
| Basket completion rate | Orders paid ÷ carts started, for a stated period | Analytics → Funnels → Checkout | Excluding abandoned carts under a minimum value quietly inflates the rate |
| Time-to-publish | Days from signup to first live, purchasable product | Analytics → Store → Setup timeline | Counting from "account created" instead of "serious onboarding started" |
| Net margin after courier cost | (Order value − COGS − courier cost) ÷ order value | Analytics → Finance → Order profitability | Using a flat estimated courier cost instead of the actual charged rate per zone |
| Substitution acceptance rate | Substituted-item orders accepted ÷ substituted-item orders offered | Analytics → Fulfilment → Substitutions | Counting silent non-response as acceptance rather than its own category |
| Quote-to-order lead time | Days from quote sent to order confirmed, median not mean | Analytics → B2B → Quotes | Using a mean skews heavily on one slow enterprise negotiation |
| Price-list sync lag | Days between a price change saved and it reflecting on every buyer-facing surface | Analytics → B2B → Pricing audit log | Treating "saved" and "published" as the same event |
For merchants
How to write your own case study
A short, honest framework any merchant can use for their own marketing, investor updates, or a Framique submission.
- 1.
Pick one before/after pair, not five.
A case study with one clear mechanism ("we added a size guide, returns dropped") is more credible and more useful than a list of everything that improved, because a reader can't tell which change caused what in a list of five.
- 2.
State the period and the baseline.
"Return rate fell" means nothing without "from 18% to 11%, comparing the 30 days before the change to the 30 days after." Assume any period-free case study is cherry-picked.
- 3.
Separate correlation from mechanism.
If return rate fell in the same month you also ran a sale, you have two changes and one result — either isolate the change (A/B it), or say plainly that two things changed at once and which you believe mattered more, and why.
- 4.
Quote yourself accurately.
Write down what you actually think, not what sounds best. A specific, slightly awkward sentence reads as more real than a polished one.
- 5.
Decide what you won't publish.
Every honest case study has a number that looks bad next to the good ones. Deciding in advance what stays private is not dishonesty — publishing a number you don't understand yet, to look impressive, is.
A minimal self-audit checklist before you publish anything
- Can I point to the exact dashboard screen this number came from?
- Have I named the time period?
- Would this number survive someone else re-running the query?
- Is the "before" state something that was actually true, not a strawman?
- If I removed the adjectives from this paragraph, would the facts still make the point?
Want your store in this grid?
- You've reviewed the exact numbers we intend to publish, sourced from your own dashboard
- You've reviewed the exact quote we intend to publish, and confirmed it's your words
- You've told us about any number or detail you'd rather we didn't include
- You've approved the specific photo we intend to use, if any — or approved that we publish with no photo
- You know who at your business has final sign-off, and they've seen the draft
- You know you can ask us to take the story down later, and how to reach us to do it
Frequently asked questions
How do you decide which stories to publish?
Do merchants get paid or discounted for appearing here?
What if a number changes after the story is published?
Can a merchant ask us to take a story down?
Why don't you show ratings or star reviews on this page?
Are the segment archetypes real merchants?
How do I know a metric on this page isn't cherry-picked?
What counts as "verified" internally?
Can I use the case-study framework for my own business, unrelated to Framique?
What happens if a merchant's numbers genuinely aren't impressive?
Want your store in this grid?
Start free, and if it works we'll ask you — never before.