DEV Community

Marcus
Marcus

Posted on • Edited on

8 Months Building in Public: What I Learned About E-Commerce AI

8 Months Building in Public: What I Learned About E-Commerce AI

I almost quit at month 4.

The model wasn't converging. My store's numbers weren't improving. And I was starting to wonder if I'd wasted half a year on a hypothesis that was simply wrong.

This is that story.


Why I Started

My Shopify store was doing $80K/month.

Klaviyo was taking $600/month.
Returning $6,700 in recovered revenue.
11% recovery rate.

I ran the math. The tools available recovered 8-12% of abandoned carts. The theoretical maximum, based on how many people actually intended to buy, was closer to 40%.

There was a 30-point gap between what existed and what was possible.

I wanted to close that gap.


Month 1-2: The Wrong Hypothesis

My first hypothesis was wrong.

I thought better email copy was the answer. More personalization. Better subject lines. Smarter segmentation.

I spent two months optimizing copy.

Recovery went from 11% to 13%.

Not 40%. 13%.

The copy wasn't the problem.


Month 3: The Timing Insight

I almost missed it.

I was reviewing recovery data when I noticed something anomalous: a cluster of customers had returned to complete their purchase within 8 minutes of abandonment — before any email was sent.

They came back on their own.

Why those customers and not others?

I pulled their session data. Short time on site. High purchase intent signals. Abandoned specifically at the payment page.

They hadn't changed their mind. They'd been interrupted.

The insight: These customers would have converted with a push notification or text within 5 minutes. Instead, I sent them an email 30 minutes later — after they'd moved on.

I was sending the right message to the right people at the wrong time.


Month 4: Almost Quitting

Building a behavioral prediction model is harder than I expected.

Month 4 was my low point. The model was predicting abandonment correctly about 60% of the time. That's not enough to act on. Random guessing is 50%.

My girlfriend asked when I was going to "get a real project."

I almost agreed with her.

What kept me going: the customers who did return within 5 minutes. I knew the signal was there. I just couldn't extract it reliably yet.


Month 5-6: It Started Working

Something clicked in month 5.

Prediction accuracy: 60% → 74% → 83% → 91%.

Recovery rate: 13% → 18% → 24% → 31%.

Month 6 ended with my store at 34% recovery rate.

My Klaviyo subscription was cancelled.

What changed? I stopped trying to predict if someone would abandon and started predicting why they would abandon. Different causes need different interventions.


Month 7: The First External Customer

A friend with a similar Shopify store asked what I was using for recovery.

"Something I built."

"Can I try it?"

Two weeks later, his recovery rate went from 9% to 28%.

That's when I knew this could be a product.


Month 8: Launch Preparation

Today.

ZeroCart AI is opening to the first 500 stores.

34% average recovery rate across beta stores.
$35/month. 500 founder spots.


The Lessons

1. The problem is usually not what you think it is.

I spent 2 months on copy. The real problem was timing. Most optimization happens in the wrong place.

Before you optimize, make sure you're optimizing the right thing.

2. Anomalies in your data are treasure.

The 8-minute returners were an anomaly. Following that anomaly led to the whole insight. Look for what doesn't fit.

Your best opportunities hide in the data you're not explaining.

3. Timing is more valuable than content.

The right message at the wrong time is noise. The right message at the right time is revenue.

I could have had perfect copy. Without the timing insight, it wouldn't have mattered.

4. 6 months of "not working" can precede sudden breakthrough.

Prediction accuracy was stuck at 60% for weeks. Then it jumped. Non-linear progress feels like failure until it doesn't.

If you're working on the right problem, persistence compounds.

5. Build what you needed.

I wasn't building for a market. I was solving my own problem. That focus on the real pain made everything sharper.

Founders who use their own product build better products.



The Hardest Technical Problem

People ask what the model actually does. I'll explain it without the proprietary details.

The core challenge: different abandonment events have different causes, and different causes need different responses. A customer who abandoned because they got a phone call needs a different message than one who abandoned because shipping costs exceeded their threshold.

The temptation is to detect abandonment and react uniformly. That's what every email tool does. What I needed was to classify the cause, not just detect the event.

The behavioral data available in a browser is richer than most people realize:

  • Cursor movement: direction, velocity, hesitation patterns near navigation elements
  • Scroll behavior: depth, reversal points, reading vs. scanning patterns
  • Form interaction: which fields were completed, which were abandoned mid-entry
  • Time allocation: how long on each page section, where attention concentrated
  • Session context: return visitor status, time of day, cart age

None of these signals is independently predictive. Combined, with the right weighting, they reveal a pattern — and that pattern points toward a cause.

The insight that changed everything: The highest-signal moments happen before the back button is pressed, not after. The 30-second window between "this customer is reconsidering" and "this customer has left" is where the real leverage sits.

Post-abandonment email works on the customers who were already planning to return. Pre-abandonment intervention works on the customers who needed one more reason to stay.

That distinction is worth 30 points of recovery rate.


What Month 1 Looks Like for New Stores

The first month after installing ZeroCart AI is calibration. The system is learning your store's specific traffic patterns — your abandonment profile differs from every other store's.

The most common mistake in month 1: over-interpreting early data. Recovery rate in week 1 looks different from week 4 because intervention targeting improves as behavioral patterns accumulate.

What to track:

  • Total abandoned cart sessions detected
  • Intervention trigger rate (what percentage of abandoners received an on-site message)
  • Of those who saw an intervention: what percentage completed purchase
  • Recovery rate trend, week-over-week

By month 2, you have a stable baseline. By month 3, you have enough data to run the ROI calculation — and to decide whether the tool is replacing or supplementing your existing recovery stack.

Most merchants who run both Klaviyo and ZeroCart AI for the first 30 days cancel Klaviyo by day 45. Not because Klaviyo is bad, but because the recovery rate differential makes the math obvious.


The Numbers That Matter

Metric Before After
Monthly recovery rate 11% 34%
Monthly recovered revenue $6,700 $27,200
Monthly tool cost $600 $35
ROI 11x 777x

$20,500/month more in my pocket. From the same traffic.


What's Next

ZeroCart AI is opening to 500 founding members.

The pricing will never be this low again. This is early-access pricing that will increase as we scale.

If you've been fighting the same 8-12% recovery rate with expensive tools, this is what I built instead.


Frequently Asked Questions

What makes ZeroCart AI different from Klaviyo?

Klaviyo sends emails based on rules (wait 30 minutes, then send). ZeroCart AI predicts the optimal moment for each individual customer based on their behavior patterns. The difference is 8-12% recovery vs 30-38% recovery.

How long did it take to build?

8 months from first line of code to launch. 2 months were spent on the wrong hypothesis. 2 months were spent almost quitting. 4 months of actual progress.

Why are you sharing this publicly?

Two reasons. First, I learned from other founders' stories — this is paying it forward. Second, I believe in building in public. The transparency builds trust.

What would you do differently?

I would have started with timing optimization instead of copy optimization. But then again, I needed to fail at copy optimization to understand why timing mattered more.

Can I talk to you about this?

Yes. DM me on Twitter @JulienZeroCart or reply in the comments. Happy to share specifics on the tech or GTM side.


For Fellow Builders

If you're building something and it's not working yet, here's what I'd tell myself at month 4:

The data has answers. You just haven't found the right question yet.

Look for anomalies. Question your assumptions. Keep going.

The breakthrough happens after you feel like quitting.


Join the Journey

500 founder spots. $35/month. First access to the product that took 8 months to build.

Claim Your Founder Spot →


Julien — Founder, ZeroCart AI
Building in public since March 2026


Related:

Top comments (0)