Google recently updated its structured data to include Place Actions for restaurants to include an Order Actions and a Reservation Action.
Previously a local restaurant could only define their menu within their structured data ( schema markup ) however Google largely ignored this over 3rd party site links like View Menu, Locu and Urbanspoon.
When a user searches for a business on Google Search or Maps, users may see a prominent “Knowledge Panel” card with details about the searched-for business. Place actions will appear in the card and deep-link users to provider web landing pages or apps to complete their action with the business.
A deep link is a URL that points to a specific web form for a specific business from your inventory.
Restaurant Structured Data |
Original Restaurant Schema that included Menu
<div itemscope itemtype=”http://schema.org/Restaurant”> <h1 itemprop=”name”>Southern Burger Co</h1> <p itemprop=”description”>Chattanooga’s premier gourmet burger and craft beer joint</p> <p>Open: <time itemprop=”openingHours” datetime=”Mo,Tu,We,Th,Fr,Sa,Su 11:30-23:00″>Daily from 11:30am till 11pm</time></p> <p>Phone: <span itemprop=”telephone” content=”+4238254919“>(423) 825-4919</span></p> <p>View <a itemprop=”menu” href=”http://example.com/menu”>our menu</a>.</p> </div>
Restaurant Structured Data with JSON LD
View updated restaurant structured data markup information.
<script type="application/ld+json"> { "@context": "http://schema.org", "@type": "Restaurant", "address": { "@type": "PostalAddress", "addressLocality": "Sunnyvale", "addressRegion": "CA", "postalCode": "94086", "streetAddress": "1901 Lemur Ave" }, "aggregateRating": { "@type": "AggregateRating", "ratingValue": "4", "reviewCount": "250" }, "name": "GreatFood", "openingHours": [ "Mo-Sa 11:00-14:30", "Mo-Th 17:00-21:30", "Fr-Sa 17:00-22:00" ], "priceRange": "$$", "servesCuisine": [ "Middle Eastern", "Mediterranean" ], "telephone": "(408) 714-1489", "url": "http://www.dishdash.com" } </script>
New Oder Action with JSON LD
<script type="application/ld+json"> { "@context":"http://schema.org", "@type":"Restaurant", "@id":"http://davescafe.example.com/", "name":"Dave's Cafe", "address":{ "@type":"PostalAddress", "streetAddress":"123 William St", "addressLocality":"New York", "addressRegion":"NY", "postalCode":"10038", "addressCountry":"US" }, "geo":{ "@type":"GeoCoordinates", "latitude":40.709312, "longitude":-74.007136 }, "telephone":"+19172423826", "potentialAction":{ "@type":"OrderAction", "target":{ "@type":"EntryPoint", "urlTemplate":"https://www.example.com/daves-cafe-new-york", "inLanguage":"en-US", "actionPlatform":[ "http://schema.org/DesktopWebPlatform", "http://schema.org/IOSPlatform", "http://schema.org/AndroidPlatform" ] }, "deliveryMethod":[ "http://purl.org/goodrelations/v1#DeliveryModePickUp", "http://purl.org/goodrelations/v1#DeliveryModeOwnFleet" ], "priceSpecification":{ "@type":"DeliveryChargeSpecification", "appliesToDeliveryMethod":"http://purl.org/goodrelations/v1#DeliveryModeOwnFleet", "priceCurrency":"USD", "price":0.0, "eligibleTransactionVolume":{ "@type":"PriceSpecification", "priceCurrency":"USD", "price":12.00 } } } } </script>
New Reservation Action with JSON LD
<script type="application/ld+json"> { "@context":"http://schema.org", "@type":"Restaurant", "@id":"http://davescafe.example.com/", "name":"Dave's Cafe", "address":{ "@type":"PostalAddress", "streetAddress":"123 William St", "addressLocality":"New York", "addressRegion":"NY", "postalCode":"10038", "addressCountry":"US" }, "geo":{ "@type":"GeoCoordinates", "latitude":40.709312, "longitude":-74.007136 }, "telephone":"+19172423826", "potentialAction":{ "@type":"ReserveAction", "target":{ "@type":"EntryPoint", "urlTemplate":"https://www.example.com/reserve?merchantId=20373", "inLanguage":"en-US", "actionPlatform":[ "http://schema.org/DesktopWebPlatform", "http://schema.org/IOSPlatform", "http://schema.org/AndroidPlatform" ] }, "result":{ "@type":"FoodEstablishmentReservation", "name":"Reserve table" } } } </script>
If you are not using a 3rd party application for your Orders and reservations, make sure that these pages are correctly marked up and contain the necessary data.
For your Menu link to appear this remains as before. Your menu must be in readable text on page and NOT a menu image or PDF.
If Google can understand your content in a structured way, then it can display that information more confidently within its search results and applications.