In “How to Keep Hold of Your Customers”, our latest report exploring the subject of shopper loyalty, we discussed three of the biggest questions that retailers need to ask about their loyalty programme. In this follow-up blog, Debora Franchim — dunnhumby’s Director of Loyalty and Personalisation — covers another: “just how do you measure the profitability of a loyalty programme?”
Thirty years. That’s how long it’s been since Tesco’s Clubcard changed the face of grocery loyalty. Stamps and other basic rewards were around before that, of course, but 1995 was the year in which the possibilities of a data-driven approach to loyalty became truly apparent. Since then, numerous retailers around the world have launched similar initiatives, and loyalty programmes continue to grow both in terms of uptake and sophistication.
It’s surprising, then, that — even after all this time — the value that loyalty programmes deliver still gets called into question. While the majority of grocery retailers in developed markets now offer some kind of rewards programme, the logic of that decision doesn’t go unquestioned, particularly in tougher economic conditions. Because of that, it’s important for retailers to have a good understanding of just how profitable their loyalty programme really is.
As with many things in retail, getting to the heart of a loyalty programme’s profitability isn’t as easy as it might first seem. Traditional profit and loss (P&L) accounting is still par for the course within most grocery retail organisations today, something that tends to skew the way in which loyalty programmes are viewed. There are two reasons for that:
In summary, it’s easy to prove the losses caused by a loyalty programme, and hard to prove the gains. Hardly surprising, then, that loyalty initiatives are sometimes looked on with suspicion by senior execs, not least the CFO. And let’s be clear, challenging investments is entirely healthy. The key is to balance it with a better — and balanced — approach to measurement.
While the costs of a loyalty programme might occupy a single line on a balance sheet, the true value it delivers is far more nuanced. Even at the most basic level, there are two “kinds” of value that we can attribute to a loyalty programme:
There are a couple of important considerations here. Firstly (and fairly obviously), if you’re going to measure the profitability of a loyalty programme then you have to measure both of these streams; you can’t just focus on one or the other. Secondly, it’s important to remember that these “value layers” are linked. Reduce investment into a programme (or even cancel it altogether) and you’re going to lose both the transactional and transformational value that it generates.
Measurement of loyalty programmes is important, then. But how best to do it? At dunnhumby, that’s a question that we’ve spent decades refining the answer to. Today, there are three key ways to measure a programme’s effectiveness.
Control groups are used to restrict exposure to a programme or activity. Essentially, some customers receive loyalty communications, while others don’t. A comparison between the behaviours of the two groups helps to prove the effectiveness of a loyalty programme. At times it will not measure the entireness of a programme, because some mechanics are available to all customers – such as points distribution – but it is effective to measure the engagement with customers and personalisation that are part of the loyalty programme.
This technique works in much the same way as the above. Some customers use digital touchpoints (like apps and personalised offers), and others don’t. That gives retailers another way to compare behaviours from “exposed” and “unexposed” shoppers.
In specific periods of time, customers who interacted with the programme, especially going to the moments of truth (such as a reward redemption), are separated in a group. Then, a retrospective algorithm identifies customers with the same purchase behaviour in the pre-period. The comparison between the two groups can be considered gains of the loyalty program. The benefit of this approach is not having to hold back a control upfront, but the risk is not finding similar customers if the program penetration is too high.
Regardless of the method, the halo effect must always be considered. The result of a loyalty programme comes from the entire customer behaviour change, not only from a single campaign, activation or product. Say a customer earns points on fresh produce. Over time, they eventually start to buy more from the fresh category overall, not just the products they bought originally. That’s the halo effect, and it’s indicative of long-term, loyalty-driven behavioural change.
Even today — with all of the tools and technologies that we have at our disposal — it isn’t always possible to measure all of those things perfectly. Time and time again, however, we’ve seen that even small steps here can help to build up a better picture of a loyalty programme’s value. And that’s critically important when we consider one of the other big challenges here: continuity.
When it comes to loyalty, longevity and trust go hand-in-hand. For a programme to stand the test of time, a retailer’s leadership team needs to trust in its performance. Those teams are subject to frequent change, however — and incoming execs can bring different experiences and expectations to bear on a loyalty programme.
This is another reason that measurement is so important: it ensures (or at least helps to ensure) that the profitability of a loyalty programme doesn’t need to be re-proven every time there’s a change at the top. As I said earlier, challenges are healthy, and these programmes cannot be run on faith. But nor should they be abandoned on impulse — something that a disciplined approach to measurement can prevent from happening.
When times get tough, a loyalty programme can indeed mistakenly start to look like a loss. But cutting it indiscriminately will only ever cost more than it saves. Loyalty isn’t just a scheme or a programme; it’s a long-term strategic asset.
Want to dive deeper into the future of loyalty and personalisation? How to Keep Hold of Your Customers is dunnhumby’s latest global report, packed with insights from senior retail leaders across Europe and North America. With expert commentary and practical guidance, it explores how loyalty strategies are evolving in a rapidly changing, AI-driven landscape.
Download the full report today to see how you can stay ahead.
Explore how AI-powered loyalty programmes enhance customer experiences and drive sales with dunnhumby’s personalised, data-driven solutions.
Create experiences that deliver long-term loyalty and customer valueDiscover how to future-proof loyalty and personalisation in dunnhumby’s latest global report — download now.
Something went wrong, please try again.
Thank you! Your copy of the report opened in a new tab. If you have trouble viewing it, click here.
Cookie | Description |
---|---|
cli_user_preference | The cookie is set by the GDPR Cookie Consent plugin and is used to store the yes/no selection the consent given for cookie usage. It does not store any personal data. |
cookielawinfo-checkbox-advertisement | Set by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Advertisement" category . |
cookielawinfo-checkbox-analytics | Set by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Analytics" category . |
cookielawinfo-checkbox-necessary | This cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary". |
CookieLawInfoConsent | The cookie is set by the GDPR Cookie Consent plugin and is used to store the summary of the consent given for cookie usage. It does not store any personal data. |
viewed_cookie_policy | The cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data. |
wsaffinity | Set by the dunnhumby website, that allows all subsequent traffic and requests from an initial client session to be passed to the same server in the pool. Session affinity is also referred to as session persistence, server affinity, server persistence, or server sticky. |
Cookie | Description |
---|---|
wordpress_test_cookie | WordPress cookie to read if cookies can be placed, and lasts for the session. |
wp_lang | This cookie is used to remember the language chosen by the user while browsing. |
Cookie | Description |
---|---|
fs_cid | Set by FullStory to correlate sessions for diagnostics and session consistency; not always set. |
fs_lua | Set by FullStory to record the time of the user’s last activity, helping manage session timeouts. |
fs_session | Set by FullStory to manage session flow and recording. Not always visible or applicable across all implementations. |
fs_uid | Set by FullStory to uniquely identify a user’s browser. Used for session replay and user analytics. Does not contain personal data directly. |
VISITOR_INFO1_LIVE | Set by YouTube to estimate user bandwidth and improve video quality by adjusting playback speed. |
VISITOR_PRIVACY_METADATA | Set by YouTube to store privacy preferences and metadata related to user consent and settings. |
vuid | Vimeo installs this cookie to collect tracking information by setting a unique ID to embed videos to the website. |
YSC | Set by YouTube to track user sessions and maintain video playback state during a browser session. |
_ga | The _ga cookie, installed by Google Analytics, calculates visitor, session and campaign data and also keeps track of site usage for the site's analytics report. The cookie stores information anonymously and assigns a randomly generated number to recognise unique visitors. |
_ga_* | Set by Google Analytics to persist session state. |
_gid | Installed by Google Analytics, _gid cookie stores information on how visitors use a website, while also creating an analytics report of the website's performance. Some of the data that are collected include the number of visitors, their source, and the pages they visit anonymously. |
_lfa | This cookie is set by the provider Leadfeeder to identify the IP address of devices visiting the website, in order to retarget multiple users routing from the same IP address. |
__Secure-ROLLOUT_TOKEN | YouTube sets this cookie via embedded videos to manage feature rollouts. |
Cookie | Description |
---|---|
aam_uuid | Set by LinkedIn, for ID sync for Adobe Audience Manager. |
AEC | Set by Google, ‘AEC’ cookies ensure that requests within a browsing session are made by the user, and not by other sites. These cookies prevent malicious sites from acting on behalf of a user without that user’s knowledge. |
AMCVS_14215E3D5995C57C0A495C55%40AdobeOrg | Set by LinkedIn, indicates the start of a session for Adobe Experience Cloud. |
AMCV_14215E3D5995C57C0A495C55%40AdobeOrg | Set by LinkedIn, Unique Identifier for Adobe Experience Cloud. |
AnalyticsSyncHistory | Set by LinkedIn, used to store information about the time a sync with the lms_analytics cookie took place for users in the Designated Countries (which LinkedIn determines as European Union (EU), European Economic Area (EEA), and Switzerland). |
bcookie | LinkedIn sets this cookie from LinkedIn share buttons and ad tags to recognise browser ID. |
bscookie | LinkedIn sets this cookie to store performed actions on the website. |
DV | Set by Google, used for the purpose of targeted advertising, to collect information about how visitors use our site. |
ELOQUA | This cookie is set by Eloqua Marketing Automation Tool. It contains a unique identifier to recognise returning visitors and track their visit data across multiple visits and multiple OpenText Websites. This data is logged in pseudonymised form, unless a visitor provides us with their personal data through creating a profile, such as when signing up for events or for downloading information that is not available to the public. |
gpv_pn | Set by LinkedIn, used to retain and fetch previous page visited in Adobe Analytics. |
lang | Session-based cookie, set by LinkedIn, used to set default locale/language. |
lidc | Set by LinkedIn, used for routing from Share buttons and ad tags. |
lidc | LinkedIn sets the lidc cookie to facilitate data center selection. |
li_gc | Set by LinkedIn to store consent of guests regarding the use of cookies for non-essential purposes. |
li_sugr | Set by LinkedIn, used to make a probabilistic match of a user's identity outside the Designated Countries (which LinkedIn determines as European Union (EU), European Economic Area (EEA), and Switzerland). |
lms_analytics | Set by LinkedIn to identify LinkedIn Members in the Designated Countries (which LinkedIn determines as European Union (EU), European Economic Area (EEA), and Switzerland) for analytics. |
NID | Set by Google, registers a unique ID that identifies a returning user’s device. The ID is used for targeted ads. |
OGP / OGPC | Set by Google, cookie enables the functionality of Google Maps. |
OTZ | Set by Google, used to support Google’s advertising services. This cookie is used by Google Analytics to provide an analysis of website visitors in aggregate. |
s_cc | Set by LinkedIn, used to determine if cookies are enabled for Adobe Analytics. |
s_ips | Set by LinkedIn, tracks percent of page viewed. |
s_plt | Set by LinkedIn, this cookie tracks the time that the previous page took to load. |
s_pltp | Set by LinkedIn, this cookie provides page name value (URL) for use by Adobe Analytics. |
s_ppv | Set by LinkedIn, used by Adobe Analytics to retain and fetch what percentage of a page was viewed. |
s_sq | Set by LinkedIn, used to store information about the previous link that was clicked on by the user by Adobe Analytics. |
s_tp | Set by LinkedIn, this cookie measures a visitor’s scroll activity to see how much of a page they view before moving on to another page. |
s_tslv | Set by LinkedIn, used to retain and fetch time since last visit in Adobe Analytics. |
test_cookie | Set by doubleclick.net (part of Google), the purpose of the cookie is to determine if the users' browser supports cookies. |
U | Set by LinkedIn, Browser Identifier for users outside the Designated Countries (which LinkedIn determines as European Union (EU), European Economic Area (EEA), and Switzerland). |
UserMatchHistory | LinkedIn sets this cookie for LinkedIn Ads ID syncing. |
UserMatchHistory | This cookie is used by LinkedIn Ads to help dunnhumby measure advertising performance. More information can be found in their cookie policy. |
yt-remote-connected-devices | YouTube sets this cookie to store the video preferences of the user using embedded YouTube video. |
_gcl_au | Set by Google Tag Manager to store and track conversion events. It is typically associated with Google Ads, but may be set even if no active ad campaigns are running, especially when GTM is configured with default settings. The cookie helps measure the effectiveness of ad clicks in relation to site actions. |