Skip to main content

Top 50 places to eat down the shore



Veal Parmigiana, Chef Vola’s in Atlantic City

Yelp’s Top 50 Places to Eat is a list unlike any other “best of” out there. Sure, you’ll see your obvious local favorites on the list, but it’s also chock full of hidden gems and off-the-beaten-path joints like Gyros & Greens tucked away in Somers Point. From fine dining to donut shops — find them all in Yelp’s Top 50 Places to Eat down the shore.

Did your favorite restaurant make it into the top 50? Let us know on Twitter and Instagram. Remember, we only know how good a spot is if you take the time to review it. So share your thoughts on Yelp, and maybe your favorites will be on next year’s list! 

Topping this year’s list is Nauti Donuts, a family-owned donut shop in Ocean City, New Jersey. Their creative menu includes favorites such as the rogue wave, captain’s french toast, and salty dog.

Pro tip: You’re going to want to make a note of these spots, so we made it easy for you. For great businesses at your fingertips, get the Top 50 to-go. Follow this collection on Yelp.


Methodology: This is an all-time list of the Top Places to Eat Down the Shore according to Yelp. We identified businesses in the restaurant and food categories on Yelp, then ranked those spots using a number of factors, including the total volume and ratings of reviews, This list looked at businesses in the Brigantine, Atlantic City, Ventnor City, Margate City, Longport, Ocean City, Somers Point, Strathmere, Sea Isle City, Avalon, Stone Harbor, Wildwood, Wildwood Crest, and Cape May area.  All businesses were marked open on Yelp as of April 21, 2022. When available, all businesses on this list have a passing health score as of April 21, 2022.


Top 50 places to eat down the shore

1. Nauti Donuts (Ocean City)

The Salty Dog Donut

Cuisine: Donuts

What they’re known for: The Salty Dog, maple icing, pork roll, salted caramel drizzle

Yelpers say: “You can’t go wrong with anything on their menu: each donut starts as a fresh, hot, fried cake donut and is then topped while you wait… I think that this may be THE must-eat thing in Ocean City now.” – Yelp Elite, David L.

2. Poke Bowl Tropical Cafe (Atlantic City)

Create Your Own Poke Bowl

Cuisine: Japanese

What they’re known for: The Seafood Harvest Poke Bowl, shrimp, tuna, salmon, shrimp mixed green, tobiko and avocado with spicy ponzu sauce.

Yelpers say: “Wow…didn’t expect to be blown away by a poke bowl place in Atlantic City but here we are. Amazing flavors, fresh fish, huge portion…literally perfect. ” – Yelp Elite, Luba P.

3. The Jellyfish Cafe (Wildwood Crest)

Eggs Benedict

Cuisine: Breakfast

What they’re known for: Eggs Benedict

Yelpers say: “Mmm, mmm mmm…this is the best breakfast on the island!  The food is fresh, and prepared to enjoy. The stuffed french toast was so good.” – Yelp Elite, Cory K.

4. Gyros & Greens (Somers Point)

Chicken Empanada Platter

Cuisine: Mediterranean

What they’re known for: Baklava

Yelpers say: “This super casual Greek joint located in a strip mall just a few minutes from the beach is serving up some fresh, tasty traditional Mediterranean food and without a doubt, THEE best baklava we’ve ever had.” – Yelp Elite, Sari Marissa G.

5. Kohler’s Bakery (Avalon)

Assortment of Kohler’s pastries

Cuisine: Bakery

What they’re known for: Cream Donuts

Yelpers say: “The best mornings are Kohler’s mornings…the staff is unfailingly polite, the creme donuts are AMAZING, as are the crumb buns, the crullers, the regular donuts….you get the point, right?” – Yelp Elite, Lou C.

6. OC Surf Cafe (Ocean City)

OC Surf Cafe storefront

Cuisine: Breakfast

What they’re known for: French Toast

Yelpers say: “Always a great go to when in Ocean City. The ambience is super relaxed and everyone is very friendly. It gets crowded in season so make sure you get there early. The home fries are my favorite I’m always dreaming about them.” Yelp Elite, Andrea M.

7. Sundae Best (Avalon)

Ice Cream Sandwiches

Cuisine: Ice Cream

What they’re known for: Avalon Mud

Yelpers say: “I’ve been to Sundae Best a couple of times during my visits home to South Jersey and (as someone who has tried ALL of the local ice cream shops) I can easily say this place is the best place to get ice cream for a number of reasons.” Yelper, Emily D.

8. Barbera Seafood Market (Atlantic City)

Soft Shell Crab Sandwich

Cuisine: Seafood

What they’re known for: Flounder Sandwich

Yelpers say: “If you want the freshest and tastiest seafood that you can get Barberas is the place to go. Dominic, the owner, really knows his seafood.” – Yelp Elite, Steve K.

9. Hot Dog Tommy’s (Cape May)

The American Dog

Cuisine: Hot dogs

What they’re known for: all-beef Black Angus Dog (B.A.D.) on a soft deli bun

Yelpers say: “This place is a must if you’re in Cape May on a summer day. Unfortunately for my wife and I, we frequent Cape May during the other seasons and always missed out on this place. But now, I’m happy we finally got to go, because this place is worth the hype.” – Yelp Elite, James S.

10. Chef Vola’s (Atlantic City)

Penne with Bolognese

Cuisine: Italian

What they’re known for: Veal Parmagiana

Yelpers say: “This gem is one of my absolute favorite places to eat. Portions are huge and more than worth the prices! I have never had a less than fantastic experience here” – Yelp Elite, Shelby A.

Nauti Donuts, OC Surf Cafe, and Sundae Best

11. Curry Inne (Wildwood)

12. El Alebrije Mexican Food (Wildwood Crest)

13. Cafe 2825 (Atlantic City)

14. Marsini’s Kitchen (Somers Point)

15. Bennie’s Bread (Ocean City)

16. The Washington Inn (Cape May)

17. Surfside West Diner (Wildwood)

18. Cafe Noir (Stone Harbor)

19. Hobby Horse (Ocean City)

20. Brown’s Restaurant (Ocean City)

Cafe 2825, Bennie’s Bread, and The Washington Inn

21. Jon & Patty’s Coffee Bar and Bistro (Ocean City)

22. Magic Brain Cafe (Cape May)

23. Dock’s Oyster House (Atlantic City)

24. Cafe Loren (Avalon)

25. Augie’s Omelette and Waffle House (Ocean City)

26. Ristorante Luciano (Stone Harbor)

27. Velo Cafe (Ventnor)

28. PJ Buckets Seafood (Ventnor)

29. Sandwich Bar (Ocean City)

30. Doo Wop Drive In (Wildwood Crest) 

Jon & Patty’s Coffee Bar and Bistro, Cafe Loren, and Doo Wop Drive In

31. Yum Yums Ice Cream (Sea Isle City)

32. Chelsea Five Gastropub (Atlantic City)

33. Yvette’s Cafe (Stone Harbor)

34. Positively Fourth Street Cafe (Ocean City)

35. Primal by Mia Mia (Cape May)

36. Kuro (Atlantic City)

37. Brigantine Bistro (Brigantine)

38. Knife and Fork Inn (Atlantic City)

39. Sun’z Up Cafe (Wildwood Crest)

40. Tennessee Avenue Beer Hall (Atlantic City)

Yum Yums Ice Cream, Kuro, and Knife and Fork Inn

41. Steve and Cookie’s By The Bay (Margate)

42. Fishin’ Pier Grill South (Stone Harbor)

43. Mallon’s Homemade Sticky Buns (Ocean City)

44. 701 Mosaic (Ocean City)

45. Lemma’s Beach Grill (Wildwood Crest) 

46. Smitty’s Clam Bar (Somers Point)

47. Brittany’s Cafe (Atlantic City)

48. Water Dog Smoke House (Ventnor)

49. Kelsey’s (Atlantic City)

50. CJs Corner Grill (Somers Point)

Fishin’ Pier Grill South, Water Dog Smoke House, and Brittany’s Cafe

We can’t wait to hear your thoughts! Did one of your favorites make the list? Are any of your go-to spots missing? Share your thoughts with us on Yelp!

Don’t have Yelp on your phone yet? Download the app today and follow our newly created Top 50 Places To Eat Down The Shore on Yelp Collection to have this entire list available right in the palm of your hand!

[gravityform id="4" title="false" ajax="true"]
<script type="text/javascript">var gform;gform||(document.addEventListener("gform_main_scripts_loaded",function(){gform.scriptsLoaded=!0}),window.addEventListener("DOMContentLoaded",function(){gform.domLoaded=!0}),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),gform.hooks[o][n].push({tag:i,callable:r,priority:t=null==t?10:t})},doHook:function(n,o,r){var t;if(r=Array.prototype.slice.call(r,1),null!=gform.hooks[n][o]&&((o=gform.hooks[n][o]).sort(function(o,n){return o.priority-n.priority}),o.forEach(function(o){"function"!=typeof(t=o.callable)&&(t=window[t]),"action"==n?t.apply(null,r):r[0]=t.apply(null,r)})),"filter"==n)return r[0]},removeHook:function(o,n,t,i){var r;null!=gform.hooks[o][n]&&(r=(r=gform.hooks[o][n]).filter(function(o,n,r){return!!(null!=i&&i!=o.tag||null!=t&&t!=o.priority)}),gform.hooks[o][n]=r)}});</script> <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='/community/top-50-places-to-eat-down-the-shore/#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='/community/top-50-places-to-eat-down-the-shore/#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>