How to make a restaurant menu page customers actually use
- Published
- Reading time
- 13 min
- Written by
- Apurba Sardar
Short answer
Put your menu on your website as real text, not a PDF or a photo: it loads fast on phones, is easy to update and gives Google something it can read. Show every price clearly and say whether GST is extra, mark veg and non-veg dishes, group them the way people order, and add a WhatsApp order button. Then use that one page everywhere: the QR codes on your tables, your Instagram bio and the menu link on your Google Business Profile.
In this guide
Picture someone in a Salt Lake office at 1 pm, searching “biryani near me”. They tap your listing on Google Maps and look for the menu. If they find a sideways photo of a laminated card, prices from two years ago, or a PDF that takes a minute to open on mobile data, they go back and tap the next restaurant.
A good restaurant menu website fixes that: one page with your dishes as real text, clear prices, veg and non-veg marks and a way to order, linked from your Google listing, your table QR codes and your Instagram bio. This guide covers how to build one for a restaurant, café or sweet shop, and how to keep it right.
Text menu vs PDF or photo
The biggest decision is the format. A menu typed as text on a web page beats a PDF or a photo on almost everything that matters:
| Text menu on a web page | PDF menu | Photo of a printed menu | |
|---|---|---|---|
| On a phone | Reads like any page; tap a category to jump to it | Downloads or opens in a viewer; pinch to zoom | Zoom and squint, often sideways |
| On mobile data | Loads quickly | Slow if the file is large | Large image files load slowly |
| Changing one price | Edit one line | Edit the design file and upload it again | Reprint, photograph and upload again |
| Easy to read and match to searches | Can be indexed, but awkward for visitors | Gives Google little it can rely on | |
| Larger text and screen readers | Work normally | Hit and miss | Can’t read the dishes |
| Ordering | An order button beside each dish | None | None |
Google can index PDFs (opens in a new tab), so a PDF menu isn’t invisible; it’s just clumsy for a hungry person on a phone. There’s also a bonus to getting the text menu right: Google says it may transcribe menu data from your business website for your Business Profile (About the menu editor (opens in a new tab)). Keep a PDF if offices or party customers ask for a download, but make it the extra, not the main menu.
Organise it the way people order
- Group dishes by course, in eating order: breakfast, starters, rolls, mains, rice and biryani, sweets, drinks. A sweet shop might use rosogolla and rasmalai, sandesh, doi, namkeen and seasonal specials.
- Put a category bar at the top that stays visible as people scroll on a phone, so they can jump straight to biryani without scrolling past forty starters.
- Say what each dish is, in one short line: “Mutton kosha, slow-cooked, 4 pieces”. Give the portion too: half or full plate, per piece, per 500 g, serves two.
- Use the names your customers use. “Chingri malai curry” with a short English description helps locals and visitors alike, and some places add the Bengali script as well. Our guide to Bengali on your website has more on this.
- List only what you actually serve. A shorter, accurate menu beats a long one where a third of the dishes are “not available today”.
Prices, GST and extra charges
Show a price against every item, with the portion it buys. Then answer the question every customer has at billing time: is GST extra?
- Say it once, clearly, at the top or bottom of the menu: “All prices include GST” or “Prices in ₹, GST extra”.
- Know your rate. For standalone restaurants and cafés, restaurant service is taxed at 5% GST without input tax credit, and CBIC has confirmed that takeaway, home delivery and cloud kitchens count as restaurant service (CBIC Circular 164/2021 (opens in a new tab)). Restaurants inside some hotels follow different rules, so confirm yours with your CA.
- Under the composition scheme, you can’t add GST at all. A composition taxpayer issues a bill of supply, not a tax invoice, with “composition taxable person, not eligible to collect tax on supplies” printed at the top (West Bengal Commercial Taxes FAQ (opens in a new tab)). The same applies if you aren’t registered for GST: your menu price is the final price.
- No automatic service charge. The Central Consumer Protection Authority’s 2022 guidelines say a restaurant can’t add a service charge automatically or by default, or collect it under another name, and must tell customers it’s voluntary. The Delhi High Court upheld them in March 2025, and the CCPA has since penalised restaurants that kept adding one (PIB, January 2026 (opens in a new tab)).
- No “LPG charge” either. In March 2026 the CCPA advised that “LPG charges”, gas surcharges and similar add-ons must not be added by default, and that the menu price should be the final price apart from applicable taxes (PIB, March 2026 (opens in a new tab)).
Veg marks, allergens and your FSSAI number
Diners in India look for the veg and non-veg marks before they read anything else. Use the standard symbols FSSAI describes in its menu labelling guidance (opens in a new tab), placed in front of the dish name:
- Veg: a filled dark green circle inside a square with a green outline.
- Non-veg: a filled brown triangle inside a square with a brown outline. Dishes containing egg count as non-veg.
- A word as well as a colour: a small “Veg” or “Non-veg” label helps customers who can’t easily tell green from brown. Tag Jain or no-onion, no-garlic dishes too, if you offer them.
Bigger operators have more to show. FSSAI’s menu labelling rules cover food businesses with a central licence or outlets in ten or more locations: their menus, websites and apps must show calories per serving, allergen information and the veg or non-veg logo. A single café isn’t covered, but a short allergen note (contains nuts, milk or gluten) still saves awkward questions.
Finally, put your 14-digit FSSAI licence or registration number in the website footer. FSSAI already requires it on cash receipts, invoices and bills, with enforcement from 1 January 2022 (FSSAI order (opens in a new tab)), and careful customers look for it before ordering.
Photos and today’s specials
You don’t need a photo of every dish. Photograph your eight to twelve best sellers on your own plates, in daylight near a window. Pictures from your own kitchen tell people far more than stock images, and customers notice when the biryani that arrives looks nothing like the one online. Compress every image so the page stays quick on mobile data.
A today’s specials box at the top gives regulars a reason to check back: “Today: bhetki paturi, ilish bhapa, until sold out”. Change it daily or not at all, because last Tuesday’s special makes the whole menu look stale. Seasonal sections work the same way, from nolen gur sandesh in winter to Puja pre-orders in autumn.
Make updating painless, or it won’t happen. On WebNestle sites, the Pro plan includes an offers section you can edit yourself; on Starter and Growth, you send changes on WhatsApp and we make them for you.
Ordering: WhatsApp from your site, or Swiggy and Zomato
A menu page should end in an order, not just a look. Two routes work well, and most restaurants use both.
| WhatsApp order from your website | Swiggy or Zomato | |
|---|---|---|
| Commission | None | A commission on each order, set by your contract |
| Delivery | Your own riders, a delivery partner, or pickup | Usually the platform’s riders |
| New customers | From Google, Instagram and word of mouth | The app’s own search can bring people who’ve never heard of you |
| Customer relationship | The chat and number stay with you | Largely sits with the platform |
| Payment | UPI or cash on delivery, checked by you | Collected by the app and paid out to you |
| GST and invoice | You bill the customer as usual | The platform pays the GST on the food and issues the invoice |
With a WhatsApp order button, the customer picks dishes and quantities on your menu, and the site writes a ready message, such as “2 chicken biryani, 1 firni, deliver to Lake Town”, that opens in WhatsApp. You confirm and share your UPI ID or take cash on delivery. Our guides to WhatsApp booking and UPI or a payment gateway cover both halves.
On the app side, since 1 January 2022 the platform has paid the GST on restaurant orders placed through it and issued the invoice (CBIC Circular 167/2021 (opens in a new tab)), which your accountant will need to know when matching app and counter sales. A sensible split: let the apps bring new customers, and give regulars your own menu link for direct orders. Try the flow on our sample café site, which has a menu with a WhatsApp cart.
QR code menus at the table
- Point the QR code at your menu page, such as yourcafe.in/menu, not at a PDF file or at a free QR service’s link that may expire or start charging. A code that holds your own web address never needs reprinting when prices change.
- Print it big enough to scan from a seat, with “Scan for menu” and the short web address underneath for anyone whose camera won’t cooperate.
- Test it on a few phones, including an older Android, on the mobile signal inside your shop.
- Keep a few printed menus for older guests and anyone without data.
- Add the table number if you take orders at the table. A code for table 4 can open yourcafe.in/menu?table=4, so the WhatsApp order arrives saying which table it’s from.
- Check the stickers now and then, to make sure nobody has stuck a different code over yours.
How to put your menu on Google
Your Google Business Profile has several places for a menu, and it’s worth filling all of them. Google’s help pages describe these:
- Menu link. Go to Edit profile, then Business information, then Contact, and paste the address of your website’s menu page into Menu link.
- Menu editor. Food and drink businesses can add sections, dishes, descriptions and prices directly, then add photos of items. Google says changes can take 24–48 hours to show on Maps and Search (About the menu editor (opens in a new tab)).
- Menu photos. You can also upload a photo or PDF of your printed menu. Treat it as a backup to the text menu, not a replacement.
- Ordering links. Under Food ordering, add your own ordering link and choose your preferred option. Delivery apps you work with may also appear there, and you can remove a provider’s link if you no longer want it (Manage online ordering options (opens in a new tab)).
- Chat. A verified profile can add a WhatsApp number, so people can message you straight from your listing (Edit your Business Profile (opens in a new tab)).
If Google finds menus from several sources, it lets you choose the preferred one. Whichever it shows, keep the prices on your site, on Google and on the apps the same, because customers notice when they don’t match. For the rest of your listing, see our Google Business Profile setup guide.
Keeping the menu up to date
A menu page is only as good as its last update. A simple routine helps:
- Change the website menu first. Your QR codes, Instagram bio and Google menu link all point to it, so they’re right the moment it is.
- Then update the Google menu editor and the delivery apps, and finally the printed cards.
- Mark dishes as sold out or seasonal rather than deleting them, so regulars know they’ll be back.
- Add a line such as “Prices updated October 2026” at the bottom. It reassures people the page is current.
- Set special hours for Puja and festival days on Google, and say on the menu page when pre-orders close.
WebNestle’s Growth plan (₹14,999, paid once) includes menu or price list pages and a booking system, which suits most restaurants and cafés; a small sweet shop that only needs a price list, hours and a WhatsApp button can do well on Starter at ₹7,999. See websites for restaurants and cafés, compare plans on our pricing page, or send us your current menu and we’ll show you how it would look as a page.
Common questions
How do I put my restaurant menu on Google?
Open your Google Business Profile, go to Edit profile, Business information, Contact, and add your website’s menu page as the Menu link. Food and drink businesses can also type dishes and prices into Google’s menu editor and upload menu photos. Google says changes can take 24–48 hours to appear on Maps and Search.
Is a PDF menu bad for my restaurant website?
It isn’t bad, just second best. A PDF is slower to open on a phone, hard to read without zooming and more work to update. Google can index PDFs, but a menu written as text on the page is easier for both customers and search engines, so keep the PDF as an optional download.
What is the best QR code menu for a restaurant?
A QR code that opens your own menu page, at an address you control such as yourcafe.in/menu. You can change prices on the page without reprinting the code, it loads like any web page, and it can carry a WhatsApp order button. Avoid codes that point to a PDF or to a free QR service that may expire.
Should restaurant menu prices include GST?
Either works, as long as the menu says which. Standalone restaurants and cafés usually charge 5% GST on food, but if you’re under the composition scheme or not registered for GST, you can’t add GST to the bill, so the menu price is final. The CCPA has also said menu prices should be the final price apart from applicable taxes, with no automatic service charge or “LPG charge” on top.
Do I need veg and non-veg symbols on my menu?
FSSAI’s menu labelling rules require the veg or non-veg logo, along with calories and allergen information, from food businesses with a central licence or outlets in ten or more locations. For a single café or sweet shop they’re strongly recommended, because customers look for them first. Use a green circle in a green square for veg and a brown triangle in a brown square for non-veg.
Can customers order from my website menu without Swiggy or Zomato?
Yes. A WhatsApp order button lets customers pick dishes on your menu page and send the order as a ready-written WhatsApp message. You confirm it, take payment by UPI or cash on delivery, and pay no commission, though you’ll need to handle delivery yourself or offer pickup.