Skip to main content

How a Montreal restaurant went viral for reviewing its own dishes



Photo by Joshua Frank

Cuisine AuntDai is located in an unassuming spot on Saint Mathieu Street in Montreal, Quebec. Feigang Fei and his wife opened their Chinese restaurant in 2014, modestly hoping it would become a small place where families and friends could gather for good food and conversation. Little did they know, their business would be thrust into the spotlight by a simple tweet—one that would collect over 75,000 likes and more than 12,600 retweets (and counting).


For more context, Kim is referring to the way in which Fei presents the dishes on the AuntDai menu. Each item is accompanied by a review written by Fei himself. But they’re not your average restaurant owner reviews—they’re honest and hilarious comments about each dish. For example, he’s not that impressed by the restaurant’s own orange beef. “Comparing to our General Tao Chicken, this one is not THAT good,” the menu reads. “Anyways, I am not big fan of North American Chinese food and it’s your call.” He’s even taken to YouTube to post review videos (spoiler: he upgrades his review for the orange beef).

Meanwhile, he also highlights popular customer favorites, such as their braised pork belly with sweet potato noodles. “This is a very popular dish among the customers who don’t care its greasiness. You almost want to sniff the tasty hot air above this beautiful dish,” Fei writes. “So even you love it, you may not want to have it every time if you are watching your weight because you know you cannot stop if you have started on this one.”

And some of the other reviews are just plain helpful, like this one for the broccoli beef: “This simple yet tasty dish is indeed authentic Chinese food. It’s light, not spicy. It’s a very safe and good choice for most people.”

This all started after Fei realized customers were unfamiliar with the ingredients in certain dishes or their spice levels. To increase transparency and ensure patrons weren’t surprised by what they ordered, Fei started adding his blunt descriptions to the “riskier items.” The trend took off, and now all 66 menu options are accompanied by his own reviews. This forward and honest approach has helped him stand out from the traditional restaurant scene where menus have quite a different look. 

A journalist from a German newspaper was the first to reach out to Fei about a tweet gone viral regarding his restaurant. “I thought it was a joke,” Fei said. “So I asked her to send me some screenshots.” In addition to several German newspapers, his menu reviews have caught the attention of media outlets including The Guardian, The Times of London, Food Network, Yahoo News, and CBS. When the interview requests initially flowed in, Fei admits to feeling nervous and out of his comfort zone. But he agreed to participate, hoping it would help the restaurant. 

This leap of faith paid off as AuntDai experienced a huge influx of customers with its sales doubling. “That felt out of nowhere… it was crazy,” Fei said. He continued to be shocked by the outpour of adoration and support for his restaurant—particularly as the increased volume of orders helped soften the blow COVID-19 took on his business. “In this environment with a pandemic, if a business is surviving, we are lucky already,” Fei said. 

And while COVID-19 has been tough on his restaurant business, this was just one of many challenges Fei has faced as a small business owner. 

Starting from scratch and the lessons learned 

In 2014, Fei and his wife decided to open their first restaurant. They didn’t know anything about owning a business nor operating a restaurant. Fei even bought a book called “Canadian Small Business Kit for Dummies” and read it entirely from the first page to the very last. 

Initially, attracting customers was difficult. “It was an excruciating time. One day, we had only six customers in total,” Fei wrote on his blog. Yet the couple continued to work long and hard hours. 

After just over a year in operation, a breakthrough came. AuntDai was named the Best Chinese Restaurant in Montreal by CTV News. As soon as the news episode aired, new customers flocked to the restaurant. Unprepared, Fei and his team did not limit seating, and customers experienced lengthy waits for their food. “I regret a lot about that,” Fei recalled. “Now that I have had firsthand experience, I can manage it much better than before.” Today, AuntDai limits orders so that the staff can adequately handle the volume. Quality over quantity is the mantra he now lives by. 

Then in late 2017, Fei unexpectedly had to start over again. During the cover of the night, a suspicious fire destroyed the building of their first restaurant in Côte-des-Neiges, along with a nearby pizzeria and apartment complex. It was a total loss as Fei received next to nothing from his minimum coverage insurance plan. At this all-time low, he considered giving up on the restaurant business completely. 

However, his loyal customers rallied and encouraged him to stay in business. “We were lucky to not give up. A lot of customers encouraged us to stay in business,” Fei said. “But it was really risky because we had to pay upfront when we did not have a lot of savings either.” On the last day of December 2017, they reopened AuntDai in the location where it stands today. 

Building a community on immigrant roots

As soon as business at his new restaurant location stabilized, Fei immediately started to think of ways he could give back to the community, and it brought him back to his immigrant roots. After growing up in a poor, rural village in the Jiangsu Province of China, Fei immigrated to Canada in 2007 and spent a lot of time listening to the radio and sharing stories with others to improve his English. 

“I like talking to people. That’s how I improve my language and my social knowledge,” he said. Through his restaurant business, he also saw how many immigrants were shy about their own language levels, and he wanted to help. 

“Montreal is a French city, so for immigrants to enjoy their life here and have better career opportunities, speaking French and English is very important,” Fei said.

He began by renovating the second floor of his restaurant into a meeting place, and he started Club AuntDai, a destination where newcomers could learn English and French as well as share life and work experiences. Prior to the pandemic, AuntDai hosted many events for the immigrant community, sometimes filling the second floor with over 100 attendees. The space also features a small library where books are donated by customers and patrons can read at their leisure in the communal space.

Fei is currently giving back by providing free meals for a small, single moms group and hopes the business can soon return to its roots as a community gathering place for friends and family.

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/how-a-montreal-restaurant-went-viral-for-reviewing-its-own-dishes/#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' >Phone</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/how-a-montreal-restaurant-went-viral-for-reviewing-its-own-dishes/#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' >Comments</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>