Data intelligence in the restaurant industry

for MCA by William Reed

  • Powerful insight and analysis of menu trends and pricing
  • Track new ingredients, cuisines and flavours on branded menus
  • Understand regional pricing differences

MCA is the leading specialist information supplier to the eating and drinking out market, providing insight and trends, market data, essential analysis and news coverage. We were challenged with the creation of a new insight product to enable users to analyse their wealth of menu data using powerful search and comparison tools.

An established food insight brand in print and online, MCA have been providing menu insights to their subscribers through quarterly reports for many years. Supplemented with downloadable data sets (usually in the form of static spreadsheets), they have established an enviable reputation for high quality research and analysis in restaurant dish and ingredient trends.

Although popular, these delivery formats left customers to manually process the majority of data to uncover specific insights, a time consuming process. Offline analysis of MCA’s data also led to gaps in the understanding of how their data was being used by customers, denying MCA a lens on their customer needs that could help improve their data service.

MCA identified an opportunity to add value through an online menu tracking tool which could provide the latest menu instantly, supplemented with analysis and reporting tools.

Outside of product opportunities, a digital subscription product would offer MCA an opportunity to streamline their internal processes. Previous incarnations of menu data were produced to tight deadlines which compressed the publishing workflow and put pressure on the team, leading to errors.

Bringing this data online was an obvious next step for the product and a foundation for further features and enhancements.

1.2 - Landing (multi facet)
MCA Menu Tracker home page

What is menu data (and why is it useful?)

At Makemedia we are used to exploring the unfamiliar. From shipping to infrastructure finance, the domains we work in are varied and usually new to us. New language, new audiences, new workflows. On this occasion we could get started from a more familiar standpoint (food is a popular subject for most, but particularly our UX team).

Understanding the project

At Makemedia we use a technique called the Project Canvas to kickoff our projects. Run as a workshop, it brings all stakeholders together with our team to test assumptions, understand roles and responsibilities, and start to demystify the value proposition and audience for the product.

The Project Canvas is a great ice breaker, and an opportunity to foster an open and collaborative relationship with our partners.

Our Project Canvas session with MCA established some clear goals and allowed us to better structure the short immersion phase planned for the start of the project. This would begin with an important activity for any product team; speaking to customers.

2016-06-23 15.51.55
Our project canvas workshop

Understanding the audience

We carried out user interviews with customers in a variety of target businesses to learn about their roles, how they use the existing data from MCA and any pain points they experience along the way.

Analysing the insights, we defined two key customer segments; food suppliers and restaurant operators.

Food suppliers are looking for potential customers by searching for menus that feature the products they supply. Restaurants and pubs are looking at competitor menus for price comparison and new dish trends. Operators are restaurants and their internal teams (marketing, development chefs, buyers) who want to keep track of menu trends, pricing trends locally and nationally, menu structure trends (dish size, course types, promotions and upsells).

Suppliers are those who sell to the restaurant industry, usually those supplying ingredients wholesale. They may specialise in a particular area or have a broad offering. Their area of interest is ingredient usage trends and identifying prospects to market their product toward.

In addition to these there were internal users at MCA to consider; editorial staff, researchers and data operators all needed to be considered as part of the product design. Designing the right workflow and tools for managing any digital product can improve productivity for those maintaining data, freeing their time for more valuable work.

With our personas as a starting point, we documented the journeys users might take to find relevant menu pricing data. Examples included “how are our promotions performing against competitors?” and “how popular is Hawaiian food?”

From here we started sketching out pages and features, starting with the pages aimed at external users, followed by the pages that MCA employees will use to input the menus. We aimed to create features that would handle as much as possible of the manual analysis that users currently undertake offline, usually in Excel. One measure of success for this application would be a reduction in time spent processing data, with users getting to the information they need more quickly.


Information Architecture

MCA’s data research team created a comprehensive taxonomy for menus and dishes which was incorporated into our designs. Dishes are tagged with a variety of keywords that users can then filter by, this gives the user the power to find quite specific dishes e.g. find all gluten-free chip side dishes served by chain pubs or compare menus to find the most popular fish dish served. In addition to the filters we have also provided a keyword search for dish names and descriptions.

Through our user research it became apparent that a high priority for users is the ability to compare dishes and menus for prices and trends. We created a comparison tool that allows users to compare dishes by channel (restaurant, pub, chain etc), brand, season, cuisine type, course, time of day, price and region.

compare wireframe
Wireframe for the comparison tool

Technical transformation, ReactJS and Elasticsearch

The technical stack chosen for the MCA project is comprised from the following technologies:

  • ReactJS SPA using Redux
  • ASP.Net C# Web API
  • Elasticsearch
  • SQL Server
  • Auth0
  • Azure
  • AppVeyor

ReactJS is a JavaScript framework used to implement highly interactive and performant single page applications. It was a natural choice for the MCA site to support the multi-faceted search UI. The SPA communicates with an ASP.Net Web API in the back-end written in C#. In order to achieve a fast search response we index all the menu data into Elasticsearch, this allows us to easily query against the different facets in the data and also to run free text searches to help users zero in on the menu items relevant to them. We can also run aggregations against the Elasticsearch index to help build reports over the data set.

We use SQL server as the source of all menu data, building and updating the Elastic index based on the SQL database. Having both SQL and Elasticsearch allows us to benefit from the relational database functionality offered by SQL to maintain the hierarchical structure of the data, whilst allowing us super-fast search over the flattened documents in Elastic.

As MCA did not have an existing user authentication system in place, a low-cost and easy-to-implement option was selected in the form of Auth0 – a provider of authentication as a service. Auth0 provides many ways to manage user logins, integrate with existing systems and rules to validate and redirect users. It does a lot of the leg-work for you and even provides login forms, sign up and password reset functionality out of the box to plug straight into your site. It was a great fit for the MCA project, and it meant our team could focus on developing features rather than spending time developing a custom authentication system.

The solution is hosted in Azure using their web app and SQL hosting options. Integration with this was made even easier as the API is built in .Net so we could make use of the web deploy functionality to easily deploy new releases to the staging and production sites. The continuous integration and deployments are managed in AppVeyor – this is a tool that will build the solution, run all tests, package up the artefacts needed for deployment and, when ready, deploy the website to the staging or production environments. This makes the deployments repeatable and any issues with the build or automated tests are flagged early.

Launch and delivery

Working to a tight deadline for delivery we began by documenting the designs through user stories and acceptance criteria which were added to JIRA and estimated by our developers. User stories were prioritised using the MoSCoW approach; what features are ‘Must have’, ‘Should have’, ‘Could have’, ‘Won’t have’. Low priority features were de-scoped from the initial delivery but are ready to be included in future releases.

During development we had 3 releases to enable us and MCA’s subject matter experts to test before the official launch. This also allowed the master data to be created and menu data to be imported before development was complete.

The project delivery date was constrained by an industry conference where Menu Tracker was successfully launched to potential clients, after which demos and trial access was given to customers and we were able to respond to early feedback. Since then customers have taken out paid subscriptions to the product and we will shortly be working on the next iteration.

MCA Menu Tracker results expanded
Search results page
Back to top