Skip to main content

Creative tips for restaurants impacted by the Coronavirus



Photo by Eiliv-Sonas Aceron

The Coronavirus (COVID-19) pandemic has turned life upside down, and few industries have experienced as much pressure to completely change their operations as dine-in restaurants. 

Whether you’ve seen an impact already or are preparing your business for the changes that are likely to come, we’ve collected some helpful tips and ideas, inspired by what we’ve seen restaurants around the country doing to adapt during this difficult time.

We also published another version of this post with marketing and operational tips for other types of businesses outside of restaurants.

Get creative with off-premise dining

  • Offer multi-person meals, like Brooklyn’s Pies-n-Thighs with its fried chicken-and-sides family packs. New York’s Spoon Table and Bar is selling frozen family-size entrees to help households reduce trips to the supermarket. 
  • Have extra pantry staples on hand? Many restaurants are transforming into corner stores to keep cash flowing and avoid wasting inventory—Zinc Cafe & Market in southern California sold excess perishable and non-perishable ingredients.
  • Modify the way you use your existing front-of-house software to support your changing operations. J&M Diner in Framingham, Mass. is using Yelp Waitlist to help manage its takeout orders. Diners join the online waitlist, and once it’s their turn, the restaurant calls to take the order. When it’s ready, diners get notified via text.
  • Consider out-of-the-box ideas to offer diners unique experiences at home. ARDYN in New York is getting creative with its “Doomsday Dinner Party”—an upscale, five-course meal to enjoy at home, complete with drink pairings and a playlist to set the mood.
  • Many jurisdictions are relaxing their regulations to allow restaurants and bars to sell alcohol to go to help make up for lost revenue from the dining room and bar. That allows restaurants like Lost and Found in San Francisco to include beer, wine, and cocktails in their delivery and takeout menus. 
  • Try scaling back your menu for takeout and delivery to cut down the amount of different ingredients you have to order. Choose the menu items that have lower costs but still allow you to offer some of your signature dishes. Pat’s Cafe in San Francisco offers specific brunch dishes on a reduced schedule (plus mimosas to-go).

Go virtual: update your info and sell online

As many restaurants are forced to close their dining rooms, it’s important to keep customers up-to-date on what you’re offering. In addition, if you have something you can sell online or by phone and have the means to ship or deliver, do it. Customers are invested in your success and want to know how they can support you. 

Interact with your customers virtually

  • Keep your audience engaged on social media: share videos of kitchen hacks, offer a virtual cooking class, post staff spotlights, or share other kinds of online content. Brian Jupiter, executive chef at Ina Mae Tavern in Chicago, hosted a live online cooking demo on the restaurant’s Instagram—featuring his Nashville hot chicken po’boy—and making all of the ingredients for the dish available for pickup from the restaurant.
  • Maintain active conversations with your followers as well as neighboring businesses. Consider doing an online Q&A or AMA (ask me anything). If you aren’t into the live video idea like Ina Mae Tavern, you could simply post on your favorite social media channel and encourage your audience to add questions in the comments for you to reply to. 
  • Use social media as an educational opportunity to teach your audience more about what you do best. Alex Day of Death & Co says social media is normally “a lot of kind of bragging or just kind of throwing out the day-to-day interactions of the bar. That’s not what we’re about. We’re about teaching people, helping them, growing their skills, growing their engagement. We’re not just posting pretty pictures of cocktails, we’re sharing our knowledge, be it recipes or how we work.”
  • When your audience mentions your restaurant in social media, be sure to comment on those posts to thank the diner for sharing. If a customer posts a great photo of your food, you can ask (privately, via direct message) if you can reshare it on your page with a proper photo credit
  • Check your Yelp for Business account for reviews of your takeout and delivery services and respond to those.
  • Yelp Connect is another way to communicate with your audience about business updates or specials. Restaurants are getting very creative in the ways they’re using Connect to communicate with diners. 

Restaurateurs are known to be creative and scrappy, and that’s just what we’re seeing during these incredibly challenging times. The restaurant community is resilient, and Yelp is here to support you—we’re in this together. 

This information was accurate at the time of publication, but because things are constantly changing, we suggest checking with the business directly regarding any information listed here.


Tweet us at @yelpforbusiness or email businesscontent@yelp.com to share your tips and other ideas for supporting our communities.

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_unknown 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/creative-ideas-tips-restaurants-coronavirus/#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' >Email</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_unknown 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/creative-ideas-tips-restaurants-coronavirus/#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>