How to Make a Restaurant Website (Free, in an Afternoon)
A restaurant website has one job: get a hungry person to a table. That means the hours, the address and the phone number before anything else, the menu with prices, a few honest photos, and a way to book. You can have all of that online this afternoon: pick the restaurant template, replace the demo texts and photos with yours on the Site content page, and publish. It is free, and the table request form works from the first minute.
What does a restaurant website need?
Watch someone look up a restaurant on their phone. They want to know four things in the first second: is it open now, where is it, how do I get a table, and what does it serve. A good restaurant website answers those at the top of the page and only then tells its story.
- Hours, address and phone on the first screen, as text (not an image), so a phone can tap to call or open the map.
- The menu with prices, as text on the page rather than a PDF: a PDF is unreadable on a phone and invisible to search engines.
- A way to book: a request form, a booking link, or at least a phone number that works.
- Photos of the room and a few dishes. Three good ones beat twenty average ones.
- Allergens and diets: say which dishes are vegan or gluten-free and that the kitchen adapts; it saves a phone call for every second table.
- Structured data: the hours, the menu and the address written in the format search engines read, so they can show them in results and answer questions about you.
Which way should you build it?
There are three routes, and the right one depends on how much you want to touch it later.
| Route | Good for | Watch out for |
|---|---|---|
| A template you fill in | One page, live today, changed by you whenever the menu changes | You stay within the template's sections; that is also why it stays fast |
| A website builder | Many pages, online ordering, a design you lay out yourself | Monthly fees to keep it online, and a page that is often slow on phones |
| A designer or agency | A brand, photography and a site made for you | Weeks of lead time and a cost per change afterwards |
Most neighbourhood restaurants need the first route: one page that is correct and fast, changed by the owner when the menu changes. The steps below are for that route.
How do you make it with a template, step by step?
- Open the restaurant template and look at the live preview: hours, address and phone at the top, the menu with prices, the room, reviews, questions and a table request form.
- Press Use this template. You sign up (free) and the site goes live at your-name.onstatpio.com with the demo content, within seconds.
- On the Site content page, start with Contact details: your address, phone, email, opening hours (one line per entry) and a map link. These feed the top of the page and the structured data.
- Replace the Menu: each dish has a name, a price and an optional note ("vegan", "contains nuts"). Add drinks under Drinks. Prices are text, so write them as you do on the menu board.
- Upload your photos: the room for the opening image, three to six dishes for the menu. Around 1,600 pixels wide is plenty; the page tells browsers each image's size so nothing jumps.
- Write the About paragraph in your own words, add two or three reviews you have permission to quote, and answer the questions people ask on the phone: booking, allergies, groups, dogs.
- Check Form and booking: the table request form asks for date, time and party size. If you use a reservation system, paste its link for a Book online button.
- Press Publish. The site is live. Change the menu whenever you like and publish again.
The same steps, with screenshots, are in the Help center: start a website from a template.
How do table requests work without a booking system?
The form on the template is a request, not a reservation engine. A guest sends their name, phone, the date and time they would like and how many they are; it arrives under Forms & leads in your dashboard, and your browser can notify you. You confirm by phone or email, the way most small restaurants already do. Spam is filtered before it reaches you. On Free Forever a website takes 250 messages a month, which is a lot of tables; more arrive locked until you move up a plan.
If you grow into a reservation system later, nothing changes on the page: paste its link into Form and booking and a Book online button appears next to the form. How forms work in detail: add a contact form.
How do you get found on Google and in AI answers?
For a restaurant, being found means two things: the name search ("Wren & Barrel Leeds") and the near-me search ("bistro Chapel Allerton"). The page helps with both when it carries the right words and the right data.
- The title and description say what and where you are: "Wren & Barrel, bistro in Chapel Allerton, Leeds" beats "Home". The template writes them from your name and headline; the Basics section lets you set the browser tab title yourself.
- Structured data: the template writes your restaurant as schema.org Restaurant, with the address, phone, opening hours, price range and the menu with prices. Search engines read this directly, and AI assistants use it to answer "is it open on Sunday" correctly.
- An llms.txt: a plain text summary of who you are, what you serve and how to reach you, for assistants that look for one.
- Your Google Business Profile matters as much as the site for near-me searches: claim it, keep the hours identical to the ones on the page, and link it to the site.
- Speed: the template has no scripts and loads its own fonts, so it is fast on a phone in a car park. That is a ranking factor, and a patience factor.
What does it cost?
The template runs on Free Forever: one website at your-name.onstatpio.com with HTTPS, unmetered bandwidth, a working form with 250 messages a month per website, analytics with 30 days of history, and a small Statpio badge in the footer. If you want your own domain (wrenandbarrel.co.uk) and no badge, that is Solo Pro at $9 a month, and connecting the domain takes a few minutes: connect your domain.
Start with the free address, get the menu and the hours right, and move to your own domain when the first bookings come through the form.
Frequently asked questions
Do I need a booking system?
Not to start. A request form that asks for the date, time and party size does the job for most small restaurants; you confirm by phone or email. If you already use a reservation system, add its link and the page shows a Book online button.
Can I change the menu myself?
Yes. On the Site content page you change dishes, prices and notes and publish again; the structured data updates with it. No code and no designer needed.
Does the restaurant website cost anything?
The template runs on Free Forever: one website at your-name.onstatpio.com with HTTPS, a working form with 250 messages a month and analytics. Your own domain and no badge are Solo Pro at $9 a month.
Will Google show my menu and hours?
The template writes them as structured data (schema.org Restaurant with its menu and opening hours), which is what Google reads. Keep the hours and prices current, and claim the Google Business Profile for the restaurant as well; the two work together.
Keep reading
Related articles
How to Make a Portfolio Website That Gets You Work
What a portfolio website should show, how to choose and prepare the photographs, and the step-by-step for a one-page portfolio with a contact form, hosted free.
Read nextHow to Make a Wedding Website With RSVPs, Free
What goes on a wedding website, how to collect RSVPs with dietary needs, when to put it online, and the step-by-step for a free one-page site with the schedule and venue.
Read nextHow to Build a Website with Claude, ChatGPT or Cursor
Connect Statpio to your AI assistant once, then describe your business: it builds the site, uses your own photos and publishes it with a contact form.
Read next
Deploy a Bolt, v0 or Older Lovable Site on Your Own Domain
Built with Bolt.new, v0, Cursor or Claude, or a Lovable project made before 13 May 2026? Find out what kind of app you have, build it, upload it and connect your own domain.
Read next