Back
Blog
Offers

Six Questions To Ask Before Launching a Bank Loyalty or Rewards Program 

Blame it on Netflix, Spotify and Amazon. These giants have perfected the art of customizing offers and rewards and promoting them to customers in every interaction. Consumers love it. And they are beginning to expect it from every business they engage with, including their bank.  

 

It’s not just streaming music companies or online shopping sites that are aggressively using offers and rewards, though. Financial disrupters like Chime, which doesn’t have a single branch or ATM, are capturing the hearts of consumers, too, with smooth, intuitive experiences and products that resonate with the way they do life. Banks can’t afford to sit back doing things the same way they have for decades. With new customer acquisition costs averaging $300, it’s imperative for banks to retain those they have by offering products and experiences that appear to be custom-built for every single customer at every stage of life. That requires data and technology that can support those journeys. 

 

Zafin’s experts in offers and rewards implementation shared the six questions they recommend every bank ask before they launch a new promotional offer or loyalty program. 

1. What is the primary objective for introducing a loyalty or relationship pricing program or promotional offer? 

Determine your goals for a loyalty program with an initial assessment of the status quo. Where is your bank successfully achieving strategic goals and what areas are falling short? An informal audit highlights opportunity gaps where a preferred offer or loyalty/reward program could strengthen performance.  

 

Typical high-level objectives for new loyalty programs or promotional offers include increasing share of wallet, boosting account utilization, reducing customer attrition, attracting new households, deposit dollars or loan balances, or improving customer experience scores. 

2. How well can our current legacy technology enable new rewards or promotional offers?  

This is also the opportune time to assess existing bank IT resources and infrastructure to analyze whether it can support offer management, notes Fares Raad, Zafin’s Senior Vice President of Solutions Consulting who has worked with dozens on global banks on product and pricing implementations. 

A detailed IT audit should ask the following questions: 

  • What systems of record are already in use? Where are they located within the bank? 
  • How well do current bank systems integrate with one another and share customer data? 
  • What is their capability to absorb and fulfill a new loyalty or reward program with exacting standards?  
  • How secure, efficient, and functional is the current IT infrastructure relative to managing offers and rewards?  
  • Can legacy technology flex to expand capacity and scope if your rewards and loyalty initiatives scale up or evolve to meet customer expectations? 
  • Do bank legacy systems have the capabilities to deliver transparency to the customer about their status in real-time or comprehensive regulatory reporting on-demand? 

The answers to these questions will identify gaps in bank technology that may best be remedied by partnering with a best-of-breed provider, one who specializes in integrating with existing core banking systems. 

3. Do we have to augment our operations team to monitor conditions and complete fulfillment in a timely manner?

If there are gaps in existing legacy technology, there will likely be additional burdens on the operations team to fulfill rewards or special offers with manual processes or new workflows that rely on robust IT support; the creation of user-generated tools including spreadsheets extracts and data exports; and workflows that require various divisions to push information out across channels.  

 

Because of the manual nature of the processes, there may be a time lag between fulfillment of reward criteria and payout, particularly at the end of the month when other bank processing and reporting tasks are higher priorities. How will that sit with customers? Will it add to expenses? Can the program generate enough profit to offset the costs of manual management? 

4. How will we manage offer governance to ensure payouts match eligibility criteria and we can support regulatory requests/reporting? 

Rewards programs require intensive data handling and analysis. Raad points out, “Banks need to ask themselves if they have easy access to comprehensive data that allows them to fully monitor customer behavior against the conditions of the offer.”  

 

They also need to have sight lines and the ability to communicate proactively to customers about their reward status, to ensure a satisfactory customer experience. Typical activities that are monitored include:  number of transactions, type of transactions, the value of certain transactions in specific channels, and more. Bank systems of record don’t capture these granular data points in a centralized location, which makes it difficult to review, report and fulfill offers in real-time. 

“Banks need to ask themselves if they have easy access to comprehensive data that allows them to fully monitor customer behavior against the conditions of the offer.”
– Fares Raad, Zafin Senior Vice President Solutions Consulting

“One solution is for a bank to partner with a provider like Zafin,” said Raad, “that simplifies and automates offer management using an out-of-the-box rules framework to streamline rewards monitoring and fulfillment.  Zafin’s SaaS platform externalizes product and pricing from legacy core systems into a middle layer, which gives financial institutions nearly unlimited flexibility.”  

 

Zafin’s Offers Management solution, in particular, captures customer behavior activity and compares it automatically against pre-set conditions to determine if a payout should occur. Rewards are then posted to the customer account immediately or at the intervals set by the bank.   

5. Do we have the ability to proactively and transparently communicate reward progress to customers in all of our delivery channels, including why they may not have received rewards?   

By surfacing the data in a middle layer, it becomes accessible to all of the banks systems and delivery channels, making it easier to communicate account and reward status to customers in their preferred channels.  

 

“When rewards data is made available in real time through APIs it (1) allows customers to track their progress on enrolled offers and learn why they didn’t qualify through self-service, customer-preferred channels and (2) empowers customer service representatives to respond to customer questions with accurate and up-to-date information,” explained Raad. 

80% of banks don’t have the tech in place they need to meet consumer demands for user experience.

With full access to customer data, banks have a more complete picture of a customer’s potential, which can drive additional, relevant offers, based on account activity. And in fact, many consumers welcome these financial recommendations. According to a report from BAI,

8 out of 10 Millennials say they are comfortable receiving financial advice digitally.opens PDF file

6. How should we monitor the performance of our offers?  

Does your current infrastructure offer analytics or dashboards that provide learnings, at a glance, on the success of your rewards program? There will be an abundance of rich data generated that is essential to capture and turn into actionable insights to fine-tune the offer.  Are you targeting the right audience or the right geography? What’s your conversion ratio? What’s the program cost compared to profit?

 

Dashboards turn raw data into usable knowledge that can be acted upon to adjust campaigns and offers to make them more effective and profitable.  

Only 7% of banks are fully leveraging key analytics.

Bonus Question for Canadian banks:
Do our current systems comply with Bill C-86 to notify clients about expiring promotions?
 

The amendment to the Bank Act, Bill C-86, requires Canadian banks to communicate notifications to customers in real-time if a special offer is due to expire or there will be an adverse event on their account, such as an insufficient funds charge. The goal is to provide them with advance information so they can take action to avoid a negative financial event before it takes place. 

 

Zafin has been working with a number of Canadian banks, leveraging our product and pricing platform, to set up Bill C-86 real-time notifications. Our platform helps banks monitor expiration dates as well as account activity and automatically triggers an alert event which is pushed out to the customer’s preferred channels to generate a real-time notification. Banks working with Zafin to comply with Bill C-86 can implement real-time notifications more quickly than building them internally – often in less than three months – and for less cost.  

Highly satisfied customers are two and a half times more likely to open new accounts/products with their existing bank than customers who are merely satisfied.

Conclusion:

Successful implementation of rewards, loyalty programs, relationship pricing and product bundles can cement loyalty in current customers by showing appreciation for their ongoing relationship with your bank. By choosing best-in-class providers to help level up your offer management and relationship pricing efforts, you can launch your program in months, not year. And you can transform your bank to take advantage of ever-changing market and competitive pressures, as well as to meet growing customer expectations.

Zafin’s SaaS product and pricing platform has been recognized with numerous awards and it’s the leading product and pricing engine for financial institutions. We partner with some of the most prestigious innovators in the world to accelerate digital transformation.

 

To learn more about how your financial institution could implement differentiated offers and rewards, visit our Offers and Rewards solution page.

 

[gravityforms id="8" ajax="true" title=”false” description=”false”]
<script type="text/javascript">if(!gform){document.addEventListener("gform_main_scripts_loaded",function(){gform.scriptsLoaded=!0}),window.addEventListener("DOMContentLoaded",function(){gform.domLoaded=!0});var gform={domLoaded:!1,scriptsLoaded:!1,initializeOnLoaded:function(o){gform.domLoaded&&gform.scriptsLoaded?o():!gform.domLoaded&&gform.scriptsLoaded?window.addEventListener("DOMContentLoaded",o):document.addEventListener("gform_main_scripts_loaded",o)},hooks:{action:{},filter:{}},addAction:function(o,n,r,t){gform.addHook("action",o,n,r,t)},addFilter:function(o,n,r,t){gform.addHook("filter",o,n,r,t)},doAction:function(o){gform.doHook("action",o,arguments)},applyFilters:function(o){return gform.doHook("filter",o,arguments)},removeAction:function(o,n){gform.removeHook("action",o,n)},removeFilter:function(o,n,r){gform.removeHook("filter",o,n,r)},addHook:function(o,n,r,t,i){null==gform.hooks[o][n]&&(gform.hooks[o][n]=[]);var e=gform.hooks[o][n];null==i&&(i=n+"_"+e.length),null==t&&(t=10),gform.hooks[o][n].push({tag:i,callable:r,priority:t})},doHook:function(o,n,r){if(r=Array.prototype.slice.call(r,1),null!=gform.hooks[o][n]){var t,i=gform.hooks[o][n];i.sort(function(o,n){return o.priority-n.priority});for(var e=0;e<i.length;e++)"function"!=typeof(t=i[e].callable)&&(t=window[t]),"action"==o?t.apply(null,r):r[0]=t.apply(null,r)}if("filter"==o)return r[0]},removeHook:function(o,n,r,t){if(null!=gform.hooks[o][n])for(var i=gform.hooks[o][n],e=i.length-1;0<=e;e--)null!=t&&t!=i[e].tag||null!=r&&r!=i[e].priority||i.splice(e,1)}}}</script> <div class='gf_browser_unknown gform_wrapper gravity-theme' id='gform_wrapper_8' ><div id='gf_8' class='gform_anchor' tabindex='-1'></div> <div class='gform_heading'> <h2 class="gform_title">Testing Ajax | OptinMonster Support</h2> <span class='gform_description'></span> </div><form method='post' enctype='multipart/form-data' target='gform_ajax_frame_8' id='gform_8' action='/resources/six-questions-when-launching-a-bank-loyalty-or-rewards-program/#gf_8' novalidate> <div class='gform_body gform-body'><div id='gform_fields_8' class='gform_fields top_label form_sublabel_below description_below'><div id="field_8_1" class="gfield field_sublabel_below field_description_below gfield_visibility_visible" ><label class='gfield_label' for='input_8_1' >Name</label><div class='ginput_container ginput_container_text'><input name='input_1' id='input_8_1' type='text' value='' class='large' aria-invalid="false" /> </div></div><div id="field_8_2" class="gfield gfield--width-full gfield_contains_required field_sublabel_below field_description_below gfield_visibility_visible" ><label class='gfield_label' for='input_8_2' >Email<span class="gfield_required"><span class="gfield_required gfield_required_text">(Required)</span></span></label><div class='ginput_container ginput_container_text'><input name='input_2' id='input_8_2' type='text' value='' class='large' aria-required="true" aria-invalid="false" /> </div></div></div></div> <div class='gform_footer top_label'> <button class='om-trigger-conversion button gf_submit default' id='gform_submit_button_8'>Submit</button> <input type='hidden' name='gform_ajax' value='form_id=8&amp;title=1&amp;description=1&amp;tabindex=0' /> <input type='hidden' class='gform_hidden' name='is_submit_8' value='1' /> <input type='hidden' class='gform_hidden' name='gform_submit' value='8' /> <input type='hidden' class='gform_hidden' name='gform_unique_id' value='' /> <input type='hidden' class='gform_hidden' name='state_8' value='WyJbXSIsIjFmZGFmMjZmOGYwZDRjNmZiZGM5N2NkN2UxNTMyYmNhIl0=' /> <input type='hidden' class='gform_hidden' name='gform_target_page_number_8' id='gform_target_page_number_8' value='0' /> <input type='hidden' class='gform_hidden' name='gform_source_page_number_8' id='gform_source_page_number_8' value='1' /> <input type='hidden' name='gform_field_values' value='' /> </div> </form> </div> <iframe style='display:none;width:0px;height:0px;' src='about:blank' name='gform_ajax_frame_8' id='gform_ajax_frame_8' title='This iframe contains the logic required to handle Ajax powered Gravity Forms.'></iframe> <script type="text/javascript"> gform.initializeOnLoaded( function() {gformInitSpinner( 8, 'https://zafin.com/wp-content/plugins/gravityforms/images/spinner.svg' );jQuery('#gform_ajax_frame_8').on('load',function(){var contents = jQuery(this).contents().find('*').html();var is_postback = contents.indexOf('GF_AJAX_POSTBACK') >= 0;if(!is_postback){return;}var form_content = jQuery(this).contents().find('#gform_wrapper_8');var is_confirmation = jQuery(this).contents().find('#gform_confirmation_wrapper_8').length > 0;var is_redirect = contents.indexOf('gformRedirect(){') >= 0;var is_form = form_content.length > 0 && ! is_redirect && ! is_confirmation;var mt = parseInt(jQuery('html').css('margin-top'), 10) + parseInt(jQuery('body').css('margin-top'), 10) + 100;if(is_form){jQuery('#gform_wrapper_8').html(form_content.html());if(form_content.hasClass('gform_validation_error')){jQuery('#gform_wrapper_8').addClass('gform_validation_error');} else {jQuery('#gform_wrapper_8').removeClass('gform_validation_error');}setTimeout( function() { /* delay the scroll by 50 milliseconds to fix a bug in chrome */ jQuery(document).scrollTop(jQuery('#gform_wrapper_8').offset().top - mt); }, 50 );if(window['gformInitDatepicker']) {gformInitDatepicker();}if(window['gformInitPriceFields']) {gformInitPriceFields();}var current_page = jQuery('#gform_source_page_number_8').val();gformInitSpinner( 8, 'https://zafin.com/wp-content/plugins/gravityforms/images/spinner.svg' );jQuery(document).trigger('gform_page_loaded', [8, current_page]);window['gf_submitting_8'] = false;}else if(!is_redirect){var confirmation_content = jQuery(this).contents().find('.GF_AJAX_POSTBACK').html();if(!confirmation_content){confirmation_content = contents;}setTimeout(function(){jQuery('#gform_wrapper_8').replaceWith(confirmation_content);jQuery(document).scrollTop(jQuery('#gf_8').offset().top - mt);jQuery(document).trigger('gform_confirmation_loaded', [8]);window['gf_submitting_8'] = false;wp.a11y.speak(jQuery('#gform_confirmation_message_8').text());}, 50);}else{jQuery('#gform_8').append(contents);if(window['gformRedirect']) {gformRedirect();}}jQuery(document).trigger('gform_post_render', [8, current_page]);} );} ); </script>