Introduction :
Bellabeat is a health technology company that creates smart wearables, apps, and digital programs for women’s health and wellness. Founded in 2013 by Urška Sršen and Sando, the company is based in San Francisco, California. They have developed a range of products that focus on tracking various aspects of women’s health, including activity, sleep, menstrual cycles, and stress levels. The data collected by these devices is analyzed to provide personalized insights and recommendations to users. They also have a mobile app that allows users to track their progress and see how their data is being used to generate insights. The company’s mission is to empower women to take control of their health and wellbeing.
Scenario :
Sršen knows that an analysis of Bellabeat’s available consumer data would reveal more opportunities for growth. She has asked the marketing analytics team to focus on a Bellabeat product and analyze smart device usage data in order to gain insight into how people are already using their smart devices. Then, using this information, she would like high-level recommendations for how these trends can inform Bellabeat marketing strategy.
Business task :
The objective of this analysis is to evaluate the usage of smart devices to identify potential insights and trends in order to provide high-level recommendations for Bellabeat’s marketing strategy.
Key stakeholders :
Urška Sršen: Bellabeat’s cofounder and Chief Creative Officer.
Sando Mur: Mathematician and Bellabeat’s cofounder, key member of the Bellabeat executive team.
Preparing the data :
Data sources and how it is organized :
The data set explores smart device users’ daily habits, it is a public data set made available through Mobius a data analyst at Kaggle, this data contains personal fitness tracker from thirty fitbit including minute-level output for physical activity, heart rate, and sleep monitoring. It includes information about daily activity, steps, and heart rate that can be used to explore users habits.
Data credibility:
Reliability: the data set was collected by thirty fitbit users, but it has some limitations, we will talk about in this study.
Original: The data comes from third party source.
Comprehansive: The dataset contains a comprehensive range of variables, including daily activity intensity, caloric expenditure, number of steps taken, daily sleep duration, and weight records.
Current: The data has been existed for 7 years but remains current and applicable.
Cited: The data is well documented and cited
Importing data and loading packages :
We are going to use R programming and slightly a bit of Excel spreadsheet for all this process. Then we will use the package “sqldf” in order to use some SQL queries to the data set.
Data selected to use in the study :
in order to choose the right data for our study we make some hypothesis about the upcoming analysis :
There is a strong relationship between daily steps and calories burnt.
There is a strong relationship between daily activity and sleep time.
There is a strong relationship between daily sedentary and weight .
In order to validate or not to validate our hypothesis, we will work with the following files include the appropriate data for our study:
-Daily activiyt dataset includes the ‘dailyCalories_merged.csv’ ,dailySteps_merged.csv and ‘dailyIntensities_merged.csv’ data set, so we remove the three files for useless and work with dailyActivity_merged.csv file in this study.
-‘sleepDay_merged.csv’
-‘heartrate_seconds_merged.csv’
-‘weightLogInfo_merged.csv’
Cleaning and transforming data :
Checking the data for errors :
Checking for missing values:
sum(is.na(daily_activity))## [1] 0
sum(is.na(sleep_day))## [1] 0
sum(is.na(weight_log))## [1] 65
sum(is.na(heartrate_seconds))## [1] 0
head(weight_log)## # A tibble: 6 × 8
## Id Date WeightKg WeightPounds Fat BMI IsManualReport LogId
## <dbl> <chr> <dbl> <dbl> <dbl> <dbl> <lgl> <dbl>
## 1 1503960366 5/2/2016 52.6 116. 22 22.6 TRUE 1.46e12
## 2 1503960366 5/3/2016 52.6 116. NA 22.6 TRUE 1.46e12
## 3 1927972279 4/13/2016 134. 294. NA 47.5 FALSE 1.46e12
## 4 2873212765 4/21/2016 56.7 125. NA 21.5 TRUE 1.46e12
## 5 2873212765 5/12/2016 57.3 126. NA 21.7 TRUE 1.46e12
## 6 4319703577 4/17/2016 72.4 160. 25 27.5 TRUE 1.46e12
sum(is.na(weight_log$Fat))## [1] 65
We notice that we have 65 missing values in the FAT column which we don’t need in our analysis.
Checking the data formats :
-We need to change to the ‘SleepDay’ and ‘Date’ in the following tables ‘sleep_day’ and ‘weight_log’ from date & time format to date only in order to make data consistent and compatible with the daily_activity_new table
-To do so we import data tables to Excel spreadsheet then we change the number format in the Home ribbon :
-This is the data before formatting :
head(sleep_day)## # A tibble: 6 × 5
## Id SleepDay TotalSleepRecords TotalMinutesAsleep TotalTimeInBed
## <dbl> <chr> <dbl> <dbl> <dbl>
## 1 1503960366 4/12/2016 1 327 346
## 2 1503960366 4/13/2016 2 384 407
## 3 1503960366 4/15/2016 1 412 442
## 4 1503960366 4/16/2016 2 340 367
## 5 1503960366 4/17/2016 1 700 712
## 6 1503960366 4/19/2016 1 304 320
head(weight_log)## # A tibble: 6 × 8
## Id Date WeightKg WeightPounds Fat BMI IsManualReport LogId
## <dbl> <chr> <dbl> <dbl> <dbl> <dbl> <lgl> <dbl>
## 1 1503960366 5/2/2016 52.6 116. 22 22.6 TRUE 1.46e12
## 2 1503960366 5/3/2016 52.6 116. NA 22.6 TRUE 1.46e12
## 3 1927972279 4/13/2016 134. 294. NA 47.5 FALSE 1.46e12
## 4 2873212765 4/21/2016 56.7 125. NA 21.5 TRUE 1.46e12
## 5 2873212765 5/12/2016 57.3 126. NA 21.7 TRUE 1.46e12
## 6 4319703577 4/17/2016 72.4 160. 25 27.5 TRUE 1.46e12
-And this is the data after formatting the date :
sleep_day_cleaned <- read_csv("sleepDay_cleaned.csv")## Rows: 413 Columns: 5
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (1): SleepDay
## dbl (4): Id, TotalSleepRecords, TotalMinutesAsleep, TotalTimeInBed
##
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
weight_log_cleaned <- read_csv("weightLogInfo_cleaned.csv")## Rows: 67 Columns: 4
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (1): Date
## dbl (3): Id, WeightKg, BMI
##
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
head(sleep_day_cleaned)## # A tibble: 6 × 5
## Id SleepDay TotalSleepRecords TotalMinutesAsleep TotalTimeInBed
## <dbl> <chr> <dbl> <dbl> <dbl>
## 1 1503960366 4/12/2016 1 327 346
## 2 1503960366 4/13/2016 2 384 407
## 3 1503960366 4/15/2016 1 412 442
## 4 1503960366 4/16/2016 2 340 367
## 5 1503960366 4/17/2016 1 700 712
## 6 1503960366 4/19/2016 1 304 320
head(weight_log_cleaned)## # A tibble: 6 × 4
## Id Date WeightKg BMI
## <dbl> <chr> <dbl> <dbl>
## 1 1503960366 5/2/2016 52.6 22.6
## 2 1503960366 5/3/2016 52.6 22.6
## 3 1927972279 4/13/2016 134. 47.5
## 4 2873212765 4/21/2016 56.7 21.5
## 5 2873212765 5/12/2016 57.3 21.7
## 6 4319703577 4/17/2016 72.4 27.5
Data integrity :
Let’s check the number of unique id in each data frame
n_distinct(daily_activity$Id)## [1] 33
n_distinct(heartrate_seconds$Id)## [1] 14
n_distinct(sleep_day$Id)## [1] 24
n_distinct(weight_log$Id)## [1] 8
We notice that the data is inconsistent with less than 30 number of unique id’s this means low number of participants for the sleep day, heart rate and weight tables as we know the smallest suitable sample size is 30 according to The Central Limit Theorem CLT, so this would affect the results of our analysis.
Data transformation :
Let’s start by transforming the daily_activity data set :
daily_activity_new <- daily_activity %>%
mutate(total_active_minutes = VeryActiveMinutes+FairlyActiveMinutes+LightlyActiveMinutes) %>%
select(Id,ActivityDate,TotalSteps,TotalDistance,total_active_minutes,SedentaryMinutes,Calories)
glimpse(daily_activity_new)## Rows: 940
## Columns: 7
## $ Id <dbl> 1503960366, 1503960366, 1503960366, 1503960366, 1…
## $ ActivityDate <chr> "4/12/2016", "4/13/2016", "4/14/2016", "4/15/2016…
## $ TotalSteps <dbl> 13162, 10735, 10460, 9762, 12669, 9705, 13019, 15…
## $ TotalDistance <dbl> 8.50, 6.97, 6.74, 6.28, 8.16, 6.48, 8.59, 9.88, 6…
## $ total_active_minutes <dbl> 366, 257, 222, 272, 267, 222, 291, 345, 245, 238,…
## $ SedentaryMinutes <dbl> 728, 776, 1218, 726, 773, 539, 1149, 775, 818, 83…
## $ Calories <dbl> 1985, 1797, 1776, 1745, 1863, 1728, 1921, 2035, 1…
Changing the time format from minutes to hours in the ‘sleep day’ table and ‘daily activity’:
daily_activity_cleaned <- daily_activity_new %>%
mutate(total_active_hours=total_active_minutes/60,SedentaryHours=SedentaryMinutes/60) %>%
select(Id,ActivityDate,TotalSteps,TotalDistance,total_active_hours,SedentaryHours,Calories)
head(daily_activity_cleaned)## # A tibble: 6 × 7
## Id ActivityDate TotalSteps TotalDistance total_activ…¹ Seden…² Calor…³
## <dbl> <chr> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 1503960366 4/12/2016 13162 8.5 6.1 12.1 1985
## 2 1503960366 4/13/2016 10735 6.97 4.28 12.9 1797
## 3 1503960366 4/14/2016 10460 6.74 3.7 20.3 1776
## 4 1503960366 4/15/2016 9762 6.28 4.53 12.1 1745
## 5 1503960366 4/16/2016 12669 8.16 4.45 12.9 1863
## 6 1503960366 4/17/2016 9705 6.48 3.7 8.98 1728
## # … with abbreviated variable names ¹total_active_hours, ²SedentaryHours,
## # ³Calories
SleepDayCleaned <- sleep_day_cleaned %>%
mutate(TotalHoursAsleep=TotalMinutesAsleep/60,TotalTimeInBed=TotalTimeInBed/60) %>%
select(Id,SleepDay,TotalSleepRecords,TotalHoursAsleep,TotalTimeInBed)
head(SleepDayCleaned)## # A tibble: 6 × 5
## Id SleepDay TotalSleepRecords TotalHoursAsleep TotalTimeInBed
## <dbl> <chr> <dbl> <dbl> <dbl>
## 1 1503960366 4/12/2016 1 5.45 5.77
## 2 1503960366 4/13/2016 2 6.4 6.78
## 3 1503960366 4/15/2016 1 6.87 7.37
## 4 1503960366 4/16/2016 2 5.67 6.12
## 5 1503960366 4/17/2016 1 11.7 11.9
## 6 1503960366 4/19/2016 1 5.07 5.33
- Here we have finished cleaning and transforming the data in order to work effectively to get relevant analysis
Data analysis :
Data summary :
Let’s see some summary statistics about the data :
daily_activity_cleaned %>%
select(TotalSteps, TotalDistance, total_active_hours, SedentaryHours, Calories) %>%
summary()## TotalSteps TotalDistance total_active_hours SedentaryHours
## Min. : 0 Min. : 0.000 Min. :0.000 Min. : 0.00
## 1st Qu.: 3790 1st Qu.: 2.620 1st Qu.:2.446 1st Qu.:12.16
## Median : 7406 Median : 5.245 Median :4.117 Median :17.62
## Mean : 7638 Mean : 5.490 Mean :3.792 Mean :16.52
## 3rd Qu.:10727 3rd Qu.: 7.713 3rd Qu.:5.287 3rd Qu.:20.49
## Max. :36019 Max. :28.030 Max. :9.200 Max. :24.00
## Calories
## Min. : 0
## 1st Qu.:1828
## Median :2134
## Mean :2304
## 3rd Qu.:2793
## Max. :4900
- We notice that the average users of bellabeat smart devices are active people with an average of approximately 4 hours a day, with an average of approximately 8000 step per day, according to the data we have.
SleepDayCleaned %>%
select( TotalHoursAsleep, TotalTimeInBed ) %>% summary()## TotalHoursAsleep TotalTimeInBed
## Min. : 0.9667 Min. : 1.017
## 1st Qu.: 6.0167 1st Qu.: 6.717
## Median : 7.2167 Median : 7.717
## Mean : 6.9911 Mean : 7.644
## 3rd Qu.: 8.1667 3rd Qu.: 8.767
## Max. :13.2667 Max. :16.017
- According to the daily sleep data we can notice as well that the average people who use bellabeat smart devices have a healthy life style with an average of 7 hours of daily sleeping, according to the data tracked with those devices, we can either confirm or not later in the analysis.
weight_log_cleaned %>%
select(WeightKg, BMI) %>% summary()## WeightKg BMI
## Min. : 52.60 Min. :21.45
## 1st Qu.: 61.40 1st Qu.:23.96
## Median : 62.50 Median :24.39
## Mean : 72.04 Mean :25.19
## 3rd Qu.: 85.05 3rd Qu.:25.56
## Max. :133.50 Max. :47.54
- According to the BMI ‘Body Mass Index’ results, we notice that the majority of users have a healthy weight, with an average of 25 BMI. However, there are also some users who are classified as overweight or obese. The data does not include users with a BMI indicative of underweight which is under 18.5.
heartrate_seconds %>%
select(Id,Time,Value) %>% summary()## Id Time Value
## Min. :2.022e+09 Length:2483658 Min. : 36.00
## 1st Qu.:4.388e+09 Class :character 1st Qu.: 63.00
## Median :5.554e+09 Mode :character Median : 73.00
## Mean :5.514e+09 Mean : 77.33
## 3rd Qu.:6.962e+09 3rd Qu.: 88.00
## Max. :8.878e+09 Max. :203.00
- According to this heart rate summary we notice that there are some times for some people where the heart beat per minutes can achieve till 200 bpm and sometimes down till 36 bpm which is not normal, so this may due to then Fitbit issue or maybe a health problem.
Data aggregation and organisation :
In order to evaluate the relationships and get trends for the daily activity data we should order our data in a descending and ascending order :
- In Descending order:
daily_activity_cleaned %>%
select(Id,TotalSteps,TotalDistance,total_active_hours,SedentaryHours,Calories) %>%
arrange(-Calories) %>% group_by(Id) %>%
tibble()## # A tibble: 940 × 6
## Id TotalSteps TotalDistance total_active_hours SedentaryHours Calor…¹
## <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 6117666160 19542 15.0 5.4 9.65 4900
## 2 5577150313 12231 9.14 6.6 8.75 4552
## 3 8877689391 29326 25.3 9.2 14.8 4547
## 4 5577150313 13368 9.99 7.4 8.32 4546
## 5 5577150313 12363 9.24 6.92 10.4 4501
## 6 8877689391 27745 26.7 5.85 18.2 4398
## 7 5577150313 15764 11.8 6.93 7.08 4392
## 8 5577150313 14269 10.7 6.63 7.87 4274
## 9 8378563200 15148 12.0 4.97 11.3 4236
## 10 8378563200 13318 10.6 5.3 11.6 4163
## # … with 930 more rows, and abbreviated variable name ¹Calories
- In Ascending order:
daily_activity_cleaned %>%
select(Id,TotalSteps,TotalDistance,total_active_hours,SedentaryHours,Calories) %>%
arrange(Calories) %>% group_by(Id) %>%
tibble()## # A tibble: 940 × 6
## Id TotalSteps TotalDistance total_active_hours SedentaryHours Calor…¹
## <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 1503960366 0 0 0 24 0
## 2 6290855005 0 0 0 24 0
## 3 8253242879 0 0 0 24 0
## 4 8583815059 0 0 0 24 0
## 5 3977333714 746 0.5 0.217 0.217 52
## 6 8792009665 0 0 0 0.8 57
## 7 7007744171 0 0 0 1.85 120
## 8 4319703577 17 0.0100 0.0333 0 257
## 9 2347167796 42 0.0300 0.0667 0.0333 403
## 10 1844505072 0 0 0 11.8 665
## # … with 930 more rows, and abbreviated variable name ¹Calories
The results indicate a relationship between daily activity, daily steps and calories burned. Although there may be some variations between activity and calories burned from person to person, it cannot be determined if it is due to a measurement error by the Fitbit as the gender information is not available according to scientific studies show that men generally burn 5% to 10% more calories than women, but the exact difference can vary widely depending on the individual and their lifestyle.
Checking the relationship between the sleep time and daily activity, we use SQL here to create a new table contains the daily activity and sleep day data sets :
activity_vs_SleepTime <- sqldf('SELECT Sleep.Id,SleepDay, total_active_hours,SedentaryHours,Calories,TotalHoursAsleep,TotalTimeInBed FROM daily_activity_cleaned as Activity INNER JOIN SleepDayCleaned as Sleep on Activity.Id = Sleep.Id AND Activity.ActivityDate = Sleep.SleepDay') - Highest activity days :
activity_vs_SleepTime %>%
select(Id,SedentaryHours,total_active_hours,TotalHoursAsleep) %>% group_by(Id) %>%
arrange(-total_active_hours) %>% head()## # A tibble: 6 × 4
## # Groups: Id [2]
## Id SedentaryHours total_active_hours TotalHoursAsleep
## <dbl> <dbl> <dbl> <dbl>
## 1 6117666160 8.37 9 6.33
## 2 6117666160 7.8 8.53 8.2
## 3 4702921684 9.62 8.17 8.67
## 4 4702921684 9.62 8.17 8.67
## 5 6117666160 7.98 8.12 6.53
## 6 4702921684 7.82 8.05 7.75
- Lowest activity days :
activity_vs_SleepTime %>%
select(Id,SedentaryHours,total_active_hours,TotalHoursAsleep) %>% group_by(Id) %>%
arrange(total_active_hours) %>% head()## # A tibble: 6 × 4
## # Groups: Id [5]
## Id SedentaryHours total_active_hours TotalHoursAsleep
## <dbl> <dbl> <dbl> <dbl>
## 1 4319703577 0 0.0333 5.03
## 2 2347167796 0.0333 0.0667 6.85
## 3 2026352035 16.7 0.283 5.95
## 4 1927972279 16.4 0.533 6.63
## 5 4319703577 21.1 0.567 0.983
## 6 5553957443 15.7 0.767 5.83
- People who are daily more active used to sleep in average from 7 to 8 hours which is the healthier sleeping habit according to the World Health Organization, people who are less active and have more Sedentary hours used to sleep maximum of 6 hours a day.
An Overview of the daily activity and weight data :
activity_vs_weight <- sqldf('SELECT weight.Id,Date,TotalSteps,total_active_hours,SedentaryHours,Calories,weightKg,BMI FROM daily_activity_cleaned as activity INNER JOIN weight_log_cleaned as weight ON activity.Id=weight.Id AND activity.ActivityDate=weight.Date')
activity_vs_weight %>%
select(Id,total_active_hours,SedentaryHours,BMI) %>%
arrange(total_active_hours) %>% group_by(Id) %>% head()## # A tibble: 6 × 4
## # Groups: Id [4]
## Id total_active_hours SedentaryHours BMI
## <dbl> <dbl> <dbl> <dbl>
## 1 4319703577 0.05 22.7 27.5
## 2 1927972279 0.533 16.4 47.5
## 3 6962181067 1.43 14.4 24.1
## 4 6962181067 1.88 2.12 24.2
## 5 8877689391 2.68 12.8 25.1
## 6 6962181067 2.75 11.8 23.9
Let’s do more data aggregation, now we check out the no activity of over weighted people who has more than 25 BMI :
activity_vs_weight %>% filter(BMI > 25) %>%
summarize(average_no_activity = mean(SedentaryHours))## average_no_activity
## 1 18.08788
- According to the Fit bit recordings, an average of 18 hours of no activity is really high and definitely needs to be reduced, so we conclude that Sedentary or no activity is one of the negative factors which impacts peoples metabolism and healthy life style in general.
Visualization :
Visualizing of the correlation matrix for the daily activity and calories table :
library(ggcorrplot)
Corr_matrix <- matrix <- daily_activity_cleaned %>%
select(TotalSteps,TotalDistance, total_active_hours,SedentaryHours,Calories) %>%
cor()
ggcorrplot(Corr_matrix, type = "lower", method = "circle" )+labs(title = "Daily activity correlation", caption = "Figure 01 : Correlation matrix of the daily activity and calories burned")- The correlation visual indicate positive correlation between total steps and calories burned, and obviously with total distance.
- The relationship between daily steps and calories burned :
ggplot(daily_activity_cleaned, aes(x=TotalSteps, y=Calories))+
geom_point(color = "darkred")+geom_smooth(method = lm,color="blue") +
labs(title="Total steps vs Calories burned", caption = "Figure 02: The relationship between total steps and calories burned")## `geom_smooth()` using formula = 'y ~ x'
- Figure 02 indicates a positive correlation between the total daily steps taken and the total calories burned by Fitbit users. This correlation suggests that there is a direct relationship between the number of steps taken and the amount of calories burned, where an increase in steps taken is proportional to an increase in calories burned.
- The relationship between inactivity and sleep time:
Correlation between Sedentary or inactivity time and sleep time :
cor(activity_vs_SleepTime$SedentaryHours,activity_vs_SleepTime$TotalTimeInBed)## [1] -0.6187135
ggplot(activity_vs_SleepTime,aes(x=SedentaryHours, y=TotalTimeInBed,color =total_active_hours ))+
geom_point()+geom_smooth(color = 'darkgreen')+
labs(title="Sleep Time vs Sedentary time",caption="Figure 03 :Relationship between Sleep time and inactivity ")+scale_color_gradient(low="Darkblue", high="Red")+
annotate(geom = "text",x=17.5,y=15,label="Correlation(x,y) = -0.62",size=4, color="Darkred")## `geom_smooth()` using method = 'loess' and formula = 'y ~ x'
- Figure 03 indicates a negative correlation between inactive time and sleep time. This suggests that users who are less active tend to sleep less than 6 hours or in some cases more than 10 hours, however active people tend to have a healthier sleep quality which is 7 to 8 hours a day. Which explains that activity has a direct relationship with sleep quality and healthy lifestyle in general .
- The relationship between inactivity and weight :
In a previous analysis, we found that users classified as overweight have an average daily sedentary time of 18 hours. To further confirm this findings, a pivot table was utilized to create a stacked column chart in Microsoft Excel, which provides the next visual of the BMI and their relationship with the average sedentary time.
- Figure 04 confirms that users classified as overweight tend to have long periods of inactivity, with an average daily sedentary duration exceeding 16 hours a day. This explains the need for measures to reduce sedentary behavior among this users.
- The relationship between sleep time and weight :
We used Excel pivot table to summarize the Body Mass Index by the average of the time in bed, then we create the column chart below to visualize our findings :
- According to the figure 05 we can notice how healthy sleeping quality can affect in the BMI of this users, Although the sample size of the weight data may be limited and result in some degree of bias, it is evident that there is a difference between users with a natural metabolism and those who are classified as overweight ‘BMI > 25’. The findings suggest that healthy sleep habits can have a positive impact on BMI.
Conclusion and recommandations to business :
Conclusion based on the analysis :
First of all we won’t ignore that data integrity was inconsistent and has too much limitations, due to data integrity issues, the limited sample size of 33 users, it would not be possible to gain a big picture of the data and produce more reliable results.However, even with the limited data we were able to see how relationships between variables and get important insights for the bellabeat FitBit smart device and for the marketing strategy.
it is clear that inactive people having a negative lifestyle and the opposite applies. During the analysis, the following findings were confirmed:
Our data demonstrates that everyday long-distance walking or running directly affects the number of calories burned. A higher number of steps taken over longer distances, a sign of increased physical activity, is followed by an increase in calorie expenditure. Additionally, increasing calorie expenditure can aid in fat burning and weight loss.
Daily activity seems to improve the quality of sleep. This underlines how crucial it is to include physical activity in daily life, both for its positive effects on health and the quality of one’s sleep..
Sedentary individuals are more likely to have a higher Body Mass Index (BMI), although the reverse is also true. In order to maintain a healthy weight and overall wellbeing, it is important to encourage physical exercise and reduce sedentary behavior.
- Good sleep habits, such maintaining a regular sleep schedule and creating a sleep-friendly atmosphere, can have a good effect on a person’s weight and general health. Our data also emphasizes how critical it is to address both physical exercise and sleep quality in order to promote healthy behaviors.
Recommendations to stakeholders :
In order to assist the marketing strategy in developing a data-driven marketing plan for Bellabeat’s future products and features, we can put the following recommendations into practice based on the insights obtained from the FitBit smart device data:
Bellabeat can enhance its tracking skills by incorporating a feature that notifies users when their heart rates are increased, abnormally low, or abnormally high. This will offer a more thorough and precise method of heart rate level monitoring.
adding notifications that encourage activity after extended periods of inactivity can provide a motivational boost to users and help them stay on track towards a healthier lifestyle. This feature would serve as a proactive and supportive tool for individuals who are looking to incorporate more movement and activity into their daily routine.
Improving the sleep monitoring capabilities is a crucial feature to give customers a more thorough and accurate understanding of the quality of their sleep.
Inspire customers to post reviews of the product on social media and online review sites. This can give important information about what consumers want from a wearable health tracker.
Provide excellent customer support and services to build a strong client loyalty and trust.