
Sales Planning & Promotional Analysis – Cupid Cookies
Executive Summary
In this project, Cupid Cookies’ sales planning workflow was redesigned to address rising challenges in promotional forecasting and inventory alignment. As seasonal campaigns expanded across 30 store locations, inconsistencies in demand projections and delayed subsidy reporting created friction across sales, operations, and finance teams.
To address these issues, a centralized Excel tracker and Tableau dashboard were developed to improve forecast accuracy, align store-level supply with expected demand, and evaluate promotion ROI by flavor and channel.
Key Deliverables
-
Excel Forecasting Tracker
Designed to project weekly demand using historical sales and seasonal trends. Enabled alignment between promotional planning and inventory constraints across 30 store locations. -
Tableau ROI Dashboard
Visualized cross-channel promotion performance, calculated breakeven points, and supported post-promotion analysis for vendor subsidy decisions.
Business Context & Objectives
Cupid Cookies is a 30-store cookie chain operating in Hong Kong. Each month, it introduces one seasonal flavor alongside four core SKUs, requiring careful alignment of promotional campaigns, store inventory, and vendor coordination.
This project was inspired by M&M Food Market’s approach to flyer-based forecasting and was designed to:
- Forecast weekly sales at the flavor level
- Support planning of store-level inventory allocation
- Evaluate ROI and breakeven points of monthly promotions
Sample screenshot:
Dataset Structure
The dataset simulates 6 months of transactional and promotional data (Nov 2024 – Apr 2025). Key fields:
Field | Type | Description |
---|---|---|
date | Date | Transaction date |
store_id | String | Store location ID |
flavor | String | Cookie flavor (4 core + 6 seasonal) |
units_sold | Integer | Units sold |
promo_flag | Boolean | Whether a promotion was active |
promo_type | String | Discount / Bundle / Limited |
cost_per_unit | Decimal | Product cost |
retail_price | Decimal | Selling price |
subsidy_claim | Boolean | Vendor subsidy claimed |