Olist 01: Orders Grew 8x! So Why Do I Call This Growth "Fragile"?
Order volume grew 8x in 20 months. Only 3.11% of customers ever came back. Here's what that contradiction actually reveals.
Series, Part 1 | A plain-language read on the Olist Brazilian e-commerce root-cause report (full notebook on Kaggle, link at the end)
Let’s start with a number any boss would be happy to see.
Olist is one of the largest public e-commerce datasets from Brazil, close to 100,000 real orders. From January 2017 to August 2018, monthly order volume climbed from under 800 to over 6,500, peaking at 7,544 orders during Black Friday 2017. Twenty months. Roughly 8x.
Put that line in any quarterly review and people would clap.
But the same dataset hides another number. Only 3.11% of buyers ever placed a second order. Out of every 20 customers, 19 never came back.
An 8x increase in orders on one hand. A 97% customer churn rate on the other. How do both of these hold at the same time? That’s the question this report set out to answer. This first post walks through the diagnosis in plain terms.
1. Running a checkup on the growth: three levers, and only one got pulled
Revenue growth basically comes from three levers. More customers, more frequent purchases, higher spend per order. Healthy growth usually pulls on more than one of these at once. So the first step was checking each lever, one at a time.
Average order value: flat for 20 straight months. Across the entire window, monthly AOV sat inside a narrow band of R$125 to R$152, and if anything it drifted slightly downward. The lever marked “get customers to spend more per order” was never touched.
Purchase frequency: not even a little. More than 75% of orders contained a single item. The median order was one item. No bundling, no upsell, no cart building. Customers showed up, bought one thing, and left.
Once the alternatives were ruled out, only one answer was left. The 8x growth came entirely from new customer acquisition.
Exhibit 2 in the report puts this on a single chart. Blue bars, monthly order volume, climbing steadily. A red line, AOV, sitting almost dead flat.
One small decision behind that chart is worth mentioning. The AOV line’s y-axis starts at zero. Push the floor up to R$120 and the same data can be made to look like it’s swinging wildly. Anchored at zero, flat reads as flat, which is the honest version. Charts don’t lie on their own. Axes do that for them, and holding the line on this was one of the small disciplines kept throughout the report.
2. The harder problem: this kind of growth ages fast
Looking only at the “8x” headline hides one more detail. Almost all of the climb happened in 2017.
By 2018, monthly orders were bouncing between 6,200 and 7,300, and never returned to that November 2017 peak of 7,544. This isn’t seasonal noise. It’s what growth built entirely on new customers looks like once it tops out. New customers keep flowing in, old ones keep disappearing, and the total depends entirely on how fast new ones arrive, a tap that eventually stops turning.
Put another way. The day new customer growth peaked was the day this platform’s revenue peaked too. Which is why that 3.11% repeat rate isn’t a metric waiting to be optimized. It’s a crack running through the entire business model.
3. Before trusting 3.11%, we tried our best to break it
A number this unflattering doesn’t get published until it survives an attack, and the attack has to come from whoever wrote the report first. Section 4 of the report exists to do exactly that: put every “maybe we just measured this wrong” theory on the table and test it.
Could the observation window just be too short for customers to have come back yet? Look only at the earliest, most fully observed 2017 cohort. Repeat rate lands around 4.3%, and even the loosest cut caps out near 5%. Slightly better, but still in the same range.
Could this be a category problem? Nobody buys a sofa or a fridge twice a year anyway. Run the same calculation across all 71 categories, grouping each customer by the category they entered on. Even categories with naturally higher repeat purchase potential, beauty and healthcare, land almost exactly where the heavy, one-time durables do. Right around 3%. Category mix doesn’t explain it.
Could 3.11% actually be too high? This got checked too. Among customers counted as “repeat buyers,” 31% placed their second order the same day as the first, and 38% within a week. That looks less like a customer coming back and more like one purchase split into two orders. Strip out same-week orders and the strict repeat rate drops to 1.94%. Count only second orders placed after the first one was actually delivered, and it’s 1.85%.
So the final range looks like this: strict measurement, 1.85% to 1.94%. Loose measurement, 4% to 5%. And 3.11% sits somewhere in between. However you slice it, this lands in the low single digits.
The part of the report that took the most time wasn’t landing on 3.11%. It was making sure that number wasn’t a measurement mistake. One more thing worth flagging here: in the middle of that verification process, a different number nearly sent the whole causal analysis in the wrong direction. That’s next week’s story.
4. So what: what we saw, what it means, what to do about it
What we saw. The growth is real, the 8x is real. But it runs entirely on new customer acquisition, 19 out of every 20 customers never return, and new customer growth already peaked in 2018.
What it means for the business. This isn’t a case of one operational piece underperforming. It’s a gap built into the business model itself. The platform hasn’t given customers a reason to come back. The data shows customers remember the seller and the product, not Olist as a platform.
What to do first. If only one thing can get done, the report’s answer is clear. There’s a group of “at risk” customers, 14.7% of the customer base, holding 28.8% of total GMV. The most valuable customers have already started leaving, and the list of who they are already sits in the database. Winning them back is the single highest-leverage move available (Section 6 of the report lays out the full break-even math).
The full report, including all code, charts, and cited sources, is published on Kaggle:[Kaggle]
Next up: “The Number That Almost Fooled Me.” The most nerve-wracking rework in this entire project. A model that looked completely reasonable, built on a timeline that turned out to be running backward.
Photo by Isaac Smith on Unsplash