Kids' English
A children's English book that nobody was buying. Eight months later it had done 1.66 crore taka, about $134,777, returning six times every taka spent on ads. I did the strategy, the video, the design, the storefront and the courier coordination myself.
- Role
- Everything from offer to fulfilment
- Client
- Nirjhar Education, my employer
- Market
- Bangladesh, cash on delivery
- Period
- 17 January to 5 September 2026
The problem
Nirjhar Education teaches English to Bangladeshi learners. The founder had written Kids' English, aimed at parents who want their child speaking English at home rather than reciting grammar rules.
The book existed. The audience existed. Nothing connected them. There was no storefront, no creative, no ad account with any history, and no budget for an agency. Bangladesh also has a hard constraint that shapes everything downstream: most people will not pay online. Cash on delivery is not a nice-to-have, it is the only way the sale happens.
So the brief I gave myself was narrow. Make one product sellable to parents on Facebook, at a price they will pay a courier in cash, profitably, starting from zero.

The offer
The book lists at ৳750. I sold it at ৳590 with a visible countdown, plus ৳70 delivery inside Dhaka and ৳120 elsewhere. The discount was not decoration. At cash on delivery the customer commits nothing up front, so the offer has to be strong enough to survive the gap between clicking and the courier knocking.
The promise did the heavy lifting: after this book, your child speaks English from waking up to going to sleep. Parents do not buy a curriculum. They buy the picture of their child talking.
- ৳590 against a ৳750 list price, with a live countdown
- Cash on delivery as the default, bKash as the alternative
- One product, one page, one decision
- Order form above the fold on mobile: phone number and address, nothing else

The funnel. Four steps, and I owned all four.
That last step is the one marketers usually never touch. In a cash-on-delivery market it is where margin quietly dies, so I stayed on it.
Creative. 35 campaigns, because one creative never lasts.
The account ran 35 campaigns over eight months. That number is the whole method. A winning video in this market stays winning for roughly two to three weeks before frequency climbs, CPM follows, and the return slides. So the job is never “find the ad”, it is “keep a bench of ads warm”.
The best campaign of the run returned 7.9x at ৳85 per purchase across 2,358 orders. The worst ideas were killed inside a week. Both facts matter equally.
What I varied, in rough order of how much it moved the number
The hook
First three seconds, rewritten constantly. Parent speaking to camera, child speaking English, the book in hand, a problem stated flatly.
The page it posted from
Running the same creative from different brand pages measurably changed delivery and cost.
The format
Talking head, screen demo, rooftop shoot, founder at his desk, straight product promo.
The re-cut
Re-cutting a proven video into a new edit order to reset fatigue without shooting again.
The numbers. Eight months, month by month.
Pulled from the Meta ad account NiRJHAR EDUCATION on 5 September 2026. Revenue is Meta-attributed purchase value. Amounts in Bangladeshi taka. Every month returned at least 4.7 times what it cost; the return for each month is printed under its label.
Source: Meta Ads, account 1101830128650829. January covers 17 to 31 January. September covers 1 to 5 September.
Cumulative revenue
The first crore of taka landed during May, about four and a half months after launch. The run finished at 1.66 crore.
| Month | Ad spend | Revenue | ROAS | Purchases | Reach |
|---|---|---|---|---|---|
| Jan 2026 | 134,402 | 1,166,290 | 8.68x | 1,950 | 759,198 |
| Feb 2026 | 402,381 | 2,715,740 | 6.75x | 3,982 | 2,417,830 |
| Mar 2026 | 432,864 | 2,986,059 | 6.90x | 4,385 | 2,800,037 |
| Apr 2026 | 287,133 | 1,790,780 | 6.24x | 2,630 | 1,822,098 |
| May 2026 | 493,623 | 2,628,574 | 5.33x | 3,868 | 1,920,673 |
| Jun 2026 | 380,426 | 2,128,670 | 5.60x | 3,169 | 1,338,263 |
| Jul 2026 | 333,525 | 1,570,250 | 4.71x | 2,334 | 1,352,571 |
| Aug 2026 | 269,487 | 1,414,070 | 5.25x | 2,109 | 948,423 |
| Sep 2026 | 27,594 | 163,070 | 5.91x | 243 | 217,090 |
| Total | 2,761,424 | 16,563,504 | 6.00x | 24,670 | 5,791,677 |
- Reach
- 5,791,677
- Impressions
- 54,068,568 at ৳51 CPM
- Link clicks
- 671,301, 2.76% CTR
- Average order
- ৳671, about $5.46
What I would do differently
The return drifted from 8.7x in the first two weeks to around 5x by mid-year. Some of that is unavoidable: the cheapest, most intent-heavy audience gets used up first. Not all of it.
I was slow to build a proper retargeting layer, so I kept paying prospecting prices for people who had already seen the page. I under-invested in the post-purchase side. With 24,670 buyers, a second product or a review-collection flow would have compounded, and there was not one ready.
And I never ran a clean holdout test. I know what Meta attributed. I do not know precisely what it caused. In a bigger team with a measurement function, that is the first thing I would want fixed.