How Can Chipotle Regain Customers? | by cqye | Towards Data Science

This is the final project of our team (Crystal Huang, Jack Ye, Hao Hao, Yuting Li) in Machine Learning class of UC Davis MSBA program. The step-by-step guidance of python coding has been shared at Github: https://github.com/Cryyyystal/Analysis-of-Yelp-Review-for-Chipotle-Mexican-Grill
Chipotle has been losing customers and isn’t performing well in the competitive fast-casual dining industry these years. It tried many methods to improve customer experience and regain customers such as establishing new safety protocols and introducing digital ordering channels such as online and mobile app ordering. As Chipotle embraces increasingly modern strategies, we recommend a data-driven approach to help it improve business. In this project, we use several natural language processing tools to analyze its reviews on Yelp to discover areas of improvement and propose suggestions accordingly.
Main components of the Chipotle project:
Apply Textblob to calculate the sentiment polarity of each review.
Draw word clouds for positive and negative reviews respectively to see what words appear frequently in positive or negative reviews.
Use the LDA Mallet to do topic modeling to extract six topics from all reviews, and calculate the average sentiment scores for each topic. Draw a radar graph to show which topics are Chipotle’s advantages and which are its disadvantages.
Do time series analysis of word sentiment, through which we see the monthly change of occurrence frequency of important words such as “line” and “burrito” in the positive or negative reviews. Based on this, we can detect the pain points of Chipotle’s key business.
Based on our analysis, we provide Chipotle with four suggestions in the areas of ingredient quality, wait times and digital ordering. The first one is to improve the freshness and quality of its ingredients to regain its strategic strength. The second one is to investigate the supply chain to see how to improve the quality and taste of its proteins, especially chicken. The third one is to investigate the current quality of its most important product, burrito, which has gone fewer and fewer positive reviews. At last, Chipotle should improve the online ordering system and mobile app, in order to better solve the wait time problem and improve customers’ buying experience.
Yelp provides a comprehensive dataset in Yelp Challenge Dataset that includes all the merchants information such as addresses, tips, reviews, and reviewers. We merge the “business” table and the “review” table, and extract Chipotle’s information. There are 9590 reviews of Chipotle in total.
The dataset link: https://www.yelp.com/dataset/challenge
We calculate Chipotle’s monthly average star rating of reviews since 2006, and find that it gradually declines over time: back in 2010, the average review star was about 4.0, but now it is about 3.0 (Graph 1)
Graph 2 shows how the number and proportion of different stars change over time. As the time passes, 5-star and 1-star reviews increase in both number and proportion, with 1-star reviews increasing more significantly. This might be the main reason why the average star rating gradually declines in Graph 1.
After the EDA, we have done several text preprocessing to improve the performance of NLP models, including:
Text Decontraction. For instance, replace “won\’t” with “will not”, replace “\’ve” with “ have”, and replace “\’d” with “ would”.
Making Everything Lower-case.
Removing Stop Words using NLTK library. Stop words are the very common words like ‘if’, ‘but’, ‘we’, ‘he’, ‘she’, and ‘they’. We can usually remove these words without changing the semantics of a text.
Removing White Spaces and Punctuations. After the above processing, there might be some white spaces mixed with words, so we need to remove the white spaces. Plus, we also remove punctuations such as “,.?!:” and just keep words.
Word Lemmatization using NLTK stem. Lemmatization is the process of grouping together the different inflected forms of a word so they can be analyzed as a single item. For instance, after Lemmatization, “cries” would be “cry”.
The comparison of a review between before text preprocessing and after text preprocessing is as follows:
Before
"I'm a regular at chipotle in California, this is my first visit to this chipotle on s.las Vegas strip.this is pretty new place I think, I took a veggie bowl in which the rice was undone and the fajitas were all burnt, the quantity offered was less than usual. I'm very unhappy with this place."
After
'regular chipotle california first visit chipotle s la vega strip this pretty new place think took veggie bowl rice undone fajitas burnt quantity offered le usual unhappy place'
We use Textblob to assign each review a sentiment score to measure how positive or how negative the review is. If the sentiment score is greater than 0, the review is positive, and on the contrary, the review is negative. From Graph 3, we can see that positive reviews are twice as many as negative reviews.
Graph 4 is drawn to see the relationship between reviews stars and sentiment scores. Obviously, as the stars increase, the average sentiment score also increases. However, for 1-star reviews, they might be either positive or negative, but for 4-star and 5-star reviews, they are basically positive.
We first use word cloud to see the big picture of the reviews. We draw one word cloud for positive reviews and negative reviews respectively to see the difference. We remove the words that appear very frequently in both positive and negative reviews, including “chipotle”, “burrito”, and “place”, because they are very large in both graphs. We can see that the largest words in positive reviews are “meat”, “staff”, and “service”, while the largest words in negative reviews are “line” and “chicken”. Customers like the meat at Chipotle, but it seems that it is not the case for chicken. Even though the line in Chipotle may be a little long and customers have to wait for a little while, they are satisfied with Chipotle’s staff and service.
With the big picture of the reviews in mind, we use topic modeling, specifically Latent Dirichlet Allocation via Mallet (LdaMallet), to extract key topics from all the words. Then, we measure the sentiment score of each topic to see in which aspects Chipotle does well and in which it does poorly.
We draw a hexagon and add 0.1 for each score to make the comparison clearer. We can see from Graph 7 that the ingredient-related topic (fresh/ingredient/quality) gets the highest score, echoing Chipotle’s values of “freshness” and “integrity”. The environment-related topic (location/clean/nice/friendly) gets the second highest. Line-related topic (time/line/wait/long/online), food-related topic (meat/chicken/chip/rice/guacamole/steak/lettuce), service-related topic (service/employee/bad), and payment-related topic (pay/manager/cashier) get the lower scores.
We assign each review to the topic that takes the greatest proportion of that review and calculate the average sentiment score for all the six topics over time. To see the trends of 4 lower-score topics more clearly, we draw the graphs that compare each one of them with ingredient-related topic (fresh/ingredient/quality). We found that the average sentiment score of line-related topic (time/line/wait/long/online) floats around 0.1 before 2013, significantly declines in 2013, and then floats around 0 (Graph 8).
With a time-series approach, we visualize the change of sentiments of Words of Interest (WOI) together with the change of star rating on a monthly basis. We first define the metrics with which we measure the words’ sentiments:
Like word cloud, we determine the sentiments of WOI based on its occurrence frequency in the positive/negative reviews. We normalize the occurrence because the total number of reviews varies from month to month. Thus, the metric measures the normalized frequency of WOI in reviews of either sentiment category. As shown in Appendix 1.1, both positive reviews and negative reviews gradually increase overtime. We also decide to only analyze reviews after 2012, because there were too few reviews before 2012 (Appendix 1.1). We use three approaches to interpret our visualizations of the metrics.
1. Decrease of Occurrence Ratio of WOI in Positive Reviews
If a word used to have a high positive ratio, we can say it served as the strength of the business. The decrease of positive ratio indicates the restaurant is losing edge in this aspect. Based on Graph 9, Chipotle should investigate the freshness of its menu items and the quality of its burrito products.
2. Increase of Occurrence Ratio of WOI in Negative Reviews
A WOI that has a higher occurrence ratio in negative reviews indicates Chipotle may underperform in this aspect. It can be seen from Graph 10 that the occurrence ratio of “line” increases from 2012 and decreases from 2015 onward. The decrease reflects Chipotle’s launch of its mobile ordering app in 2014, which aims to reduce line. Therefore, we may infer that Chipotle’s strategy in alleviating customers’ wait times through digital ordering was a success. Moving forward, Chipotle should pursue this initiative.
3. Comparison of Occurrence Ratios of WOI in Both Reviews
If a WOI has a higher occurrence ratio in positive reviews than in negative reviews, it is a positive sentiment. We visualize “great” as the baseline (Appendix 1.2). Consequently, when a neutral WOI has a higher occurrence ratio in positive reviews than in negative reviews, it can be regarded as a positive aspect of the business. Vice versa. Graph 11 shows that both “online” and “app” are neutral words but have consistently higher occurrence ratios in negative reviews than in positive reviews. This indicates that Chipotle is underperforming in the digital commerce channel. It needs to improve its mobile ordering app and online ordering system to enhance customer buying experience.
Based on our analysis findings, we make recommendations to Chipotle in the areas of ingredient quality, wait times and digital ordering.
From topic modeling, we find that the ingredient-related topic (fresh/ingredient/quality) has the highest sentiment score, which aligns with Chipotle’s strategic advantage of providing fresh food with integrity. However, by visualizing the sentiment of the key word “fresh” over time, we discover that “fresh” is slowly disappearing in the positive reviews. This indicates that, from the perspective of consumers, Chipotle is losing its edge in sourcing fresh ingredients. Thus, Chipotle should investigate the freshness and quality of its ingredients for improvement to regain its strategic strength. On another note, we recommend Chipotle investigate its supply chain to see how to improve the quality and taste of its proteins, especially chicken, which appears very frequently in negative reviews according to the word cloud. In terms of its menu items, Chipotle also needs to investigate the current quality of its most important product, burrito, which is seen less and less in positive reviews. Some market research can also be done on burrito to see why burrito is losing its appeal to customers.
On the other hand, wait times and lines are clearly a problem at Chipotle. Both topic modeling and word cloud show that “line” is a big contributor to customers’ negative sentiment towards Chipotle. To address this, Chipotle has sought digital channels such as online ordering and mobile app ordering. The wait time issue was ameliorated by the introduction of mobile app ordering in 2014, as shown in the sentiment analysis. However, this is not enough. We find that both “online” and “app” have a more negative note in the customers’ reviews, indicating dissatisfaction with Chipotle’s digital ordering experience. In this light, Chipotle needs to improve its online ordering system and mobile app, in order to better solve the wait time problem and improve customers’ buying experience.