Skip to content

End-to-end Product Analytics dashboard that analyzes feature usage, user engagement, and behavioral segments using RFM metrics and KMeans clustering. Includes synthetic clickstream data generation, preprocessing pipeline, model training, and a multi-page Streamlit app for insights used by Product & Business Analyst roles.

License

Notifications You must be signed in to change notification settings

girishshenoy16/Product-Feature-Usage-Intelligence

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

7 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿ“˜ Product Feature Usage Intelligence Dashboard

End-to-End Business Analyst Project (Python โ€ข Streamlit โ€ข RFM โ€ข KMeans โ€ข Plotly)


๐Ÿ“Œ 1. Project Overview

This project simulates a real SaaS product analytics workflow, where we analyze how users interact with different product features over time.

The system provides:

  • Feature usage metrics
  • User engagement analytics
  • RFM-based behavioral scoring
  • KMeans usage segmentation
  • A polished multi-page Streamlit dashboard

This project is designed for Business Analyst / Product Analyst / Data Analyst roles and is fully runnable locally.


๐Ÿ“Œ 2. Problem Statement & Business Context

Modern digital products generate large volumes of event-level data (clicks, searches, feature interactions). However, companies often struggle with:

  • Understanding which features are actually used
  • Identifying โ€œpower usersโ€ vs โ€œat-riskโ€ users
  • Measuring adoption and engagement
  • Making data-driven product decisions

This project solves that by simulating:

  • Feature-level adoption
  • Usage trends
  • RFM-based engagement scoring
  • Usage-based user segmentation
  • Monitoring active vs inactive users

Product Managers, Growth Teams, and Analysts use dashboards like this to:

  • Prioritize the roadmap
  • Improve user retention
  • Identify adoption gaps
  • Personalize engagement or marketing campaigns

๐Ÿ“Œ 3. Tech Stack

๐Ÿง  Programming & Analytics

๐Ÿ–ฅ๏ธ App / UI

๐Ÿ”ง Utilities & Engineering


๐Ÿ“Œ 4. Data Description

Synthetic dataset simulates clickstream-like product usage:

Raw Data Columns

Column Description
user_id Unique user ID
signup_date When the user joined
event_date Date of feature usage
feature_name Feature used (Search, Dashboard, API, etc.)
events_count Number of actions for that feature/day

Processed Data Columns

Column Description
last_event_date Last active day
active_days Days user engaged with product
total_events Total feature interactions
recency Days since last activity
frequency Number of active days
monetary Usage intensity score
cluster KMeans behavioral segment

๐Ÿ“Œ 5. Architecture

Synthetic Feature Usage Data
          โ†“
Preprocessing (clean, transform, aggregate)
          โ†“
RFM Feature Builder (recency / frequency / monetary)
          โ†“
KMeans Segmentation Model (Power, Regular, At-Risk, Dormant)
          โ†“
Streamlit Multi-Page Dashboard
          โ†“
Insights for Product & Business Decision-Making

๐Ÿ“ Folder Structure

Product-Feature-Usage-Intelligence/
โ”‚
โ”œโ”€โ”€ app/
โ”‚   โ”œโ”€โ”€ Home.py
โ”‚   โ””โ”€โ”€ pages/
โ”‚       โ”œโ”€โ”€ 1_Overview.py
โ”‚       โ”œโ”€โ”€ 2_Feature_Usage.py
โ”‚       โ””โ”€โ”€ 3_RFM_Segments.py
โ”‚
โ”œโ”€โ”€ data/
โ”‚   โ”œโ”€โ”€ raw/
โ”‚   โ””โ”€โ”€ processed/
โ”‚
โ”œโ”€โ”€ models/
โ”‚   โ””โ”€โ”€ kmeans_rfm.pkl
โ”‚
โ”œโ”€โ”€ scripts/
โ”‚   โ”œโ”€โ”€ generate_synthetic_data.py
โ”‚   โ”œโ”€โ”€ preprocess_data.py
โ”‚   โ”œโ”€โ”€ build_rfm.py
โ”‚   โ””โ”€โ”€ train_model.py
โ”‚
โ”œโ”€โ”€ src/
โ”‚   โ”œโ”€โ”€ preprocessing.py
โ”‚   โ”œโ”€โ”€ rfm.py
โ”‚   โ””โ”€โ”€ viz.py
โ”‚
โ”œโ”€โ”€ tests/
โ”‚   โ””โ”€โ”€ test_predict.py
โ”‚
โ”œโ”€โ”€ screenshots/
โ”‚   โ”œโ”€โ”€ overview.png
โ”‚   โ”œโ”€โ”€ feature_usage.png
โ”‚   โ””โ”€โ”€ rfm_segments.png
โ”‚
โ”œโ”€โ”€ .gitignore
โ”œโ”€โ”€ requirements.txt
โ””โ”€โ”€ README.md

๐Ÿ“Œ 6. How to Run (Step-by-step)

1๏ธโƒฃ Clone the repository

git clone https://github.com/girishshenoy16/Product-Feature-Usage-Intelligence
cd Product-Feature-Usage-Intelligence

2๏ธโƒฃ Create a virtual environment

python -m venv venv
venv\Scripts\activate

3๏ธโƒฃ Install dependencies

python.exe -m pip install --upgrade pip
pip install -r requirements.txt

4๏ธโƒฃ Generate synthetic data

python scripts/generate_synthetic_data.py

5๏ธโƒฃ Preprocess / build features

python scripts/preprocess_data.py
python scripts/build_rfm.py

6๏ธโƒฃ Train KMeans model

python scripts/train_model.py

7๏ธโƒฃ Evaluate KMeans model

python src/evaluate_model.py

8๏ธโƒฃ Testing the project

pytest -v

9๏ธโƒฃ Start the dashboard

streamlit run app/Home.py

Your dashboard opens at: ๐Ÿ‘‰ http://localhost:8501


๐Ÿ“Œ 7. Dashboard Walkthrough (with screenshots)

๐Ÿ  Home Page

Simple project overview and navigation.


๐Ÿ“Œ Overview Page

Shows high-level KPIs:

  • Total users
  • Avg events per user
  • Avg active days
  • RFM summary per cluster

Overview


๐Ÿ“ˆ Feature Usage Page

Includes:

  • Total usage per feature
  • Interactive filters (date range, feature selection)
  • Feature-wise time-series trends

Feature Usage


๐Ÿงฎ RFM Segments Page

  • 3D RFM scatter plot (Recencyโ€“Frequencyโ€“Monetary)
  • Cluster distribution bar chart
  • Insightful cluster interpretation

RFM Segments


๐Ÿ“Œ 8. Key Insights & Results

Some example insights (your numbers may differ):

๐Ÿ”น Feature Usage

  • "Dashboard" is the most used feature.
  • API & Integrations have lower adoption (good candidate for UX improvement).

๐Ÿ”น Engagement (RFM)

  • Power users show low recency and high frequency/monetary.
  • At-risk users show high recency with declining frequency.

๐Ÿ”น Segments

Model successfully separates users into:

  • Cluster 0 โ€“ Power Users
  • Cluster 1 โ€“ Regular Users
  • Cluster 2 โ€“ At-Risk Users
  • Cluster 3 โ€“ Dormant Users

These are directly usable for:

  • Re-engagement campaigns
  • Feature onboarding
  • Product roadmap planning

๐Ÿ“Œ 9. Future Work

To expand this into a more advanced product analytics suite:

  • ๐Ÿ“‰ Churn prediction model
  • ๐Ÿงฉ Cohort retention heatmaps
  • โšก Real-time usage ingestion (Kafka โ†’ DB โ†’ Dashboard)
  • ๐Ÿ“Š Feature correlation matrix (which features drive stickiness?)
  • ๐Ÿงญ User journey funnel visualization
  • ๐Ÿš€ Deploy dashboard to Streamlit Cloud / Render / AWS

About

End-to-end Product Analytics dashboard that analyzes feature usage, user engagement, and behavioral segments using RFM metrics and KMeans clustering. Includes synthetic clickstream data generation, preprocessing pipeline, model training, and a multi-page Streamlit app for insights used by Product & Business Analyst roles.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages