How to Track OpenTable Reservations From Facebook Ads: Follow the Booking to the Check
Track an OpenTable reservation from a Facebook ad through the booking, arrived party, covers, and settled restaurant check.
To track OpenTable reservations from Facebook ads, put a unique campaign source in the booking path, confirm that source appears in the reservation record you can access, mark whether the party arrived, and connect the arrived party to its settled check.
The path is simple:
Facebook ad → OpenTable reservation → arrived party → settled check
The difficult part is keeping the same campaign identity through every handoff. If the source disappears when somebody moves from the ad to your website and then into the booking widget, the reservation may still happen while the campaign gets no credit.
Give every campaign its own booking source
Start with a campaign-specific reservation link. The label should tell you the location, offer or occasion, and campaign without exposing personal information.
For example:
Location: Downtown
Campaign: Tuesday Tasting Menu
Source: Facebook
Use that same name in the ad, booking link, internal report, and POS analysis. Do not send several locations and offers through one generic reservation link if you expect to compare them later.
OpenTable's official restaurant guidance said its marketing tracking could connect reservations and revenue with digital channels including Facebook and Instagram ads. That statement appeared in a 2021 guide and does not establish which campaign fields or reports are available in every current account. OpenTable for Restaurants, accessed September 5, 2026
Before spending, open the final link yourself and confirm the campaign source appears in a reservation record or export you can actually use.
Make sure your website does not erase the campaign
The most common break happens between the ad and the OpenTable widget. A guest clicks a Facebook ad, lands on the restaurant's homepage, browses the menu, and books later. If the site does not carry the campaign information into the booking link, the reservation may be labeled as generic restaurant traffic.
In an April 2026 Feast setup, OpenTable widget traffic was initially labeled as restaurant traffic, which made paid and organic bookings indistinguishable. Feast added site code that preserved the ad information and passed it into the booking widget. That is evidence from one implementation, not a promise that every website or OpenTable account uses the same fields today.
Test the real guest journey:
- Click the live or preview ad on a phone.
- Browse the page the way a diner would.
- Complete a clearly marked test reservation.
- Find that reservation in the record or export your team will use.
- Confirm the campaign source is still attached.
If it is missing, fix the website-to-booking handoff before buying more traffic. More clicks will not restore a source that was never saved.
Count reservations, arrived parties, and covers separately
A reservation is intent. It can be canceled, changed, or become a no-show.
After the scheduled dining time, mark each campaign reservation as arrived, canceled, no-show, or unresolved. Then record the number of covers for arrived parties. One reservation for six people is one party and six covers; it should not be reported as six reservations.
This distinction matters when comparing campaigns. An ad that produces ten two-person reservations and an ad that produces ten six-person reservations created the same number of bookings but very different restaurant traffic.
A Feast agency call summarized the advantage of this setup: for a reservation campaign, the booking itself can identify the guest without requiring a separate offer scan. Arrival still has to be confirmed before the booking becomes a completed restaurant visit.
Connect the arrived party to the settled check
The reservation system can tell you who booked and whether the party arrived. The POS tells you what the table bought.
Match the arrived party to its own paid, non-voided settled check using the identifiers your restaurant is permitted to use. Depending on the setup, that may be a reservation ID, guest contact, check time, table, or a direct integration. Do not trust a name alone when common names or multiple parties can collide.
Then report:
- campaign reservations;
- arrived parties;
- covers from those parties;
- settled checks matched to those parties; and
- net sales from the matched checks after recorded refunds.
Keep unmatched arrivals visible. If five parties arrived and only three checks matched, the answer is not that three parties visited. The answer is five arrived parties with three matched checks and two unresolved sales records.
Let Facebook optimize for the event you can truly observe
An ad platform can report a reservation event only when the booking flow sends that event back correctly. A Feast OpenTable implementation in January 2026 used OpenTable campaign fields and a Meta scheduling event, but the setup required account- and website-specific work. Verify the current event in your own account instead of assuming the platform can see it.
Even a correctly recorded reservation event is not a settled check. Meta can help find more people likely to complete the booking action, while the restaurant still needs arrival and POS records to judge the business result.
This is especially important when Meta and the restaurant report different reservation totals. A Feast agency review found that a broadly placed reservation pixel could lead Meta to claim bookings that the restaurant's direct campaign records did not identify. Label platform-reported bookings separately from reservations carrying the campaign source.
Read the campaign from booking to revenue
Once the records are connected, three calculations answer most owner questions:
- Cost per reservation: ad spend divided by campaign reservations.
- Cost per arrived party: ad spend divided by campaign reservations that actually arrived.
- Attributed revenue: net settled sales from the checks matched to those arrived parties.
If the restaurant needs the value per guest, divide the matched sales by matched covers, not by reservations. Keep media-only costs separate from the complete campaign cost when creative, software, agency work, or an offer also applies.
Attributed revenue is not automatically incremental revenue or profit. Some guests may have booked anyway. Compare results with similar days, meal periods, and locations, and subtract the costs required to produce and market the meals before making a profit claim.
The reservation is useful because it gives the ad a name to follow
Restaurants that do not want to run a discount can still measure a Facebook campaign. A tasting menu, private event, new opening, or underbooked Tuesday can send people directly to a reservation and preserve the campaign source.
The reliable order is campaign link, reservation record, arrived party, covers, and settled check. When one link breaks, fix that handoff instead of arguing over the total shown in the ad account.
Feast runs restaurant marketing and connects campaign activity to supported reservation and POS records where the restaurant's setup allows it.
Want to understand what your reservation campaigns are contributing to revenue? Feast Revenue Analyzer brings your available reservation, marketing and POS data together so you can examine the results and plan your next marketing investment. Analyze my restaurant's revenue.