Loyalty Metrics Dashboard

Jira Initiative

 

Project Status

In progress

Created On

Jan 18, 2024

Due Date

TBD

Document Owner

@Rainey Guo

Project Team

Digital Loyalty

@Rainey Guo @Adrian Monk @Lavanya Davluri @Rayand Ramlal

Engineering

@Anirudha Porwal

Project Overview

The aim of this project is to develop a functional dashboard that provides a snapshot of key metrics for stakeholders on the Digital and Leadership Teams. The existing process to provide these metrics ad hoc requires significant manual intervention by the analytics team. Thus, the dashboard should display a feed of the metrics that the digital team already tracks on an ad-hoc basis. The end-users of the dashboard are anticipated to be the Digital & Loyalty Growth and executive leadership teams. However, based on the rate of uptake, users across the broader organization may utilize the dashboard as the need arises. 

Requirements

The following outlines details of each of the requested dashboard views and should inform the development of the underlying data models to power the use case. Note that the analysis should be limited to TH Canada and Canadian Loyalty Guests.

View #1: Points Issuance & Redemption

image-20240122-200707.png
Figure 1: Sample Dashboard View #1 (for illustrative purposes only)

 

As depicted in the illustrative sample view above, this dashboard view should include:

User Inputs: Dashboard users will be able to input their desired reporting range by selecting the following:

1. [Start Date] A feature to allow the user to select a start date of the analysis, expressed in the format yyyy/mm/dd. This will represent the start date of the date range being examined by the user.

2. [End Date] A feature to allow the user to select an end date of the analysis, expressed in the format yyyy/mm/dd. This will represent the end date of the date range being examined by the user. This date range - along with all others across the dashboard views - should always default to YTD, unless specifically noted otherwise.

Time Series 1 of 3: Total Points Issued Over Time  

The first time series, Total Points Issued Over Time, is intended to show the user how the total number of points that have been issued to guests fluctuates across the user’s selected reporting timeframe. The user will have the option to filter for the desired view of the data; specifically, they will be able to view total points issued split out by the different points types (Restaurant, FS/Partner, Hockey Challenge, Word Challenge, Offers, Campaign, Guest Care, etc.), and total points issued split out by earning means (eg. app scans, digital wallet scans, plastic Tims Card scans). This chart will feature a stacked bar chart, where the y-axis will represent count of points issued; each portion of the stacked bar will correspond to either the number of points issued per point type, or the number of points issued per earning means, depending on which view the user selects. The sum of all the points per point type or earning means should amount to the total points issued, which is represented by the value of the entire stacked bar. Users will have the option to drill up or down on their desired reporting cadence (eg., daily, weekly, monthly, quarterly, annually). The x-axis will display the days/weeks/months of the user’s selected reporting range, depending on which reporting cadence that the user drills down to.  

In addition to this “points” view, users will also have the option to engage with a “guest” view. In this guest view, the user can add the same filters available in the points view (in Figure 1, “Points View” is toggled on; the “guest” view should be shown by toggling on “Guest View” instead). If the user chooses to view total guests who earned points split out by different points types, the y-axis of the stacked bar chart will represent count of guests, each portion of the stacked bar will represent the guests who earned points through each channel (restaurant, FS, guest care, etc.), and the entire bar will represent the total number of guests who earned points in the user’s selected reporting range.  

Using these views, the user should be able to determine the average number of points earned by a guest in any given reporting range, by taking the total number of points that were issued during a certain time period and dividing it by the total number of guests in that same time period. Furthermore, in both views, the user should have the option to filter results by province, allowing them to see total points issued or total guests who were issued points within a certain province.

The "Points View" and "Guest View" time series have numerous use cases, serving as the primary barometer of the overall health of the Rewards Program (both Core Loyalty and Financial Services). These time series will aid the Loyalty Growth and Leadership team measure the size and growth of different earn channels over time. Furthermore, they provide value in specific use cases such as evaluating the impact of key initiatives and campaigns like RUTW, monitoring Guest Care point issuance over time, and will aid in the evaluation of Loyalty 4.0 initiatives such as plastic devaluation in the future. Lastly, they provide the business with the ability to identify significant technical issues related to points issuance.

Time Series 2 of 3: Total Points Redeemed Over Time 

The second time series, Total Points Redeemed Over Time, is intended to show the user how the total number of points that have been redeemed by guests fluctuates across the user’s selected reporting timeframe. Users will have the option to drill up or down on their desired reporting cadence (eg., daily, weekly, monthly, quarterly, annually). This chart will also feature a stacked bar chart; however, the y-axis in this chart will represent count of points redeemed; each portion of the stacked bar will correspond to the number of points redeemed by all guests, split out by redemption tier. The sum of all the points redeemed per tier should amount to the total points redeemed, which is represented by the value of the entire stacked bar. Users will have the option to drill up or down on their desired reporting cadence (eg., daily, weekly, monthly, quarterly, annually). The x-axis will display the days/weeks/months of the user’s selected reporting range, depending on which reporting cadence that the user drills down to.  Similar to the previous chart, the user should have the option to filter results by province, allowing them to see total points redeemed within a certain province.

This time series provides significant value, furthering a deep understanding of the performance of the various Loyalty tiers. By tracking the points burned by each tier will provide real-time insights into Guest movement across tiers, helping the Loyalty team measure the success of new initiatives introduced in the Program. For example, determining key metrics for success Guest response to a new Flatbread tier, including total adoption, cannibalization from other tiers, and net impact to Restaurant Owners given average F&P costs. Furthermore, it will allow us to assess the impact of Loyalty 4.0 in the future; particularly the success of the Cashback tier when introduced. With a data-driven approach, we can make informed decisions and enhance the overall effectiveness of our Core Loyalty program. 

Time Series 3 of 3: Total Redemptions Over Time 

The third time series in the Points Issuance & Redemption dashboard view is Total Points Redeemed Over Time. This chart is intended to show the user the total number of redemptions that have been made across the user’s selected reporting timeframe. This chart will feature a bar chart, whereby the y-axis represents the count of transactions that have been made where the guest has redeemed their points for a reward. Users will have the option to drill up or down on their desired reporting cadence (eg., daily, weekly, monthly, quarterly, annually). Users will have the option to drill up or down on their desired reporting cadence (eg., daily, weekly, monthly, quarterly, annually). The x-axis will display the days/weeks/months of the user’s selected reporting range, depending on which reporting cadence that the user drills down to.  Similar to the previous chart, the user should have the option to filter results by province, allowing them to see total points redemptions within a certain province for the selected timeframe.

The use case for this time series will serve as another barometer for the overall health of the Loyalty Program. It will provide the Loyalty Growth and Leadership teams the ability to track redemption trends, assess impact on total costs to Restaurant Owners (by combining data in this time series with that in Time Series 2: Total Points Redeemed Over Time). Similarly to Time Series 2: Total Points Redeemed Over Time, this time series will allow stakeholders to measure the success of new initiatives in the Loyalty program by analyzing the increase redemptions driven by initiatives such as the new Cashback tier, Flatbread tier, or LTOs tiers. 

 

View #2: Loyalty Guests

image-20240124-142800.png
Figure 2: Sample Dashboard View #2 (for illustrative purposes only)

 

As depicted in the illustrative sample view above, this dashboard view should include:

User Inputs: Dashboard users will be able to input their desired reporting range by selecting the following:

1. [Start Date] A feature to allow the user to select a start date of the analysis, expressed in the format yyyy/mm/dd. This will represent the start date of the date range being examined by the user.

2. [End Date] A feature to allow the user to select an end date of the analysis, expressed in the format yyyy/mm/dd. This will represent the end date of the date range being examined by the user. This date range - along with all others across the dashboard views - should always default to YTD, unless specifically noted otherwise.

Time Series 1 of 2: Guests who Earned and Redeemed Points Over Time 

The first time series, Guests who Earned and Redeemed Points Over Time, is intended to show the user how the total number of guests who have earned points and the total number of guests who have redeemed their points fluctuate across the user’s selected reporting timeframe. This chart will feature a clustered bar chart, where the y-axis will represent count of guests. One series of bars will represent the count of guests who have earned points in the user’s specified timeframe, while the other series will represent the count of guests who have redeemed points in that same timeframe. As long as a guest has earned points once, they will be counted in the “Earned” bar; as long as a guest has redeemed points once, they will be counted in the “Burned” bar. Thus, given that a guest can both earn and redeem points within a given day/week/month/year, a guest can be accounted for in both bars simultaneously; that is, the bars are not mutually exclusive. Users will have the option to drill up or down on their desired reporting cadence (eg., daily, weekly, monthly, quarterly, annually). The x-axis will display the days/weeks/months of the user’s selected reporting range, depending on which reporting cadence that the user drills down to.  Similar to the previous charts, the user should have the option to filter results by province, allowing them to see total points redeemed within a certain province.

This time series will serve as a measure of guest engagement. We can gain valuable insights into how engaged our guests are with our services and offerings, helping us identify trends, patterns, and areas for improvement.  

Time Series 2 of 2: Guests who Interacted with App Games Over Time 

Interaction: occurs when a guest enters the app and opens/clicks into the specific game (Hockey, Word, RUTW); the guest does not have to complete the game or earn any points in order for the event to be classified as an interaction.

The second time series, Guests who Interacted with App Games Over Time, is intended to show the user how the number of guests who interact with the in-app games fluctuates across the user’s selected reporting timeframe. This chart will also feature a clustered bar chart; however, the y-axis in this chart will represent count of guests; bar in the cluster will correspond to the number of guests who have had at least one interaction with each game in the user’s selected reporting timeframe. Note that a single user can be represented in more than bar; if they have interacted at least once with Hockey and Word Challenge, they will be counted in both bars; that is, these counts should not be mutually exclusive. Users will have the option to drill up or down on their desired reporting cadence (eg., daily, weekly, monthly, quarterly, annually). The x-axis will display the days/weeks/months of the user’s selected reporting range, depending on which reporting cadence that the user drills down to.  Similar to the previous chart, the user should have the option to filter results by province, allowing them to see total game interactions within a certain province.

This time series will all for stakeholders to analyze the performance of games over time. Insights can be gained on the performance of updates and new features, tacking their impact on Guest engagement. In the near term this would include general bug fixes, Hockey Challenge Power Picks, Word Challenge Hints, and more. In the longer term, this can be used to identify long term trends to inform the strategy surrounding TimPlay.

Chart 1 of 2: Bankers vs. Redeemers 

The next series of charts in this view will not be time series, but rather charts that display snapshots of data at a given point in time. The first chart, Bankers vs. Redeemers, is intended to show the user the number of guests who are currently bankers, compared to the number of guests who are currently redeemers, based on the following criteria:

Banker: a guest who has toggled off the “Redeem my Points” option in their in-app “Rewards” setting; this allows them to bank their points to save for future redemptions on transactions.

Redeemer: a guest who has toggled on the “Redeem my Points” option in their in-app “Rewards” setting; this allows them to redeem their points for an item at their chosen reward level/redemption tier

The y-axis on this chart will represent count of guests. The x-axis will not feature a time range, given that the data for bankers and redeemers can only show “snapshots” of a given point in time that the data is refreshed for. One bar will represent the number of guests who are bankers at this given time, while the other bar will represent the number of redeemers at the given time. Note that a single guest cannot be simultaneously a banker and a redeemer; the counts represented by the bars should be mutually exclusive. Similar to the previous charts, the user should have the option to filter results by province, allowing them to see total banking guests vs. redeeming guests within a certain province.

Chart 2 of 2: Top 5 App Features 

The second chart, Top 5 App Features, is intended to show the user the top five features that guests are interacting with in the app. While this chart is not a time series, it is able to show data for a set range of time that the user selects (e.g. “January” or “October 1st to 15th, 2023”). The y-axis will represent count of guests while the x-axis will display the top 5 app features in descending order of count of guests interacting with the feature. Note that a single guest can be represented in more than one bar; if a guest has made a MO&P order and used their loyalty scans, they will be represented in the bars for both the “Order” and “Scan” features.

The use case for this time series will primarily focus on analyzing the performance of features over time. By correlating the growth in active users with the growth of specific features, we aim to gain a better understanding of which features drive MAU. As trends emerge, stakeholders will gain a better understanding of which features promote “stickiness” and keep our Guests engaged with the app. Additionally, this time series will help assess the success of key initiatives on the fly such as the Scan & Pay Sweepstakes on Scan & Pay penetration - a function which was previously serviced by the Digital Analytics team. 

View #3: Expiry & Inactivity

As depicted in the illustrative sample view above, this dashboard view should include:

User Inputs: Dashboard users will be able to input their desired reporting range by selecting the following:

1. [Start Date] A feature to allow the user to select a start date of the analysis, expressed in the format yyyy/mm/dd. This will represent the start date of the date range being examined by the user.

2. [End Date] A feature to allow the user to select an end date of the analysis, expressed in the format yyyy/mm/dd. This will represent the end date of the date range being examined by the user. This date range - along with all others across the dashboard views - should always default to YTD, unless specifically noted otherwise.

Time Series 1 of 1: Total Points Expiring

This dashboard view will only feature one time series chart, Total Points Expiring, which is intended to show the user how the number of points that are expiring fluctuate across the user’s selected timeframe, as well as how the number of guests who have expiring points fluctuate across the user’s selected timeframe. The chart will feature a line superimposed on a bar chart, where by the bars will represent the count of expiring points while the line will represent the count of guests who have expiring points. The x-axis will display the days/weeks/months of the user’s selected reporting range, depending on which reporting cadence that the user drills down to. With reference to Figure 3, the January bar shows the number of points that are set to expire within January, while the point on the line that crosses January shows the number of guests who have any points that are set to expire within January. Similar to the previous charts, the user should have the option to filter results by province, allowing them to see total points redeemed within a certain province.

This time series gives the Loyalty Growth and Leadership teams visibility on how many points leave the Loyalty system. It is important to monitor this data for our upcoming switch to inactivity from our current expiry policy in Loyalty 4.0. 

Technical Specification

To meet the objective of the initiative, Data Engineering will support with the following:

  • Translate requirements into a plan with engineering activities to meet due date.

  • Guest cohort is limited to digital loyalty guests with purchases in Canada, and should exclude charity related purchases.

  • Engage with project team to clarify any assumptions or initiative objectives, as well as to provide the project team with regular & ongoing updates on progress.

  • Complete the data governance requirements for the project.

  • Conduct the appropriate quality assurance (“QA”) activities to ensure metrics are accurate.

  • Provide support and ongoing maintenance of the data models and dashboards.

Risks

  1. Project timeline overrun: as a high-priority project, with executive-level interest, adherence to the overall project timeline is the most significant risk of the project.

  2. Inaccurate data: as the dashboard is anticipated to influence TH Digital & Loyalty decision-making, the accuracy of the data is paramount.