Turning WooCommerce transaction data into targeted campaign intelligence. Customer segmentation, taste profiles, lapse prediction, and cross-sell opportunities for Bishop's Cellar's marketing team.
Bishop's Cellar has extensive customer purchase history across consumer and licensee channels but can't extract actionable insights from it. The sales and marketing team runs campaigns based on broad product attributes ("you like Cabernet, we send you Cabernet") rather than behavioral intelligence.
Six specific pain points were identified during discovery:
| # | Pain Point | Impact |
|---|---|---|
| 1 | No high-value customer identification | Can't systematically surface the 45-65, higher income, $30+/bottle segment that drives the most revenue |
| 2 | No lapsed customer detection | Previously active customers go dormant without anyone noticing |
| 3 | Attribute-only personalization | No behavioral or pattern-based segmentation. Campaigns are one-dimensional. |
| 4 | Gift purchase misattribution | A customer who bought Scotch once as a gift gets ongoing Scotch recommendations |
| 5 | High-value customers unreachable digitally | Top customers often don't engage via email. No mechanism for staff call lists. |
| 6 | Licensee account blind spots | Can't detect drops in product volume by account to trigger proactive outreach |
"This is truly impressive. Love the layout, recommendations and insights... Blown away by the data." Matt Rogers, President, Bishop's Cellar (on seeing the initial analysis)
A previous tool (Glue) was used for approximately 2 years for accelerated reporting and top-spender lists but never reached its potential. Matt Rogers reflected the team may not have been ready at the time.
Before scoping a formal POC, we ran a full exploratory analysis on Bishop's Cellar's WooCommerce data to validate the approach. The results confirm there is significant, actionable intelligence in the existing data.
| Finding | Detail | Campaign Implication |
|---|---|---|
| 42.5% never return | 7,543 customers made exactly one purchase | 30-day post-first-purchase conversion sequence |
| Top 7% = 60% revenue | Customers with 26+ orders generate 59.9% of all revenue | Tiered retention with personal outreach for highest-value |
| Omnichannel = 4.7x LTV | Web + POS customers average $4,312 vs $922 web-only | Channel migration campaigns (POS-to-web, web-to-store) |
| 4,792 holiday-only buyers | Customers who only ever purchase Oct-Dec | Separate gift calendar. Exclude from win-back campaigns Jan-Sep. |
| Premium = highest LTV | $25-50/item buyers have highest LTV ($2,291), not luxury buyers | Price tier migration: move mid-range up to premium |
| Source | Status | Contents |
|---|---|---|
| WooCommerce | Received | 15 core tables + 4 taxonomy tables. Online orders + in-store for email-linked customers. |
| HubSpot | Future | Email engagement, campaign performance, drip flow data. Would enable engagement-layered segmentation. |
| NCR Counterpoint | Excluded | Full in-store POS data. Excluded per Matt Rogers' decision. |
Matt Rogers wants a low-effort MVP: data insights first, him as human-in-the-loop domain expert, manual experiments before automation. This means we deliver actionable audience lists and campaign briefs that his marketing person can execute through HubSpot immediately, not a new platform to learn.
The initial analysis surfaced 10 campaign opportunities. These are the four highest-impact, most immediately actionable:
30-day post-first-purchase sequence. Content varies by what they bought in order 1. A 10% conversion rate adds ~$285K in projected LTV.
Personal phone calls for $5K+ customers (200 people). Personalized emails for $1K-$5K. Automated sequences for the rest.
Two campaigns: POS-to-web (surface online-only products) and web-to-store (tasting events, pickup). Omnichannel customers are 4.7x more valuable.
Separate campaign calendar for holiday-only buyers. Pre-activation starts October 1. Exclude from win-back emails Jan-Sep to prevent unsubscribes.
Additional opportunities include replenishment timing, price tier migration, abandoned cart optimization, staff picks campaigns, category exploration triggers, and pickup-to-relationship programs. Full details in the interactive report.
| Criteria | How We Measure It |
|---|---|
| Campaigns outperform baseline | Segmented campaigns show higher open/click/conversion rates than previous broadcast campaigns. Target: 2x improvement on at least one metric. |
| Revenue attributed to insights | At least one campaign generates measurable incremental revenue traceable to the audience lists provided. Even a small pilot ($5-10K) validates the approach. |
| Insights are actionable without new tools | Matt Rogers' marketing person can execute campaigns in HubSpot using the delivered lists without learning new software or changing existing workflows. |
| Matt Rogers sees ongoing value | At the Phase 4 review, Matt Rogers sees enough value to continue with additional campaign waves or expand to new data sources (HubSpot engagement, NSLC market data). |
| Gift/seasonal segmentation prevents waste | Holiday-only buyers are excluded from off-season win-back campaigns, reducing unsubscribe rates and improving list health. |
| Risk | Impact | Mitigation |
|---|---|---|
| Team capacity for execution | One self-taught marketing person handles all campaigns. Adding segmented campaigns increases workload. | Start with 2-3 campaigns max. Deliver ready-to-import lists with campaign briefs. Minimize manual work required. |
| WooCommerce data gaps | Only captures email-linked customers. In-store-only customers without email are invisible. | Accepted limitation per Matt Rogers. Coverage is sufficient for email-based campaigns. Can revisit NCR data if needed later. |
| COVID-era data noise | Pre-2022 purchasing behavior was atypical. Models trained on all-time data may not reflect current patterns. | Time-period toggle allows 12-month view for current behavior. Segmentation can be re-run on recent data only. |
| Glue precedent | Previous analytics tool failed to reach potential. Team may be skeptical of another data initiative. | This is insights-first, not tool-first. No new platform to learn. Insights feed directly into existing HubSpot workflows. |
| Attribution difficulty | Hard to prove campaign revenue came from segmentation vs would have happened anyway | Use holdout groups where possible. Compare segmented vs broadcast performance on similar offers. Start with directional evidence. |
| System | Role | Data Flow |
|---|---|---|
| NCR Counterpoint | System of record (on-premise SQL) | Nightly sync via Sync Stack API (built by Kula) → WooCommerce |
| WooCommerce | E-commerce platform | Online orders + synced in-store orders → HubSpot |
| HubSpot | CRM / Marketing automation | Campaign execution, email, drip flows, abandoned cart |
| Component | Tool | Purpose |
|---|---|---|
| Data warehouse | DuckDB + Supabase | WooCommerce tables loaded for analysis. Fast SQL queries on 138K orders. |
| Segmentation models | Python (scikit-learn, lifetimes) | RFM scoring, BG/NBD lapse prediction, Gamma-Gamma CLV, FP-Growth rules |
| Reporting | Static HTML + Netlify | Interactive report with time-period filtering at bishopscellar.netlify.app |
| Delivery | CSV exports | HubSpot-importable audience lists with segment tags |