SMS marketing for restaurants: costs, consent and what to send
You will be able to work out what each restaurant text really costs per segment, collect SMS consent at your guest WiFi login that meets UK GDPR and PECR, and send three targeted messages that bring diners back.
A marketing SMS is billed per segment: 160 plain characters, or 70 if it contains an emoji. Under GDPR and the UK's PECR you need specific opt-in consent for SMS. The three messages that bring diners back are a welcome-back offer, a quiet-shift fill and a lapsed-diner win-back, sent to numbers captured at your guest WiFi login.
What does SMS marketing do for your restaurant?
SMS marketing turns one visit into a second one. It reaches the phone your diner used to join your WiFi. They read it without opening an app or an inbox. That suits restaurant messages that expire: a free table tonight, a midweek set menu, or a reason to return before the menu changes.
Judge it on commercial outcomes. Measure four of them:
- Repeat visits.
- The opt-in rate at your WiFi login.
- Revenue per send.
- Lifetime value per diner.
Delivery and click counts help you diagnose problems, but they do not pay for the send.
Sending is the easy part. Mailchimp, Klaviyo and HubSpot can all send campaigns, but only to contacts you already hold. None of them collects a consented mobile number from the diner at table 12. That gap is real: venues typically know only a small fraction of their guests.
Guest WiFi closes the gap. A diner joins your network, ticks an SMS opt-in on your branded login page and confirms their number. That number joins your first-party data, with a record of the consent behind it. Purple Engage then turns those contacts into campaigns, so the list builds itself while you serve. The Product overview shows how Engage sits on top of your WiFi.
What does SMS marketing cost a restaurant per message?
The real per-message cost is not the headline rate on a provider's price page. It is the rate multiplied by the segments each message uses, multiplied by the people you send it to.
How SMS providers bill you
Every SMS is split into segments under the GSM character standard (3GPP TS 23.038). A message written only in the basic GSM-7 character set fits 160 characters into one segment. One emoji, or one character outside that set, switches the whole message to UCS-2 encoding. A single UCS-2 segment holds only 70 characters.
Longer messages are stitched together from several segments. Each segment gives up a few characters to the joining data. A multi-part GSM-7 message carries 153 characters per segment, and a multi-part UCS-2 message carries 67. Twilio publishes the same limits in its developer documentation.
Your cost formula is: segments per message × recipients × your provider's rate per segment.
The table below shows how length and character choice change the bill. The final column uses 4p per segment as a round illustrative figure, not a quoted price. Replace it with your own contract rate.
| Message | Encoding | Characters | Segments | Cost per 1,000 sends at an illustrative 4p |
|---|---|---|---|---|
| Plain-text offer | GSM-7 | 120 | 1 | £40 |
| Plain-text offer at the limit | GSM-7 | 160 | 1 | £40 |
| Plain-text offer with a long link | GSM-7 | 200 | 2 | £80 |
| Plain-text menu announcement | GSM-7 | 320 | 3 | £120 |
| Short offer with one emoji | UCS-2 | 60 | 1 | £40 |
| Offer with one emoji | UCS-2 | 120 | 2 | £80 |
| Offer with one emoji | UCS-2 | 150 | 3 | £120 |
Compare the last row with the first two. A 150-character offer costs £40 per 1,000 sends in plain text and £120 with a single emoji. Curly quotation marks sit outside the GSM-7 set too. Text pasted from a word processor can trigger the same switch on some platforms, so preview every message before you send it.
What else to ask your provider
Ask four questions before you sign:
- Is the rate charged per segment or per message, and does it change by destination country?
- Do you pay for messages that fail to deliver?
- Is there a monthly minimum, or a fee for an alphanumeric sender ID (your restaurant's name in place of a number)?
- How are opt-out requests captured and applied to your list?
The last question matters more than it looks. Alphanumeric sender IDs are one-way, according to Twilio's documentation. A "Reply STOP" line only works from a number that accepts replies. If you send under your restaurant's name, include a short opt-out link instead.
Worked example: an 80-cover neighbourhood restaurant
Situation. An independent 80-cover restaurant has built 1,500 consented mobile numbers from its guest WiFi over a season. Tuesdays run at half capacity. The owner's till data shows an average spend of £30 per head.
What they do. The team writes a 150-character Tuesday set-menu message in plain GSM-7 text, with no emoji. That keeps it to one segment. They send it at 2pm on the day to the full list. The message carries a code that staff note at the till.
Outcome. At the illustrative 4p rate, the send costs £60, so two covers pay for it. The first draft carried a smiley face. That version would have run to three segments and cost £180, needing six covers to break even. Deleting one emoji cuts the send cost by two thirds.
What consent do you need before you send marketing SMS?
You need clear, opt-in consent for SMS specifically, recorded at the moment the diner gives it. In the UK two laws apply together. The UK GDPR sets the standard for consent. PECR sets the rules for electronic marketing.
What GDPR requires
GDPR Article 4(11) defines consent as freely given, specific, informed and unambiguous. At your WiFi login, that means four things.
- Opt-in, never pre-ticked. Recital 32 states that silence, pre-ticked boxes and inactivity do not count as consent.
- Separate from access. Do not make SMS consent a condition of getting online. Under Article 7(4), consent tied to a service that does not need it is unlikely to be freely given.
- Specific to the channel. Ask for SMS separately from email, so the diner knows exactly what they agreed to.
- Easy to withdraw. Article 7(3) requires withdrawal to be as easy as giving consent. Article 21 gives every diner the right to object to direct marketing at any time.
Purple's conscious-choice opt-ins follow this pattern. The diner gets online either way, and marketing consent is a separate, deliberate tick.
What PECR adds in the UK
The Privacy and Electronic Communications Regulations (PECR) govern marketing by text. Regulation 22 requires prior consent before you send marketing texts to individuals. There is one exception, known as the soft opt-in.
The soft opt-in covers people whose details you collected during a sale, or negotiations for a sale. You may text them about similar products, as long as you offered an opt-out at collection and in every message.
A free WiFi login is not usually a sale. Do not rely on the soft opt-in for WiFi-captured numbers; ask for consent explicitly. The ICO's direct marketing guidance also expects every message to identify you and give a simple way to opt out.
What to record
Article 7(1) requires you to demonstrate that a person consented. For every opt-in, keep four records:
- The date and time.
- The venue.
- The exact wording shown.
- The channel the diner agreed to.
If a complaint reaches the ICO, that record is what you show them.
If you operate outside the UK
US venues fall under the Telephone Consumer Protection Act. FCC rules require prior express written consent for marketing texts sent with automated systems. Purple's login pages are built for compliance with GDPR, CCPA and major global data protection acts. They run in over 25 languages, so one login flow can serve sites in several countries. Take local legal advice on the consent wording for each market.
How do you build your SMS list from guest WiFi logins?
You build it once, at the login page, and it grows every service. Purple has run guest WiFi since 2012 and handled 440 million logins in 2024 across 80,000+ live venues (Purple data). Here is the sequence. The linked support articles hold the exact steps.
Step 1: choose the plan that captures contact data
Purple Connect gets guests online securely through a branded login page. Purple Capture adds what SMS marketing needs. It captures contact and demographic information, enriches your CRM database and integrates with the CRM you already run. The Connect vs Capture support article sets out what each plan includes. For the wider picture, see Guest WiFi.
You keep your existing access points. Purple is hardware-agnostic and runs as a cloud overlay on Cisco Meraki, HPE Aruba, Ruckus, Juniper Mist, Ubiquiti UniFi, Cambium, Extreme and Fortinet.
Step 2: add a mobile field and a separate SMS opt-in
Put a mobile number field on your splash page with an unticked SMS consent box beside it. Keep the wording plain: what you will send, and how often. For example: "Text me offers and table availability, up to four times a month." Collect email consent on the same page with its own tick box. Collect customer emails in a restaurant without sign-up forms covers the email side.
Step 3: connect an SMS provider and verify numbers
Purple's SMS connectors send both marketing SMS and SMS verification messages. A verification text at login confirms the number reaches a working phone, so mistyped numbers never reach your list.
The MSEGAT connector, for the Saudi Arabian SMS network, shows how set-up works. You add your provider's API key in the Purple platform. You then choose whether every venue in your company, or only one group of venues, can use the connector. Once saved, it can take up to ten minutes to appear. Only the mobile number and the message text pass to the provider. The full steps sit in the MSEGAT support article.
Step 4: segment in Purple Engage
Each WiFi login carries a date and a venue. That lets you segment diners by first visit, visit frequency and time since their last visit. These three fields drive every message in the next section.
Which three SMS messages bring diners back?
Three messages do most of the work. Each answers a different commercial question:
- Will a first-time diner return?
- Can you fill a quiet shift?
- Can you win back someone who stopped coming?
| Message | Trigger | When to send | Target length | What it asks for | How you measure it |
|---|---|---|---|---|---|
| Welcome-back offer | First WiFi login with SMS consent | 2 to 3 days after the visit | Under 160 characters, 1 segment | A second visit within 30 days | Code redemptions and repeat WiFi logins within 30 days |
| Quiet-shift fill | A shift forecast to run below half capacity | Same day, around 2pm | Under 160 characters, 1 segment | A booking for that evening | Covers on that shift against the same shift over the previous 4 weeks |
| Lapsed-diner win-back | No WiFi login for 60 days | Once, then not again for 90 days | Under 160 characters, 1 segment | A visit before a stated date | Return WiFi logins against a 10% holdout group |
Message 1: the welcome-back offer
This message turns a first visit into a habit. Send it two to three days after the visit, while the meal is still fresh in the diner's mind. Give them a concrete reason to return within a fixed window.
Example (plain GSM-7, under 160 characters):
"[Restaurant]: thanks for visiting on Friday. Show this text for a free dessert with any main before [date]. Opt out: [short link]"
Name the day they visited. It proves the message is about them, not a blast to everyone.
Message 2: the quiet-shift fill
This message protects margin on nights that would otherwise run half empty. Send it on the day at around 2pm, early enough to change dinner plans. Target diners who have visited that site in the last 90 days, because they live or work nearby.
Example:
"[Restaurant]: tables free tonight. 2 courses for [price] from 5pm, Tuesday only. Book: [short link]. Opt out: [short link]"
Only send it when the forecast is weak. If every Tuesday gets the same text, diners learn to wait for it.
Message 3: the lapsed-diner win-back
This message recovers diners who have drifted. Trigger it after 60 days without a WiFi login at their usual site. Send it once, then leave them alone for 90 days. Pair it with something new, such as a menu change, so the message gives news rather than pleading.
Example:
"[Restaurant]: our spring menu is live. Show this text for 20% off food, Monday to Thursday, until [date]. Opt out: [short link]"
Birthdays work too, but email gives you room for the occasion. Birthday and anniversary email campaigns for venues covers that programme.
Worked example: a 12-site pub group
Situation. A 12-site pub group holds 24,000 consented mobile numbers from guest WiFi logins. Its habit is one monthly text to everyone. At the illustrative 4p rate for a one-segment message, that costs £960 a send, or £11,520 a year.
What they do. The group replaces the blast with two targeted sends. The win-back goes only to diners with no WiFi login at their home site for 60 days. In a typical month that is 6,000 numbers. The quiet-shift fill goes only to diners at the two sites with the weakest Mondays, which is 4,000 numbers.
Outcome. The win-back costs £240 and the quiet-shift fill costs £160. Monthly spend falls from £960 to £400, a 58% reduction. Every text now reaches a diner it is relevant to. A 10% holdout in each segment shows how many return visits the messages actually caused.
How do you know your SMS marketing is working?
Measure what the till and the WiFi logins can prove. Six numbers tell you most of what you need.
- Opt-in rate at login. This is the share of WiFi logins that tick the SMS box. If it falls, rewrite the consent wording before you blame the offer.
- Delivery rate. Failed deliveries point to bad numbers. Verification at login should keep this rate high.
- Opt-out rate per send. A spike after one send tells you that message was too frequent, too late or irrelevant.
- Revenue per send. Divide attributable revenue from codes and bookings by the cost of the send. The 80-cover example above needed £60 back to break even.
- Return visits. Count repeat WiFi logins within 30 days of the send. A returning diner's phone logs in again, so you see visits that never used a code.
- Lifetime value. Compare 12-month visits and spend for diners who opted in to SMS with diners who did not.
Use a holdout group
Opted-in diners are often your regulars already, so raw comparisons flatter SMS. Hold back 10% of each segment at random and send them nothing. The difference in return visits between the two groups is the lift your message created. It is the number to quote when you defend the budget.
What goes wrong, and how do you avoid it?
Most SMS programmes fail on cost control, consent or relevance, not on copy.
Emoji and pasted text multiply the bill
One emoji can triple the cost of a 150-character message. Write in plain text and preview the segment count before every send.
Consent bundled with WiFi access
If diners must accept marketing to get online, that consent is unlikely to be freely given under GDPR Article 7(4). Keep access and marketing as separate choices.
One list for every message
A blast to everyone costs more and earns more opt-outs. The pub group example cut spend by 58% by sending each message only to the diners it fits.
An opt-out that does not work
"Reply STOP" fails from a one-way alphanumeric sender ID. Use a reply-capable number or a short opt-out link. Apply opt-outs to your list before the next send.
Long links that tip you into a second segment
A full booking URL can push a 140-character message past 160. Use a short link and count the characters after you add it.
Sending too often or too late
Set a frequency cap, such as four marketing texts per diner per month, and state it at opt-in. A 10pm text about tonight's tables arrives too late to act on. Send same-day offers in the early afternoon.
Unverified numbers
A mistyped number costs you on every send and never converts. Verify numbers by SMS at login, so only working phones reach your list.
Frequently asked questions
How much does SMS marketing cost a restaurant per message?
The cost is your provider's rate per segment, multiplied by the segments in each message and the number of recipients. A plain-text message of up to 160 characters is one segment. Add an emoji and the limit drops to 70 characters, so a 150-character offer becomes three segments. That can triple the cost of every send. Ask providers whether they charge per segment, for failed deliveries, and for an alphanumeric sender ID.
Is a guest WiFi login enough consent to send marketing SMS?
No, a login on its own is not consent. Under GDPR, consent must be freely given, specific, informed and unambiguous, and pre-ticked boxes do not count. Ask for SMS consent with a separate, unticked box, and never make it a condition of getting online. In the UK, PECR's soft opt-in rarely applies, because a free WiFi login is not usually a sale. Record the time, venue and wording of every opt-in.
Do I need new WiFi hardware to collect mobile numbers?
No, you keep the access points you already own. Purple is hardware-agnostic and runs as a cloud overlay on Cisco Meraki, HPE Aruba, Ruckus, Juniper Mist, Ubiquiti UniFi, Cambium, Extreme and Fortinet. Your diners see a branded login page with a mobile number field and an SMS opt-in. Their consented numbers then flow into your first-party data and on to Purple Engage for campaigns.
Which Purple plan collects mobile numbers for SMS marketing?
Purple Capture collects them. Connect gets guests online securely through a branded login page, with GDPR and CCPA compliance and WiFi analytics. Capture adds contact and demographic data capture, CRM integration and email verification. It also includes project management, deployment and onboarding services. Purple Engage then turns that captured data into segmented campaigns. The Connect vs Capture support article compares both plans line by line.
How is this different from sending SMS through Mailchimp or Klaviyo?
The difference is where the list comes from. Mailchimp, Klaviyo and HubSpot send campaigns to contacts you already hold, usually from web forms or imports. Purple builds the list at your door. Every diner who joins your guest WiFi can opt in to SMS and confirm their number. Venues typically know only a small fraction of their guests, which is the gap WiFi capture closes.
Can I keep using my existing CRM?
Yes, Purple Capture integrates with your existing CRM to enrich the profiles you already hold. Mobile numbers, consent records and visit data captured at the WiFi login sit alongside your current records. You do not have to rebuild your database. You can run SMS campaigns from Purple Engage, or continue to use the CRM you have and feed it richer first-party data.
How long does it take to start sending SMS from WiFi data?
Connecting an SMS provider takes minutes once you have its API key. With the MSEGAT connector, you enter the key in the Purple platform, choose which venues can use it and save. It can take up to ten minutes to appear. Your list then grows with every login. Capture includes project management, deployment and onboarding services, so your team does not configure the login page alone.