Is Ulta’s Loyalty Program a Gold Standard for Beauty Retailers?

Power Retail By Power Retail | 21 Jan 2021

E-commerce in the United States has long been more advanced than in Australia, but it seems that we’re starting to catch up. Ulta, the American beauty retailer, has amped up its loyalty offering to reflect the changes in consumer behaviour. Here’s what Aussie retailers could learn from the beauty giant.

During the pandemic, the accelerated interest in online shopping has proven that Aussies are willing to adapt and change with the times. Retailers need to keep on moving to secure a strong future for the industry.

Ulta Beauty, an American health and beauty retailer, expanded its e-commerce sales by 90 percent YoY in Q3. One of the driving factors for this massive growth was its investment in omnichannel options, including Click and Collect.

Furthermore, the retailer amped up its loyalty program, Ultimate Rewards, which currently has more than 30 million members. These members make up a whopping 95 percent of total sales, in-store and online.

via Ulta

Ulta’s loyalty members make up 95 percent of total sales. | via Ulta

At the National Retail Federation’s 20201 Digital Conference, Kelly Mahoney, the Vice President of Customer Marketing at Ulta, explained how the retailer developed its highly personalised CX in the midst of a global pandemic.

“Loyalty is at the heart of our work,” said Mahoney. “Our members are engaged with our brand and love us back with their loyal shopping year after year.”

Ulta’s loyalty program is a ‘differentiator for us, and it’s the basis for how we get to know who our customers are by watching how they interact with us,’ Mahoney explained.

What made the Ulta loyalty program so different from the rest? As stores stayed closed for months on end during the pandemic, the retailer upped its social media presence and developed a highly personalised experience for its customers.

Using GLAMlab AR features, shoppers were able to ‘try on’ the makeup they wished to purchase. Obviously, this is no new feature and has been working for Sephora and high-end makeup brands like Giorgio Armani for some time. However, the AR feature allows the consumer to try o products when they cannot enter a store.

via Ulta

Ulta’s AR services have been a hit with consumers. | via Ulta

“Augmented reality has proven to be an important strategic element to how we succeeded in 2020,” Mahoney explained. “We already had the AR investment in. We amplified the experience in our mobile app and in communications with our customers.”

While makeup remains one of the retailer’s core focus, changing consumer behaviour made Ulta pivot slightly to tend to the shoppers’ needs. The lack of social events was a driving reason why consumers shopped for fewer cosmetics.

“Shopping for beauty looks different,” Mahoney said. “The way people are shopping for beauty has pivoted to wellness and self-care. Bath, skincare and hair care have become important categories.”

During the pandemic, Ulta’s total sales decreased by 7.8 percent to $1.55 billion in Q3. Despite this, its online sales skyrocketed by 90 percent YoY.

Its omnichannel efforts further increased by 22 percent, compared to 12 percent the year before.

What can retailers in Australia learn from Ulta’s experience? Don’t underestimate the loyalty of customers, even during the hardest times. Pivoting to better suit the changing customer needs can benefit more than just the retailer. It can develop a sense of strong loyalty to a brand.

These changes don’t just sit within the beauty category – a willingness to adapt, and agility are important lessons for every retail category type.

Being willing to adapt is a reason for a customer to return even in the hardest times. Many Australian retailers have understood this and reflect their understanding of customer behaviour changes in their brand’s offering.

“I have learnt that to be successful in even the most challenging times retailers need to be more agile to adapt to the rapidly changing consumer behaviour and capitalise on the opportunities this presents,” Shane Lenton, the CIO of CUE told Power Retail.

In uncertain times, there is something important to remain certain about: what your customers want. Pay close attention to the changes in their behaviour, and make changes accordingly to show the shopper that you understand them, and you want them to feel taken care of, in any circumstance.

Like this story? Click here to find out more about Power Retail E-Commerce Intelligence or here to sign-up for the free weekly Pulse Newsletter for more essential online retail content.

0 Comment

Leave a Reply

Your email address will not be published. Required fields are marked *

[gravityform id="11" title="false" description="false" ajax="true"]
<div class='gf_browser_unknown gform_wrapper fix-om-styling_wrapper' id='gform_wrapper_11' ><div id='gf_11' class='gform_anchor' tabindex='-1'></div><form method='post' enctype='multipart/form-data' target='gform_ajax_frame_11' id='gform_11' class='fix-om-styling' action='/e-commerce-world-tour/is-ultas-loyalty-program-a-gold-standard-for-beauty-retailers/#gf_11'> <div class='gform_body'><ul id='gform_fields_11' class='gform_fields top_label form_sublabel_below description_below'><li id='field_11_2' class='gfield gfield_contains_required field_sublabel_below field_description_below hidden_label gfield_visibility_visible' ><label class='gfield_label' for='input_11_2' >Email Address<span class='gfield_required'>*</span></label><div class='ginput_container ginput_container_email'> <input name='input_2' id='input_11_2' type='text' value='' class='large' placeholder='Email' aria-required="true" aria-invalid="false" /> </div></li><li id='field_11_3' class='gfield gfield_contains_required field_sublabel_hidden_label field_description_below hidden_label gfield_visibility_visible' ><label class='gfield_label gfield_label_before_complex' >Name<span class='gfield_required'>*</span></label><div class='ginput_complex ginput_container no_prefix has_first_name no_middle_name has_last_name no_suffix gf_name_has_2 ginput_container_name' id='input_11_3'> <span id='input_11_3_3_container' class='name_first' > <input type='text' name='input_3.3' id='input_11_3_3' value='' aria-label='First name' aria-required="true" aria-invalid="false" placeholder='First Name'/> <label for='input_11_3_3' class='hidden_sub_label screen-reader-text'>First</label> </span> <span id='input_11_3_6_container' class='name_last' > <input type='text' name='input_3.6' id='input_11_3_6' value='' aria-label='Last name' aria-required="true" aria-invalid="false" placeholder='Last Name'/> <label for='input_11_3_6' class='hidden_sub_label screen-reader-text'>Last</label> </span> </div></li><li id='field_11_5' class='gfield gfield_contains_required field_sublabel_below field_description_below hidden_label gfield_visibility_visible' ><label class='gfield_label' for='input_11_5' >Company / Organisation<span class='gfield_required'>*</span></label><div class='ginput_container ginput_container_text'><input name='input_5' id='input_11_5' type='text' value='' class='large' placeholder='Company' aria-required="true" aria-invalid="false" /></div></li><li id='field_11_6' class='gfield gform_hidden field_sublabel_below field_description_below gfield_visibility_visible' ><input name='input_6' id='input_11_6' type='hidden' class='gform_hidden' aria-invalid="false" value='NOT PROVIDED' /></li><li id='field_11_7' class='gfield gform_hidden field_sublabel_below field_description_below gfield_visibility_visible' ><input name='input_7' id='input_11_7' type='hidden' class='gform_hidden' aria-invalid="false" value='NOT PROVIDED' /></li><li id='field_11_8' class='gfield gform_hidden field_sublabel_below field_description_below gfield_visibility_visible' ><input name='input_8' id='input_11_8' type='hidden' class='gform_hidden' aria-invalid="false" value='NOT PROVIDED' /></li><li id='field_11_9' class='gfield gform_validation_container field_sublabel_below field_description_below gfield_visibility_visible' ><label class='gfield_label' for='input_11_9' >Email</label><div class='ginput_container'><input name='input_9' id='input_11_9' type='text' value='' /></div><div class='gfield_description' id='gfield_description_11_9'>This field is for validation purposes and should be left unchanged.</div></li> </ul></div> <div class='gform_footer top_label'> <button type="submit" class="button-3" id="gform_submit_button_11">SUBSCRIBE</button> <input type='hidden' name='gform_ajax' value='form_id=11&amp;title=&amp;description=&amp;tabindex=0' /> <input type='hidden' class='gform_hidden' name='is_submit_11' value='1' /> <input type='hidden' class='gform_hidden' name='gform_submit' value='11' /> <input type='hidden' class='gform_hidden' name='gform_unique_id' value='' /> <input type='hidden' class='gform_hidden' name='state_11' value='WyJbXSIsIjRjNDYzMzMwNzM3OTFjM2ZlOGZhNjY2ZDA4ZDVlMDcyIl0=' /> <input type='hidden' class='gform_hidden' name='gform_target_page_number_11' id='gform_target_page_number_11' value='0' /> <input type='hidden' class='gform_hidden' name='gform_source_page_number_11' id='gform_source_page_number_11' 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_11' id='gform_ajax_frame_11' title='This iframe contains the logic required to handle Ajax powered Gravity Forms.'></iframe> <script type='text/javascript'>jQuery(document).ready(function($){gformInitSpinner( 11, 'https://mlo34ofws4g4.i.optimole.com/sfLB6KI-p9IYDWSG/w:auto/h:auto/q:auto/https://mail.powerretail.com.au/wp-content/plugins/gravityforms/images/spinner.gif' );jQuery('#gform_ajax_frame_11').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_11');var is_confirmation = jQuery(this).contents().find('#gform_confirmation_wrapper_11').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_11').html(form_content.html());if(form_content.hasClass('gform_validation_error')){jQuery('#gform_wrapper_11').addClass('gform_validation_error');} else {jQuery('#gform_wrapper_11').removeClass('gform_validation_error');}setTimeout( function() { /* delay the scroll by 50 milliseconds to fix a bug in chrome */ jQuery(document).scrollTop(jQuery('#gform_wrapper_11').offset().top - mt); }, 50 );if(window['gformInitDatepicker']) {gformInitDatepicker();}if(window['gformInitPriceFields']) {gformInitPriceFields();}var current_page = jQuery('#gform_source_page_number_11').val();gformInitSpinner( 11, 'https://mlo34ofws4g4.i.optimole.com/sfLB6KI-p9IYDWSG/w:auto/h:auto/q:auto/https://mail.powerretail.com.au/wp-content/plugins/gravityforms/images/spinner.gif' );jQuery(document).trigger('gform_page_loaded', [11, current_page]);window['gf_submitting_11'] = 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_11').replaceWith(confirmation_content);jQuery(document).scrollTop(jQuery('#gf_11').offset().top - mt);jQuery(document).trigger('gform_confirmation_loaded', [11]);window['gf_submitting_11'] = false;}, 50);}else{jQuery('#gform_11').append(contents);if(window['gformRedirect']) {gformRedirect();}}jQuery(document).trigger('gform_post_render', [11, current_page]);} );} );</script><script type='text/javascript'> jQuery(document).bind('gform_post_render', function(event, formId, currentPage){if(formId == 11) {if(typeof Placeholders != 'undefined'){ Placeholders.enable(); }} } );jQuery(document).bind('gform_post_conditional_logic', function(event, formId, fields, isInit){} );</script><script type='text/javascript'> jQuery(document).ready(function(){jQuery(document).trigger('gform_post_render', [11, 1]) } ); </script>