Skip to main content

Free menu template for Google Docs

A restaurant menu grouped by course with dishes, descriptions and prices, generated from your dish list whenever it changes.

Free to copy Google Docs PDF export No watermark

Free to copy, no sign-up: the file opens in your own Google Drive. Updated November 13, 2026.

The actual template Free menu template for Google Docs: preview of the first page

What’s in the menu template

Every block has a placeholder showing where your details go. Type over them by hand, or bind each one to a field in your data and let it fill itself.

  • Header with the venue name and service {{venue.name}} · {{menu.service}}
  • Course heading repeated for each group loop: {{courses}}
  • Dish line with description and price loop: {{dishes}}
  • Dietary and allergen markers per dish {{dish.markers}}
  • Set menu and supplements block {{menu.setPrice}}
  • Footer with service charge and date {{menu.footnote}} · {{menu.date}}

How to use this menu template in Google Docs

  1. 01

    Copy the template to your Google Drive

    Press "Copy to my Google Docs". Google asks to make a copy, and the copy is yours to edit; the original is never changed. All you need is a free Google account.

  2. 02

    Replace the placeholders with your details

    Text in double braces, like {{venue.name}}, marks where your own values go. Work down the page: header with the venue name and service; course heading repeated for each group; dish line with description and price, and so on.

  3. 03

    Make it match your brand

    Swap the logo, colours and fonts in Google Docs as you would in any document. The layout is built to hold when the text changes.

  4. 04

    Download it as a PDF, or share the link

    File, then Download, then PDF Document gives you a file to send or print. Download as Word (.docx) works too if someone needs it.

  5. 05

    Making these regularly? Fill it from your data

    Connect Airtable, Google Sheets or a CSV to SourceToDocs and it fills a copy of this template for every row, so you stop retyping.

A menu is a grouped list: courses in a fixed order, dishes under each, a price at the end of every line. It changes more often than anyone plans for — a supplier is short, a price moves, a dish comes off — and each change usually means someone reflowing a page at four in the afternoon. Because the number of dishes per course varies, this is a Google Doc.

What to include on a menu

SectionWhat to writeExample
HeaderRestaurant name, and the service if you run more than oneHarbour Kitchen · Dinner
Course headingsIn the order people eatStarters · Mains · Desserts
Dish nameShort and specificRoast cod
DescriptionMain ingredients in one lineBrown butter, capers, new potatoes
PriceRight-aligned, no trailing zeros needed24
Dietary markersA consistent short code, with a keyV · VG · GF
Set menu and supplementsPrice for the set, any extrasTwo courses 32 · Three courses 38
FooterService charge, allergen notice, datePlease tell us about allergies

How to make a menu in Google Docs

  1. Copy the template and replace the restaurant name and service.
  2. Type each dish on its own line: name, a one-line description, then the price.
  3. Keep descriptions to one line. Long descriptions push dishes onto a second page and slow ordering down.
  4. Add dietary markers and keep the key in the footer.
  5. Download as a PDF for printing, and to link from a QR code on the table.

Letter or A4 portrait suits a one-page menu; fold it for a two-panel menu, or set a narrower page in File › Page setup for a tall single column. Print on 160 gsm paper or heavier, or laminate copies that will be reused.

Changing prices and dishes

Menus change weekly. If you keep the dishes in a Google Sheet, a row per dish with its course and price, the menu can be regenerated from the sheet whenever something changes, and the lunch, dinner and set menus all stay in step.

Keep dishes as rows and courses as an order

Hold every dish as a row carrying its course, description, price and any dietary markers, plus a flag for whether it is on today. The document then nests two loops: courses on the outside, dishes on the inside. Taking a dish off is a checkbox rather than a deletion, so it comes back next week without being retyped, and a group with several sites generates one menu per site from the same list at each site’s own prices.

Fill this menu template from Airtable, Google Sheets or a CSV

Connect an Airtable base, a Google Sheets spreadsheet or a CSV file, map each field to a placeholder, and generate. One run can produce a single document or one per matching row, delivered to your Google Drive.

Product & catalogs: A restaurant menu grouped by course with dishes, descriptions and prices, generated from your dish list whenever it changes.

Dishes · Google Sheets

CourseDishPrice
StartersSalt cod croquettes$9
MainsHake, brown butter, capers$26
DessertsBurnt basque cheesecake$8

Template: Google Slides or Docs

{{venue.name}}

{{menu.service}} · {{menu.date}}

loop: {{courses}} → heading

loop: {{dishes}} → line

{{dish.price}}

dishes grouped by course, filtered to what is on tonight

Generated output

DocsPDF

The Harbour Room

Dinner · 16 Sep 2026

4 course headings

19 dish lines

$26

Who uses this menu template

Restaurants and bars

Reprint the menu when a dish or a price changes, without reformatting the whole page each time.

Read the guide

Multi-site groups

Generate a menu per site from one dish list, with each venue's own prices and availability.

Read the guide

Caterers and event venues

Produce a menu per event from the dishes chosen for it, printed the morning of service.

Read the guide

Common questions, answered

How does the grouping by course work? +
As a nested loop. The outer loop repeats a heading for each course in order — starters, mains, desserts — and the inner loop repeats a dish line under it. Adding a course or moving a dish between courses is a change in the sheet, not a reformatting job in the document.
Can each site have its own prices? +
Yes. Hold the price against the dish and the site rather than in the layout, then run the menu once per site. Each venue gets the same dishes at its own prices, and dishes a site does not serve are filtered out of that run entirely.
Can it show allergens and dietary markers? +
Yes, as fields on the dish row. Markers print beside the dish name wherever the designer placed them, so they stay consistent across every reprint. Because they live in the data, a kitchen change updates every menu the next time you generate rather than only the one someone remembered to edit.
Can I use my own menu design? +
Yes. Menus are typographic and most venues have a look they will not give up. Build the menu in Google Docs with your own typeface, spacing and rules, mark the course headings and dish lines as repeating placeholders, and generate against that.
Is this menu template free? +
Yes. Copy it to your own Google Drive at no cost and with no sign-up, then edit it like any Google Docs file. You only need SourceToDocs if you want it filled from your data automatically, and that has a free plan too.
Can I download this menu template as a PDF or Word file? +
Yes. Open your copy in Google Docs and choose File, Download. PDF Document gives a print-ready file; Microsoft Word (.docx) gives an editable one for people who do not use Google Docs.

Generate this document from your data

Start on the free plan, connect Airtable, Google Sheets or a CSV, and export a real Google Docs file. No watermark, no credit card.