Grow · Marketing · Paid ads

Restaurant marketing ideas that actually fill seats

The boosted post got 40,000 impressions and Tuesday was still empty. Reach is not the problem. Who sees it, when they see it and what happens next is the problem.

·6 min read

The boosted post reached 40,000 people and Tuesday night was still quiet. That is the normal outcome, because reach is not the thing you were short of. You were short of people within ten minutes of your door, deciding at 5pm what to do about dinner, with a reason to pick you over the four other places they are scrolling past.

Everything below is built around that sentence: the right radius, the right hour, and a reason that is specific to the shift you need to fill.

Set the radius you would actually travel

Open your campaign’s location settings and shrink them. Most restaurant ads we audit are running on a city-wide or 25-mile radius, which means most of the budget is spent on people who will never come.

  • Pick a radius you would honestly cross for a meal like yours. In a dense city that is often three to five kilometres. For a destination restaurant it is wider, and for a lunchtime café near offices it is walking distance.
  • On Meta, set the location option to people living in or recently in the area, not “people interested in this location”, which includes travellers and the merely curious.
  • Add the obvious exclusions. If a river, a motorway or a bridge toll sits between you and part of that circle, those people are not coming for a weekday dinner.
  • For multiple sites, one campaign per location with its own radius and its own creative. A shared campaign will quietly spend most of the budget on whichever branch converts cheapest and starve the one that needed help.

People decide about lunch between about 11am and 1pm, and about dinner between about 4pm and 8pm. An ad seen at 10am on Sunday for a Tuesday lunch offer is a reminder. An ad seen at 5pm on Tuesday is a booking.

Use the ad schedule, not continuous delivery, and set it per campaign:

  1. Switch the campaign to a lifetime budget, which is what unlocks scheduled delivery on Meta.
  2. Build two day-parts: a pre-lunch window and a pre-dinner window, on the days you are actually trying to fill.
  3. Keep weekend brunch separate from weekday lunch. Different audience, different creative, different offer.
  4. Leave one always-on campaign for brand searches and people looking you up by name. Do not schedule that one off.

Dayparting also protects you from the worst outcome in hospitality advertising, which is a flood of interest at a time you cannot serve it.

Build the offer for the shift that is empty

A discount on a full Friday costs you margin on covers you would have sold anyway. The offer should be tied to the gap in your week and should expire.

The shift you are trying to fill An offer that works An offer that just costs you margin
Quiet Tuesday and Wednesday evenings A midweek set menu at a fixed price, two courses, named days only 20% off everything, all week
Early dinner, 5pm to 6.30pm Early seating price, bookable only in that window A general voucher with no time limit
Weekday lunch A fast lunch promise with a time, for example served in 15 minutes Free dessert with any main
Slow first week of the month A new dish launch with a tasting price Another discount on your best-sellers
Empty kitchen capacity, full dining room Collection-only deal, priced below your delivery menu Discounted delivery through a marketplace

Two rules we hold to. Never discount the thing you are known for, because you teach people to wait for the discount. And always put a date on it, so the campaign has a reason to end and you have a clean read on what it did.

Google Business Profile is your second front door

For a restaurant, the profile often gets more views than the website. Fill it in properly:

  • Menu link and a food menu added directly, with prices, so nobody has to open a PDF.
  • Photos updated monthly, including the street frontage, the room at night and individual dishes. Dish photos are what people compare.
  • An ordering link that points at your ordering page, and a reservation link to your booking system.
  • Hours set per service, with holiday hours in advance. A wrong “closed” label on a bank holiday is an evening of lost covers.
  • Posts for the current offer, because the offer then appears in your profile when somebody searches your name.
  • Reviews answered, all of them, briefly and without defensiveness.

The rest of the local search side, including location pages and citations, is in our local SEO checklist. It takes three to six months to move map rankings, so start it alongside the ads rather than instead of them.

Delivery platforms versus orders you own

Marketplaces are good at discovery. They are expensive as a sole channel, because the commission on your statement applies to every order that customer ever places through them, including the ones they would have placed with you anyway.

Do the arithmetic once, on your own numbers: take a typical order value, subtract the commission rate on your statement and your packaging cost, and write down what lands in your account. Then work out what it costs you to win that same order directly. Once you know both numbers, the strategy is obvious:

  • Put your own ordering page behind every ad, every profile link and every QR code on your tables and packaging.
  • Make direct ordering plainly better in a way that costs you less than the commission: a collection price, a free item, loyalty credit, priority slots.
  • Keep the marketplaces for the capacity you cannot sell yourself, and stop bidding your ad budget into them.

A single-page ordering or booking page is a small build. We delivered one for a coffee brand in a one-day landing page, which is roughly the scope this needs.

Get reservations out of the DMs

At 7.30pm on a Saturday, nobody is reading Instagram. That is exactly when the DMs and comments arrive, and they are the warmest enquiries you get all week.

Automate the first reply. When someone comments on a post or an ad, the system can like the comment, answer publicly and open a private message within seconds. In that message you send the menu, the booking link and one question: which day and how many people. We built exactly this comment-to-conversation flow for a herbal brand’s Facebook ads, where every ad comment turns into a messenger conversation that captures a phone number. The same pattern takes a table booking.

For WhatsApp, the flow runs further: available times, party size, dietary notes, confirmation, and a reminder before the booking. Reminders are not just for clinics; a confirmed table that nobody reminds is a table that walks. The mechanics are the same ones we describe in cutting no-shows with WhatsApp automation.

Make them come back without paying again

Every acquisition channel gets more expensive. A customer list does not. Collect a mobile number or email at the point of order or booking, with consent, and use it sparingly: a message when you need covers, a new menu, a reason tied to a date. One or two sends a month, measured in covers, not opens.

Organic social does a different job here. It keeps you in mind between visits and gives your paid creative a testing ground, which is the split we set out in what social media actually does for sales. The look matters more in food than in most categories: a consistent system, as in the branding and content set we built for an artisan bakery, means every post reinforces the same thing rather than starting again.

What this looks like when we do it

For a single location we set up order and reservation tracking first, then one radius campaign with two day-parts, one offer aimed at the quietest shift, an ordering page you own and an automated first reply on Instagram and WhatsApp. Live inside 14 days, in your own ad accounts, and judged on covers and orders rather than reach.

The decision in front of you is narrower than “do we need marketing”. It is which shift you are filling, what the offer for that shift is, and whether an enquiry at 7.30pm on Saturday gets answered. Book the free audit if you want a strategist to look at your ad account, profile and ordering flow first, and you keep the one-page plan either way.

Common questions

What are the best marketing ideas for a restaurant?

Local radius ads scheduled around service times, a complete Google Business Profile with menu and booking links, an offer built for your quietest shift, automated replies to Instagram and WhatsApp enquiries, direct ordering instead of marketplace-only, and an SMS or WhatsApp list you message when you need covers.

How much should a restaurant spend on local ads?

We recommend at least $1,000 a month in ad spend for a single location, because a smaller budget cannot gather enough conversion data to optimise against. If you are below that, put the money into your Google Business Profile, photography and an ordering page first, then advertise.

Are delivery apps worth it for restaurants?

They are worth it for discovery and for filling kitchen capacity you cannot otherwise sell. They are expensive as your only channel, because the commission comes off every repeat order forever. Use them to get found, then give customers a reason to order direct next time.

How do I get more reservations from Instagram?

Stop relying on DMs being read during service. Put a booking link in the bio and in every story, automate the first reply to a DM or comment so the enquirer gets the menu and the booking link within seconds, and send the booking straight into your reservation system.

Proof from our work

Free · 30 minutes · No obligation

Get your free growth audit.

In 30 minutes we'll show you where your ads, store and follow-up are leaking money, and what we'd fix first. You keep the action plan either way.

  • Ads & tracking review
  • Store or funnel teardown
  • Automation opportunities