This project presents an end-to-end data analysis workflow focused on understanding revenue performance and customer behavior in an e-commerce dataset.
The analysis integrates Python (data processing), SQL (data querying), and Power BI (visualization) to deliver business insights through an interactive dashboard.
- Analyze revenue trends over time
- Identify key geographic markets
- Understand customer purchasing behavior
- Segment customers using RFM (Recency, Frequency, Monetary)
- Build an executive-level dashboard for decision-making
- Python: Pandas, NumPy, Matplotlib
- SQL: SQLite
- Visualization: Power BI
project/
│
├── data/
│ ├── raw/
│ └── processed/
│
├── notebooks/
│ ├── 01_data_cleaning.ipynb
│ ├── 02_eda.ipynb
│ ├── 03_sql_analysis.ipynb
│ ├── 04_exports.ipynb
│
├── models/
│ └── transactions.db
│
├── outputs/
│ ├── kpi_monthly.csv
│ ├── revenue_by_country.csv
│ ├── top_customers.csv
│ └── rfm_table.csv
│
└── dashboard/
└── powerbi_dashboard.pbix
The dataset was cleaned and prepared to ensure analytical accuracy:
- Removed missing
CustomerIDvalues - Excluded cancelled transactions (InvoiceNo starting with "C")
- Filtered invalid quantities and prices (≤ 0)
- Converted date fields to datetime format
- Created a
Revenuemetric (Quantity × UnitPrice)
The analysis was conducted in two stages:
- Revenue distribution and skewness
- Monthly revenue trends
- Customer purchasing patterns
- Orders per customer distribution
- Revenue KPIs
- Revenue by country
- Monthly performance
- Customer-level aggregation
This ensured consistency and reproducibility across different analytical layers.
Customers were segmented based on:
- Recency → Days since last purchase
- Frequency → Number of transactions
- Monetary → Total revenue generated
- Most customers exhibit low purchase frequency
- Revenue is highly concentrated in a small group of high-value customers
- A segment of customers shows inactivity, indicating potential churn risk
The final solution is an interactive dashboard with two pages:
- Revenue KPIs
- Monthly revenue trend
- Revenue by country
- Key business insights
- Customer segmentation
- Revenue by segment
- Distribution of customer groups
- Identification of high-value and at-risk customers
- Revenue is highly concentrated in the UK (>80%), indicating geographic dependency
- Strong upward trend towards Q4 suggests seasonal demand patterns
- Customer base is dominated by low-frequency buyers
- A small segment of high-value customers drives the majority of revenue
- At-risk customers highlight opportunities for retention strategies
This project demonstrates the ability to:
- Build an end-to-end data pipeline (Python → SQL → Power BI)
- Translate raw data into business insights
- Design executive dashboards for decision-making
- Apply customer segmentation techniques (RFM)
Due to file size limitations, the dataset is not included in this repository.
You can download it from:

