To keep an opted-out guest out of the next campaign, make the unsubscribe available to the system that builds the audience, then check it again before the send. If the opt-out has not arrived, pause the affected campaign or apply a verified suppression list. Do not assume an old audience export will update itself.
The difficult part is often the handoff. A guest may unsubscribe from an email while their contact record also appears in an ordering system, a loyalty list and a separate campaign tool. Each copy can have a different update time. Your job is to identify which record controls the send and what happens when the copies disagree.
Map the opt-out to the campaign audience
Start with the next campaign you expect to run. Write down where its audience comes from, where it is stored and which tool actually sends it. A restaurant might collect guest details through its restaurant ordering system, manage other records in restaurant management software and build a campaign in a separate marketing tool. The names matter less than the path the data takes.
For each path, identify the unsubscribe source: the email footer, an SMS reply, a staff-entered request or another preference screen. Ask where that change is recorded first and when the sending tool can see it. A timestamp helps distinguish a recent opt-out from an older audience file, but only if the systems record and display times consistently. Note the time zone as well.
Then find the audience cutoff. An audience can be selected when a campaign is drafted, when a file is exported or shortly before sending. Ask whether the sending tool rechecks current preferences at send time or uses a fixed list. If it uses a fixed list, ask how to remove someone who opts out after the list was created.
Use the worksheet below for each source and marketing channel. The example entries describe controls to seek, not features to assume are present in any particular product.
| Checkpoint | Record for the campaign | Acceptance check |
|---|---|---|
| Opt-out source | Channel, contact identifier, request time and originating system | The request can be located and matched to the intended contact. |
| Sync | Destination, update time and expected delay | The destination reflects the opt-out within the agreed window. |
| Audience | Export time, list version and sending channel | The opted-out identifier is absent from the eligible audience. |
| Final check | Person responsible and send deadline | Later opt-outs are excluded before release, or the campaign is held. |
For matching, use the identifier relevant to the channel, such as an email address for email or a phone number for SMS. Ask how the tools handle changed addresses, duplicate records and formatting differences. Avoid sharing a full guest list more widely than necessary; the person checking the campaign needs a controlled way to verify exclusions, not an extra permanent copy of every contact.
Run a safe test before and after sync
Hypothetical example: A restaurant prepares a Friday email for 120 eligible contacts. At 10:00 a.m., the manager exports the audience. At 10:10, a test contact opts out in the source system. The planned sync reaches the campaign tool at 10:20, and the campaign is scheduled for 11:00. The restaurant wants the opt-out reflected within 15 minutes and wants a final audience check before release.
First, agree on the expected result. The test contact must be absent from the email audience used at release. It is not enough for the source record to show an unsubscribe if the sender still has an eligible copy. The test also needs to cover the interval before sync, when the source and destination may disagree.
- Create a clearly marked test contact and a test campaign in a sandbox or other non-sending mode. Use a simulated opt-out and simulated audience generation. Confirm that no real guest message, card payment or courier dispatch can result from the exercise.
- Record the test contact's status and the audience version before the simulated opt-out. This establishes whether the contact would otherwise have qualified.
- Record the opt-out time in the source. Before the expected sync completes, generate or inspect a simulated audience. If the sender still includes the contact, record that as the synchronization gap; do not release a live campaign during it.
- After sync, inspect the destination status and generate the simulated audience again. Check both the refreshed audience and any previously saved export that the campaign might use.
- Record the result, the times, the list version and the person who checked it. Pass only if the destination updates within the agreed window and the audience actually used for release excludes the test contact.
In this example, an update at 10:20 meets the 15-minute sync target. But the test still fails if the 10:00 export remains the list selected for the 11:00 send and contains the test contact. The sync time and the audience check are separate acceptance criteria.
If the tool can refresh the audience and recheck suppression before sending, use that path after confirming it works. If it cannot, a controlled manual suppression file may be an alternative: ask how to apply it to the exact list and how to confirm the exclusion. If neither path can be verified in time, hold the campaign. A later send is preferable to releasing an audience whose status is unknown.
After the simulation, a live service pilot is a separate decision. If you run one, use an approved, deliberately limited campaign and normal release controls; do not treat a simulated pass as proof that every live connection will behave the same way. Review any exceptions before expanding the audience.
Keep email and SMS preferences distinct
An email opt-out and an SMS opt-out may be recorded in different places. Map each channel separately rather than assuming that a change in one automatically updates the other. Also distinguish promotional messages from operational notices, such as an order update. Ask how each tool categorizes and controls those messages, and get qualified advice about the rules that apply to your business.
For example, a guest may ask staff to stop promotional texts while remaining on the email audience. The staff member needs a way to record the SMS request, identify the correct phone number and get that change to the SMS sender. The email campaign owner should not infer an email preference from that SMS request unless your policy calls for it or the guest asks for both.
On the other hand, if the request is ambiguous, staff should clarify it where practical and avoid sending the affected promotion while the request is unresolved. Give staff a short intake process: record the channel, identifier, request time and destination for escalation. Do not rely on a note in an order record that the campaign owner may never see.
Contact data access is not the same as permission to market. A system may hold an address for an order or a phone number for a pickup update without that record being eligible for a promotion. When comparing restaurant marketing automation tools, ask how they show channel preferences, suppress contacts from segments and handle a request that arrives after an audience has been saved.
Also ask about reversals. If a guest later chooses to receive a channel again, who records that choice, and how does the sender distinguish it from an old contact import? Set a rule for resolving conflicting records before your team imports another list. If the status cannot be established, keep the contact out of the affected promotional send until it can be resolved.
Assign an owner and a fallback before launch
Name one person responsible for the final campaign audience and a backup for days off. The owner does not have to operate every system, but they do need authority to hold a send and a clear contact for each system involved. Put the owner, expected sync window and final check time alongside the campaign schedule.
Define what triggers escalation: a sync that exceeds its agreed window, a failed import, an unmatched identifier, a duplicate with conflicting preferences or an export that cannot be refreshed. The owner should record the affected channel and campaign, stop the release, and ask the system administrator or vendor to identify the scope. A restaurant with several locations should also decide whether a request applies to a location's list, a shared list or both, based on its own setup and the guest's request.
Manual suppression can bridge a short gap, but it needs controls. Use the latest verified requests, match the correct identifiers, apply the file to the intended channel and confirm the resulting audience. Give the file an owner and a retention rule so an old copy is not mistaken for the current list. If the team cannot verify the file or the match, keep the campaign on hold.
Before buying or renewing, ask the vendor to walk through the same scenario: an opt-out after export but before send. Can staff see the source and update time? Can they identify the audience version that will be used? What alert or report shows a failed sync? What can the restaurant do without vendor support, and what requires a support ticket? Record the answers and the expected response times in the operating plan.
For your next step, choose one upcoming campaign and complete the worksheet with its owner. Then compare your marketing requirements with Fleksa's available workflows, including how preferences, audience refreshes and exceptions would be handled in your setup.
Frequently asked questions
Does an unsubscribe automatically update every restaurant system?
Do not assume it does. Map each connection and ask how quickly the change reaches the tool that builds and sends the campaign. Verify the resulting audience, not just the source record.
What if a guest opts out after the campaign list is exported?
Refresh the audience or apply a verified suppression process if your tools support it. Check the exact list selected for the send. If you cannot confirm the exclusion, hold the affected campaign.
Should an email unsubscribe also stop SMS promotions?
Keep channel preferences distinct and follow the guest's request and your business's policy. If the request is unclear, clarify it where practical and pause the affected promotion while it is unresolved. Ask a qualified adviser about applicable requirements.



