For local business

How to get your restaurant recommended by ChatGPT and Perplexity

A checklist for restaurants that want to appear when someone asks an AI assistant where to eat: entity setup, the attributes behind filtered queries, and cited sources.

Short answer

Restaurants appear in AI recommendations when three things are true: the business is consistently identified across its own site and major listings, its filterable attributes are published in machine-readable form, and several independent sources describe it in similar terms. The attributes that decide most queries are cuisine, price band, neighbourhood, opening hours, booking policy and group capacity.

Someone lands in your city on a Thursday and asks an assistant where to eat. It names four places. Getting into that list is a different problem from ranking on Google, and it is a more tractable one than most restaurant owners expect.

Here is the work, in the order that pays.

Fix the entity record first

Before any content work, make the basic facts identical everywhere they appear.

One name, spelled and punctuated the same way. One address in one format. One phone number. One category. Applied across your website, Google Business Profile, Apple Business Connect, every review platform, and every directory that carries you.

This sounds trivial and it is the single most common failure. A restaurant listed as "The Corner Room" in one place and "Corner Room Restaurant" in another, at "12 Gertrude Street" and "12 Gertrude St, Fitzroy," reads to a retrieval system as possibly two businesses with conflicting details. Models route around ambiguity.

Do this before anything else, because everything downstream inherits it.

Publish the attributes that queries filter on

Most restaurant queries are not "best restaurant in [city]." They carry constraints, and each constraint is a filter your listing either survives or fails silently.

The attributes worth stating explicitly, in plain text on your site and in structured data:

  • Cuisine, specifically. "Neapolitan pizza" beats "Italian." "Sichuan" beats "Chinese."
  • Price per head, with and without drinks
  • Neighbourhood, not just city
  • Exact opening hours, including which days you are closed
  • Whether you take bookings, walk-ins, or both, and any cutoff
  • Largest group you can seat, and whether groups need to call
  • Dietary provision: vegetarian, vegan, gluten-free, halal, jain
  • Whether there is outdoor seating, and whether it is covered
  • Accessibility: step-free entry, accessible toilet
  • Parking, and the nearest landmark for walking directions
  • Whether you are suitable for kids, for a laptop, for a long dinner, for a quick one

Every one of those is a query family. A restaurant that publishes group capacity wins "where can twelve of us eat in [city]" almost by default, because most competitors never state it.

Give the model a sentence it can reuse

An assistant writing a recommendation needs one line about you. If your site says "an unforgettable culinary journey," it has nothing, and it will write something generic or drop you.

Write the line yourself, somewhere prominent, in plain language:

A twenty-four cover room in Fitzroy serving a daily-changing seasonal menu, four courses for around $75, open Wednesday to Sunday for dinner only.

That sentence contains a type, a location, a cuisine, a format, a price and an availability window. It survives extraction. Marketing prose does not.

Structured data

Deploy Restaurant schema with the address, geo coordinates, opening hours specification, price range, cuisine, reservation URL, menu URL, and a sameAs array linking every listing you control.

The sameAs array is doing more work than it looks. It is the statement that all these scattered records are one business, which is what lets a model consolidate rather than hedge.

If you publish a menu, mark it up. If you answer questions on a page, mark them up as FAQPage.

Get described accurately by other people

This is where category queries are won, and it is the slowest part.

An assistant answering "best restaurants in [city]" is reading roundup articles, city guides, review platforms and forum threads. Your own site barely participates in that answer.

What to do, in rough order of return:

Audit what already exists. Search your restaurant's name and read every result. Wrong hours on a directory from four years ago is a live source of bad information. Claim and correct what you can.

Get into the guides that get cited. Run your prompt set, note which URLs the assistants cite, and go get accurately listed on those specific sources. This beats a scattergun directory submission campaign by a wide margin.

Shape review language. Reviews are the largest body of descriptive text about you on the open web, and the model reads them. If your courtyard is the thing, and nobody mentions the courtyard, ask. A card on the table saying what you would love people to mention is not manipulation, it is telling your story through the people who experienced it.

Local press and neighbourhood blogs. One accurate paragraph in a well-crawled local publication outperforms ten directory listings.

Keep it current

Stale information is why assistants recommend closed restaurants. The same mechanism keeps your old winter hours in circulation.

Twice a year, walk the list: website, Google Business Profile, Apple Business Connect, every review platform, every directory, and your structured data. Check hours, price band, phone number and menu style. It takes an hour and it prevents the specific failure mode where an assistant confidently sends someone to your door on a day you are closed.

The order to do it in

  1. Make the entity record consistent everywhere.
  2. Write the attributes down in plain text on your site.
  3. Deploy Restaurant schema with sameAs.
  4. Write the one-sentence description a model can reuse.
  5. Fix wrong information on third-party listings.
  6. Earn accurate coverage on the sources that get cited.
  7. Sample your prompt set monthly and fix whatever you lost on.

Steps one to four are a weekend. Steps five to seven are ongoing, and they are what separates a restaurant that occasionally appears from one that appears reliably.

Frequently asked questions

Does my restaurant need a website if it has a Google Business Profile and Instagram?

Yes. Google Business Profile is one source and Instagram is largely unreadable to retrieval systems because the content is inside images and short video. A simple website with real text stating what you serve, where, when and at what price is the cheapest and most reliable thing you can give an AI system to read.

Do I need to be on every review platform?

No. Be accurate on the two or three that get cited when you run your own prompt set. Which platforms those are varies by city and cuisine, which is why sampling before investing saves money.

How do I handle a daily-changing menu?

Publish the pattern rather than the plates. State that the menu changes daily, describe the style, the number of courses, the price, the dietary options you can always accommodate and the ingredients you work with. A model can recommend against a described pattern. It cannot recommend against a PDF that changed yesterday.

How long before this shows results?

Entity and attribute fixes tend to appear in retrieval-based answers within a few weeks of recrawling. Category queries, the broad best-of ones, move more slowly because they depend on third-party coverage accumulating.

Want to know how AI models currently describe your business?

We run a free visibility check across ChatGPT, Perplexity, Claude and Google AI Overviews, then show you exactly which signals are missing.

Book a visibility check

Keep reading