Figure 1. Cyclist on Chicago’s lakefront trail representing the
Cyclistic service environment.
Data Analysis Project
Tools: R (tidyverse, lubridate, ggplot2), Tableau
Dataset: Divvy Bike Share Trip Data – Chicago Data Portal
This analysis examines 14 months of Cyclistic bike-share trip data to identify behavioral differences between casual riders and annual members. The findings highlight seasonal trends, peak usage times, and opportunities to convert casual riders into long-term members.
Key insights reveal that casual riders favor weekend and midday usage, while members ride more consistently during commuting hours—particularly weekday mornings and evenings. Summer months show the highest casual ridership, presenting a strong opportunity for targeted seasonal membership promotions.
Using cleaned trip data and Tableau visualizations, this analysis presents strategic recommendations to improve membership conversion, including targeted promotions, flexible pricing options, and customer engagement initiatives. These data-driven strategies align with Cyclistic’s growth objectives and provide a clear path toward increasing annual memberships.
Cyclistic’s marketing team aims to increase annual memberships by converting casual riders into long-term members. To support this objective, 14 months of trip data were analyzed to address the following questions:
Insights from this analysis inform targeted marketing campaigns, rider engagement strategies, and membership promotion initiatives.
Cyclistic operates a bike-share network in Chicago with more than 5,800 bicycles and over 600 docking stations. The system offers traditional bicycles as well as accessible options such as reclining bikes, hand tricycles, and cargo bikes. Approximately 30% of riders use Cyclistic for commuting.
Key Stakeholders:
The dataset includes over 6.2 million ride records collected from December 2023 through January 2025. Each record contains:
PII is removed. Data was sourced from the Divvy trip data portal and is licensed under the City of Chicago Data License Agreement.
After merging 14 months of trip data, several data quality filters were applied to ensure accurate analysis.
Rides were removed if they contained:
After cleaning, approximately 5.99 million valid ride records remained, representing about 96% of the original dataset.
Station coordinate data was reviewed but found to contain inconsistencies and invalid locations. As a result, this analysis focuses primarily on time-based behavioral patterns rather than geographic station analysis.
| Insight | Explanation |
|---|---|
| Casual riders peak on weekends and midday hours | Suggests recreational or leisure usage patterns |
| Members ride more during weekday commuting hours | Indicates consistent commuter behavior |
| Casual riders take longer rides than members | Casual use appears more leisure-oriented |
| Summer shows the highest ridership overall | Seasonal demand creates opportunities for targeted promotions |
| Weekday mornings and evenings show strong member usage | Reinforces commuter-focused membership value |
Some records contained inconsistent timestamps or unrealistic ride durations and were removed during data cleaning. Additionally, station coordinate data showed inconsistencies, limiting the reliability of geographic analysis.
While these filters improved overall data quality, a small number of valid but unusual rides may have been excluded. Future analysis could incorporate anomaly detection techniques or additional rider demographic data if available.
Figure 2. Interactive Tableau dashboard
visualizing rider behavior by time of day, day of week, and season.
Built using pre-aggregated R summaries for member vs. casual
comparisons.
Casual riders generally take longer rides than annual members. This pattern supports the interpretation that casual riders are more likely using the service recreationally, while members are more likely using the service for commuting or routine travel.
ride_length_box_data <- combined_data_df_cleaned %>%
select(member_casual, ride_length)
ggplot(
ride_length_box_data,
aes(x = member_casual, y = ride_length, fill = member_casual)
) +
geom_boxplot(outlier.alpha = 0.08) +
coord_cartesian(ylim = c(0, 90)) +
labs(
title = "Ride Duration by Rider Type (≤ 90 Minutes Displayed)",
x = "Rider Type",
y = "Ride Length (Minutes)"
) +
scale_fill_manual(values = c("member" = "#4C78A8", "casual" = "#F58518")) +
theme_minimal() +
theme(legend.position = "none")
Figure 3. Casual riders generally take longer rides than annual
members, supporting the interpretation that casual usage is more
recreational while member usage is more routine.
Weekend & Event Promotions
Casual ridership peaks on weekends and midday hours, indicating
recreational use. Cyclistic could offer discounted day passes or
short-term membership trials near lakefront areas and major city events
(e.g., Lollapalooza, Taste of Chicago, Chicago Air & Water Show).
Push notifications and in-app promotions during these peak periods could
capture spontaneous riders.
Seasonal and Flexible Membership Options
Because casual ridership increases significantly during summer months,
Cyclistic could introduce seasonal memberships such as monthly, 3-month
summer passes, or weekend-only plans. These lower-commitment options can
encourage casual riders to transition into membership plans.
Targeted Post-Ride Conversion Offers
Data shows casual riders tend to take longer rides than members. After
longer trips or repeated monthly rides, automated follow-up emails or
app notifications could offer limited-time membership discounts,
highlighting potential cost savings and additional benefits.
In-App Conversion Messaging
Member usage is strongly tied to weekday commuting patterns. Within the
Cyclistic app, targeted messaging could highlight membership
benefits—such as cost savings for frequent riders—at key points like
ride completion screens or payment confirmation pages.
Data-Driven Marketing Campaigns
Marketing campaigns should emphasize the convenience and cost advantages
of membership for frequent riders. Social media promotions, referral
programs, and partnerships with local businesses or tourism
organizations can help expand awareness and encourage trial
usage.
Customer Journey Optimization
Analyzing the casual rider journey—from first ride to repeat usage—can
help identify the most effective moments to promote membership. Aligning
promotional timing with observed usage patterns can improve conversion
rates and long-term rider retention.
This analysis identified clear behavioral differences between casual riders and annual members. Casual riders tend to ride longer and more frequently on weekends and during summer months, suggesting recreational usage patterns. In contrast, members show consistent weekday commuting behavior.
These insights provide a foundation for targeted marketing strategies aimed at converting casual riders into members. By aligning promotions with observed rider behavior—such as weekend promotions, seasonal offers, and post-ride membership incentives—Cyclistic can improve membership conversion and strengthen long-term rider engagement.
✔ Tableau Dashboard
CyclisticUsageInsights
✔ Cleaned Dataset
combined_data_df_cleaned.rds
✔ Summary CSVs
Weekly, Hourly, Seasonal, Ride Duration
✔ R Script
how-bike-share-navigates-success.R
✔ Visual Assets
Rider photo and dashboard screenshot
Last updated: July 22, 2025