Skip to main content

Preparing your small business for the holiday season



Photo by Heidi Fin

Key takeaways

  • Make sure your online shopping capabilities are up-to-date
  • Ensure you have enough inventory 
  • Explore alternative arrangements to shipping, like BOPIS (buy online, pick up in store) 
  • Try out creative partnerships with other local businesses 

For many small (and some large) businesses, the holiday shopping season can be “make or break” time. According to a recent PayPal survey, one in five businesses say their future is heavily or wholly dependent upon a successful holiday shopping season, but only a third of those businesses had started to prepare properly as of September. 

With no end to the pandemic in sight, this holiday season is going to look drastically different from previous seasons. The CDC has released recent guidelines labeling shopping at malls or in crowded stores as one of the highest-risk activities for contracting COVID-19, so it’s anticipated that there won’t be as many large crowds as usual on Black Friday. 

However, there is some good news from the number-crunchers at Deloitte—holiday sales are expected to be up 1-1.5% this season (between November 2020 and January 2021) with total sales around $1.15 trillion, in spite of record unemployment and economic uncertainty. Somewhere between 35% and 45% of that growth in sales will be via e-commerce—more than double the growth seen last year. 

Some of the growth is attributed to consumers having more money for gifting than usual, since most are spending way less on travel, dining out, and other costly experiences. 

So what’s the best way to prepare your small business for the 2020 holiday season and make sure you’re part of that growth? We’ve put together some suggestions for making this year as successful as possible. 

Cleaning up 

Your storefront and shop are probably cleaner than they’ve ever been, due to protocols you’ve enacted in light of the pandemic. But do your customers know all of the effort you’ve put into their safety? 

It’s a good idea to communicate your response to the pandemic and all of the steps you’re taking to keep your business safe, such as through marketing emails, signs on your door, and your updated Yelp Business Page. If you think you’re overcommunicating, that’s probably the right amount. 

Stocking up and shipping out 

With increased shipping delays, maintaining enough inventory might be tough, but it’s essential this holiday season. 67% of shoppers plan to make sure their item is in stock before venturing out to stores, so if you’re out of stock, you’re also out of customers. 

Those shipping delays also impact goods going out to your customers, not just inventory coming in. Encourage early shopping with discounts or promotions that end earlier in the holiday shopping season—this allows time for goods to reach their destinations. You might also make a very clear shipping deadline for gifts to reach their intended recipients by the holidays, and post this online, in social media, as well as in store. 

Staffing up 

You may not be hiring as many seasonal staffers as usual, but if you do, it’s imperative they know your protocols and procedures inside and out. Make sure they are trained on your cleaning and sanitizing, even if it’s not a part of their job, so they can answer customer questions and advocate for your preparedness. In addition to making customers feel safe in your business, your employees should feel safe as well. They should have access to plenty of PPE/masks during their shifts. 

Your staff should also be completely up to speed on all promotional deals, store hours, and any upcoming sales events, including special shopping hours for seniors or those at a greater risk of contracting the virus. 

Promoting out 

Before the holiday selling season officially kicks off with Black Friday and Small Business Saturday, it helps to have a promotional plan in place. Fortunately most chambers of commerce have free listings for local businesses, which allow city dwellers to find the right local source for holiday gifts.

Sausalito, California encourages keeping spending dollars local with their Think Local, Buy Local, Stay Local program, which makes sure customers know which stores are open for business and includes helpful information like parking, shopping hours, and how shopping local helps the city as a whole. 

Check with your local chamber of commerce for similar programs and free listings. 

Ringing up 

With an increase in overall holiday shopping spending predicted, it’s important to be prepared to take advantage of the momentum of the holiday season, especially since 66% of shoppers say they are going to be shopping local. However, businesses are having to change the way they do things in order to bring in the shoppers, whether in person or online. 

If you don’t have ecommerce or online shopping capabilities yet, now is the time to make that happen. 53% of shoppers surveyed say they’ll only shop at stores and businesses offering contactless shopping, and 47% will only use some form of BOPIS (buy online, pick up in store). 

Developing and implementing a fully-functional ecommerce system might be cost or time prohibitive, but there are other ways to make shopping online and safe for your customers. 

  1. Establish virtual shopping experiences. This can be anything from using face-to-face calling (FaceTime, Skype, Zoom) with individual customers, showing them around the store and highlighting gift ideas, to using live social media capabilities (Instagram or Facebook Live) to bring that same experience to a wider variety of people. This serves as both a way for people to see what’s in store and a general promotional vehicle for your business. 
  2. Move some tables and cash registers outside on nice days. Fresh air and circulation help dissipate viruses and germs, and more people feel safe outside. 
  3. Offer one-on-one personal shopping hours for individual customers, booked in 30-minute increments. This will get customers in your store, but in a smaller, more socially distant way that may help them feel safer while shopping. This might be a work-around for consumers who are less comfortable with online shopping and/or social media. 
  4. Provide multiple fulfillment options for your customers. Allow them to choose between picking up in store, curbside pickup, or local delivery, in addition to shipping across the country. 

Another way to generate holiday sales is to partner with other nearby businesses, creating a package of goods and/or services that make great holiday gifts. Savor Seattle used to offer walking food tours of local restaurants and shops around Pike Place Market, but with the new protocols around the pandemic, they had to make a hard pivot by changing up their offerings and partnering with some of their former tour stops to create curated food gift boxes, available for both local delivery and nationwide shipping. 

“We’ve had the opportunity to work with 120+ local businesses in just the past seven months! When we were operating food tours, we only worked with 40+ partners,” said Savor Seattle Founder and CEO Angela Shen. “‘Box life’ has enabled us to expand the breadth of offerings and be more relevant to locals versus out-of-town guests.”

Shen has devised a few strategies to help drive holiday sales, including a wider range of price points, free shipping, and a gift wrap with handwritten note upgrade. And partnering extends their marketing reach—for both Savor Seattle and its partners. 

“We aren’t just here to sell their products. We often help food purveyors save money and time and improve their operations and branding. Our partners are proud to be a part of our box curations and the feeling is mutual,” said Shen. “Partners often spread the news about the boxes via their newsletters, social media, and their own websites.” 

Even in the midst of a pandemic, experts are expecting an increase in holiday spending this year, and with the right tools, promotion, and preparation, you can capitalize on the unique revenue opportunities and set yourself up for success moving into the new year.

Did you find this post valuable?

Click on a star to rate it.

Since you found this post valuable...

Follow us on social media for more great business resources!

We're sorry you didn't find this post valuable.

How could we improve it?

The information above is provided for educational and informational purposes only. It is not intended to be a substitute for professional advice and may not be suitable for your circumstances. Unless stated otherwise, references to third-party links, services, or products do not constitute endorsement by Yelp.

Business resources, delivered to your inbox

Get the latest blog content, info on virtual events, and the occasional freebie.

  • This field is for validation purposes and should be left unchanged.

By continuing, you agree to Yelp’s Terms of Service and acknowledge Yelp’s Privacy Policy.

[gravityform id="4" title="false" ajax="true"]
<div class='gf_browser_chrome gform_wrapper gform_legacy_markup_wrapper' id='gform_wrapper_4' ><div id='gf_4' class='gform_anchor' tabindex='-1'></div> <div class='gform_heading'> <span class='gform_description'></span> </div><form data-form-name='Newsletter Signup Popup' method='post' enctype='multipart/form-data' target='gform_ajax_frame_4' id='gform_4' action='/businesses/preparing-your-business-for-the-holiday-season/#gf_4' novalidate> <div class='gform_body gform-body'><ul id='gform_fields_4' class='gform_fields top_label form_sublabel_below description_below'><li id="field_4_1" class="gfield field_sublabel_below field_description_below hidden_label gfield_visibility_visible gf-email" data-field-class="gf-email" data-js-reload="field_4_1"><label class='gfield_label screen-reader-text' for='input_4_1' >youremail@address.com</label><div class='ginput_container ginput_container_email'> <input name='input_1' id='input_4_1' type='email' value='' class='large' placeholder='youremail@address.com' aria-invalid="false" /> </div></li><li id="field_4_2" class="gfield gform_validation_container field_sublabel_below field_description_below gfield_visibility_visible" data-js-reload="field_4_2"><label class='gfield_label' for='input_4_2' >Name</label><div class='ginput_container'><input name='input_2' id='input_4_2' type='text' value='' autocomplete='new-password'/></div><div class='gfield_description' id='gfield_description_4_2'>This field is for validation purposes and should be left unchanged.</div></li></ul></div> <div class='gform_footer top_label'> <input type='submit' id='gform_submit_button_4' class='gform_button button' value='Submit' onclick='if(window["gf_submitting_4"]){return false;} if( !jQuery("#gform_4")[0].checkValidity || jQuery("#gform_4")[0].checkValidity()){window["gf_submitting_4"]=true;} ' onkeypress='if( event.keyCode == 13 ){ if(window["gf_submitting_4"]){return false;} if( !jQuery("#gform_4")[0].checkValidity || jQuery("#gform_4")[0].checkValidity()){window["gf_submitting_4"]=true;} jQuery("#gform_4").trigger("submit",[true]); }' /> <input type='hidden' name='gform_ajax' value='form_id=4&amp;title=&amp;description=1&amp;tabindex=0' /> <input type='hidden' class='gform_hidden' name='is_submit_4' value='1' /> <input type='hidden' class='gform_hidden' name='gform_submit' value='4' /> <input type='hidden' class='gform_hidden' name='gform_unique_id' value='' /> <input type='hidden' class='gform_hidden' name='state_4' value='WyJbXSIsImE0YjFiMmUxY2IxMWVhYTljM2FhNzdkODk4NDUzZmY0Il0=' /> <input type='hidden' class='gform_hidden' name='gform_target_page_number_4' id='gform_target_page_number_4' value='0' /> <input type='hidden' class='gform_hidden' name='gform_source_page_number_4' id='gform_source_page_number_4' 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_4' id='gform_ajax_frame_4' title='This iframe contains the logic required to handle Ajax powered Gravity Forms.'></iframe> <script> gform.initializeOnLoaded( function() {gformInitSpinner( 4, 'https://blog.yelp.com/wp-content/plugins/gravityforms/images/spinner.svg' );jQuery('#gform_ajax_frame_4').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_4');var is_confirmation = jQuery(this).contents().find('#gform_confirmation_wrapper_4').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_4').html(form_content.html());if(form_content.hasClass('gform_validation_error')){jQuery('#gform_wrapper_4').addClass('gform_validation_error');} else {jQuery('#gform_wrapper_4').removeClass('gform_validation_error');}setTimeout( function() { /* delay the scroll by 50 milliseconds to fix a bug in chrome */ jQuery(document).scrollTop(jQuery('#gform_wrapper_4').offset().top - mt); }, 50 );if(window['gformInitDatepicker']) {gformInitDatepicker();}if(window['gformInitPriceFields']) {gformInitPriceFields();}var current_page = jQuery('#gform_source_page_number_4').val();gformInitSpinner( 4, 'https://blog.yelp.com/wp-content/plugins/gravityforms/images/spinner.svg' );jQuery(document).trigger('gform_page_loaded', [4, current_page]);window['gf_submitting_4'] = 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_4').replaceWith(confirmation_content);jQuery(document).scrollTop(jQuery('#gf_4').offset().top - mt);jQuery(document).trigger('gform_confirmation_loaded', [4]);window['gf_submitting_4'] = false;wp.a11y.speak(jQuery('#gform_confirmation_message_4').text());}, 50);}else{jQuery('#gform_4').append(contents);if(window['gformRedirect']) {gformRedirect();}}jQuery(document).trigger('gform_post_render', [4, current_page]);} );} ); </script>
[gravityform id="4" title="false" ajax="true"]
<div class='gf_browser_chrome gform_wrapper gform_legacy_markup_wrapper' id='gform_wrapper_4' ><div id='gf_4' class='gform_anchor' tabindex='-1'></div> <div class='gform_heading'> <span class='gform_description'></span> </div><form data-form-name='Newsletter Signup Popup' method='post' enctype='multipart/form-data' target='gform_ajax_frame_4' id='gform_4' action='/businesses/preparing-your-business-for-the-holiday-season/#gf_4' novalidate> <div class='gform_body gform-body'><ul id='gform_fields_4' class='gform_fields top_label form_sublabel_below description_below'><li id="field_4_1" class="gfield field_sublabel_below field_description_below hidden_label gfield_visibility_visible gf-email" data-field-class="gf-email" data-js-reload="field_4_1"><label class='gfield_label screen-reader-text' for='input_4_1' >youremail@address.com</label><div class='ginput_container ginput_container_email'> <input name='input_1' id='input_4_1' type='email' value='' class='large' placeholder='youremail@address.com' aria-invalid="false" /> </div></li><li id="field_4_2" class="gfield gform_validation_container field_sublabel_below field_description_below gfield_visibility_visible" data-js-reload="field_4_2"><label class='gfield_label' for='input_4_2' >Name</label><div class='ginput_container'><input name='input_2' id='input_4_2' type='text' value='' autocomplete='new-password'/></div><div class='gfield_description' id='gfield_description_4_2'>This field is for validation purposes and should be left unchanged.</div></li></ul></div> <div class='gform_footer top_label'> <input type='submit' id='gform_submit_button_4' class='gform_button button' value='Submit' onclick='if(window["gf_submitting_4"]){return false;} if( !jQuery("#gform_4")[0].checkValidity || jQuery("#gform_4")[0].checkValidity()){window["gf_submitting_4"]=true;} ' onkeypress='if( event.keyCode == 13 ){ if(window["gf_submitting_4"]){return false;} if( !jQuery("#gform_4")[0].checkValidity || jQuery("#gform_4")[0].checkValidity()){window["gf_submitting_4"]=true;} jQuery("#gform_4").trigger("submit",[true]); }' /> <input type='hidden' name='gform_ajax' value='form_id=4&amp;title=&amp;description=1&amp;tabindex=0' /> <input type='hidden' class='gform_hidden' name='is_submit_4' value='1' /> <input type='hidden' class='gform_hidden' name='gform_submit' value='4' /> <input type='hidden' class='gform_hidden' name='gform_unique_id' value='' /> <input type='hidden' class='gform_hidden' name='state_4' value='WyJbXSIsImE0YjFiMmUxY2IxMWVhYTljM2FhNzdkODk4NDUzZmY0Il0=' /> <input type='hidden' class='gform_hidden' name='gform_target_page_number_4' id='gform_target_page_number_4' value='0' /> <input type='hidden' class='gform_hidden' name='gform_source_page_number_4' id='gform_source_page_number_4' 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_4' id='gform_ajax_frame_4' title='This iframe contains the logic required to handle Ajax powered Gravity Forms.'></iframe> <script> gform.initializeOnLoaded( function() {gformInitSpinner( 4, 'https://blog.yelp.com/wp-content/plugins/gravityforms/images/spinner.svg' );jQuery('#gform_ajax_frame_4').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_4');var is_confirmation = jQuery(this).contents().find('#gform_confirmation_wrapper_4').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_4').html(form_content.html());if(form_content.hasClass('gform_validation_error')){jQuery('#gform_wrapper_4').addClass('gform_validation_error');} else {jQuery('#gform_wrapper_4').removeClass('gform_validation_error');}setTimeout( function() { /* delay the scroll by 50 milliseconds to fix a bug in chrome */ jQuery(document).scrollTop(jQuery('#gform_wrapper_4').offset().top - mt); }, 50 );if(window['gformInitDatepicker']) {gformInitDatepicker();}if(window['gformInitPriceFields']) {gformInitPriceFields();}var current_page = jQuery('#gform_source_page_number_4').val();gformInitSpinner( 4, 'https://blog.yelp.com/wp-content/plugins/gravityforms/images/spinner.svg' );jQuery(document).trigger('gform_page_loaded', [4, current_page]);window['gf_submitting_4'] = 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_4').replaceWith(confirmation_content);jQuery(document).scrollTop(jQuery('#gf_4').offset().top - mt);jQuery(document).trigger('gform_confirmation_loaded', [4]);window['gf_submitting_4'] = false;wp.a11y.speak(jQuery('#gform_confirmation_message_4').text());}, 50);}else{jQuery('#gform_4').append(contents);if(window['gformRedirect']) {gformRedirect();}}jQuery(document).trigger('gform_post_render', [4, current_page]);} );} ); </script>