🚩 Revenue Without Clarity
KraftKart had strong product-market fit — ₹18 Lakhs/month in GMV — but their growth was entirely intuition-driven. The founder's process: post on Instagram, boost the post, check "did orders come in?" The marketing team had no attribution window, no cohort analysis, and no idea which of their 4 ad accounts was profitable.
The financial reality was stark: their blended ROAS was 1.8x — meaning for every ₹1 spent on ads, they made ₹1.80 back. After COGS, shipping, and platform fees, they were losing money on 40% of their paid acquisition while believing they were growing.
📊 Data Infrastructure Build
Step 1: The Data Warehouse
We built a Google BigQuery data warehouse with a Python-based ETL pipeline (orchestrated via Apache Airflow) that ingested data from 5 sources every 6 hours:
- Shopify Orders API — SKU-level revenue, refunds, shipping zones
- Meta Ads API — campaign/adset/ad level spend, impressions, clicks
- Google Ads API — keyword-level performance, ROAS, CPC
- Klaviyo — email open rates, click-through, revenue attributed
- WhatsApp Business API — message delivery, response, conversion events
Step 2: Attribution Model
Implemented a data-driven attribution model (linear decay, 7-day window) within BigQuery using SQL transformation views. Every order was tagged with the touchpoints that contributed to it — across all 5 channels — giving a true ROAS per channel, per product category, and per customer cohort.
Step 3: The Analytics Dashboard
A React + Chart.js dashboard was built on top of BigQuery views showing:
- LTV Cohort Analysis — Revenue per customer by acquisition month
- ROAS Heatmap — Performance by product × channel × week
- CAC Trend — Customer acquisition cost tracked daily per channel
- Abandonment Funnel — Where customers drop off in the purchase journey
Step 4: Automated Recovery Flows
Cart abandonment flows were built using Klaviyo + WhatsApp Business API. Abandoned carts triggered a 3-step sequence: WhatsApp at T+1hr, Email at T+4hr, WhatsApp offer at T+24hr (dynamic 5% discount for high-value carts). Recovery rate went from ~4% (manual) to 28% (automated).
📈 75-Day Business Impact
| KPI | Before | After | Change |
|---|---|---|---|
| Blended ROAS | 1.8x | 4.6x | +156% |
| Cart Abandonment Recovery | 4% | 28% | +600% |
| Monthly Ad Spend | ₹2.4L | ₹1.8L | -₹60K (saved) |
| Monthly Revenue | ₹18L | ₹24.1L | +34% |