Feast AnalyticsBurned by a Restaurant Marketing Agency? Audit the Results Before You Hire Again

Burned by a Restaurant Marketing Agency? Audit the Results Before You Hire Again

Think a restaurant marketing agency wasted your money? Audit one campaign from ad spend to settled checks before you hire or spend again.

If you think a restaurant marketing agency wasted your money, pause any new spend you can safely pause, preserve your access and exports, and audit one campaign from the original media charge through the response, identified guest, mature verified visit, paid non-voided settled check, later refunds or voids, repeat visits, and every campaign cost. A weak report is a reason to demand reproducible evidence—not proof of fraud—and the first broken link will tell you whether to keep the agency, repair the tracking or execution, or stop the campaign.

Do that before you listen to another pitch or compare more restaurant marketing companies. The next company cannot repair evidence that disappeared with an old ad account, landing page, or export.

Your concern is valid, but a bad report does not tell you what failed

The concern is real: restaurant marketing can look busy while leaving the owner unable to connect spend to a paid check. The mistake is treating that missing proof as a complete diagnosis.

A restaurant operator: “Although we do social media and digital marketing, we can't figure out why it's not working.”

Five different problems can produce that feeling:

What may have failedWhat the evidence would show
ReportingThe work may have produced results, but the report cannot reproduce the path from spend to a guest and settled check.
CampaignThe path is intact, but too few eligible people complete a visit or the economics do not clear your threshold.
ExecutionThe offer, creative, follow-up, booking handoff, staff acceptance, or checkout step breaks before the result.
Data accessYou cannot inspect the original ad account, invoices, response records, or raw exports needed to test the report.
Billing or contractCharges, service dates, cancellation terms, or asset-transfer obligations do not match your records or agreement.

Only the last row begins as a billing or contract dispute. Document the mismatch and take a real dispute to the appropriate financial or legal professional; do not turn incomplete marketing data into an accusation of fraud.

Send one evidence request before another dollar moves

Ask for the records behind one named campaign, not another summary slide. Send this from an account your restaurant controls and replace every bracketed field:

Subject: Records needed for [CAMPAIGN NAME], [START DATE]–[END DATE]

Please send or restore our access to the following by [DATE]:

- The original ad-account campaign, ad-set and ad IDs; delivery dates; spend; invoices; audiences; placements; creative; and change history.

- Every landing page, form, tracking link, code, phone flow, reservation path, or offer used, plus the definitions and attribution windows in the report.

- Raw response exports, including timestamps and status fields; reservation or claim records; and the method used to deduplicate people.

- The records used to label completed visits, first-time guests, parties, covers, checks, sales, and repeat visits.

- The matched POS-check export with transaction timestamps, locations, net settled amounts, and the treatment of split checks, cash, different payers, voids, refunds, test records, duplicates, and unmatched records.

- Every campaign cost: media, agency or management fees, software, creative production, influencer compensation if applicable, usage rights, incentive fulfillment, processing, packaging, delivery or other fulfillment, and incremental labor.

- The original content files and the written permissions that govern organic reuse, paid use, editing, transfer, and continued access.

- Our agreement, invoices, service and cancellation dates, renewal terms, and the process for transferring accounts, data, files, pages, audiences, and other restaurant-owned assets.

Please provide raw exports in addition to the presentation and identify any field that is modeled, estimated, platform-attributed, directly matched, or manually entered. Please transfer sensitive customer records through our approved secure method rather than email attachments.

Keep a dated copy of what you requested, what arrived, and what is still missing. A report that changes after you ask for the denominator is not automatically dishonest, but the revised definition belongs in the audit trail.

Rebuild one campaign from the media bill to the paid check

The campaign can only prove what survives each handoff. Restaurant marketing evidence runs from platform activity to response, reservation or claim, completed visit, directly matched settled check, observed business movement, a controlled incremental estimate, and finally contribution or profit after costs; those are separate evidence levels, not synonyms for ROI.

  1. Lock the campaign and spend. Record the exact campaign IDs, location, offer, live dates, original media spend, agency invoice, and any shared-cost allocation. Use the source account and invoice, not a rounded number from a slide.
  2. Name the response. A view, click, reply, form submission, offer claim, and reservation are different events. Choose the one action the campaign asked for, count unique records after documented deduplication, and keep failed or incomplete records separate.
  3. Resolve the guest identity. State which identifier joins the response to later records and when it was captured. A click without an identity cannot become a named guest later just because sales rose.
  4. Wait for the full arrival window. A reservation or claim is not a visit. A verified completed visit requires evidence that the identified person actually arrived in person; record no-shows, canceled reservations, open outcomes, and unknown outcomes separately.
  5. Reconcile the check. Link the verified visitor to at least one paid, non-voided settled check before counting matched sales. Keep the number of people, visit events, parties, covers, and checks in separate columns.
  6. Apply voids and refunds. Preserve the original positive record, then subtract later voided or refunded amounts from net settled sales. Do not leave a reversed check in the revenue numerator.
  7. Mature the repeat window. Count a repeat only after the same identified guest completes another verified visit inside the chosen follow-up window. Do not mix early repeat successes with guests who have not yet had the full window to return.

Cash and a different person paying create real blind spots. A restaurant operator described the common case: the person who received the marketing comes in with a friend, but the friend pays; without another reliable join, the promoted guest and check will not match. Record that as a verified visit with unmatched sales when the visit itself is supported. Do not assign it an average check and call the estimate directly attributed revenue.

Use denominators that cannot become flattering halfway through the test

Every conversion rate should use one unit, one eligibility rule, and a fully elapsed window. “Known outcome” means the record has been reconciled; it must not be a way to quietly delete a known failure.

MetricExact numeratorExact denominatorReport separately
Verified-visit rateUnique identified campaign people in the denominator who completed a verified in-person visitUnique identified campaign people who met the written eligibility rule, received the full arrival window, and have a reconciled known visit outcomeImmature, open, unknown, duplicate, and ineligible records
Settled-check match rateUnique verified visitors in the denominator with at least one matched paid, non-voided settled checkUnique verified visitors whose check-reconciliation window elapsed and whose match outcome is knownUnmatched cash, different-payer, unresolved, split-check, voided, and refunded records
Mature repeat-guest rateUnique people in the denominator who then completed another verified visit during the follow-up windowUnique identified first-visit guests whose entire follow-up window elapsed and whose repeat outcome is reconciled and knownImmature, open, unknown, and ineligible records

The success in each numerator must be a subset of that row's denominator. Even if somebody returns early, keep that person out of the published repeat rate until the full window has elapsed; otherwise the numerator can mature before the denominator and make the rate impossible to reconcile.

Define “first-time guest” before looking at results. Use one identity source, one lookback period, and one location rule consistently. If the available history cannot establish first-time status, call the person an identified campaign guest instead.

Unknowns also need their own count. Report the known-outcome rate and the unresolved eligible records side by side; do not present the smaller known-outcome denominator as the whole campaign. For a fuller diagnostic scorecard, use How Do I Know If My Restaurant Ads Are Working?.

Recalculate the money without turning attributed sales into profit

Use one master ledger in which each dollar appears once, then calculate only the result the evidence supports. A practical restaurant marketing ROI review keeps these labels separate:

Start with two ratios that answer different questions:

Media cost per verified visit event = original media spend ÷ verified completed visit events.

Full campaign cost per unique verified first-time guest = (campaign-wide costs + the actual incremental cost of incentives fulfilled) ÷ unique identified first-time guests who completed a verified visit.

The first denominator counts visit events; the second counts distinct people. Repeat visits add events to an event count but do not create another first-time guest. Cost per verified visit is useful only when its numerator and denominator keep that distinction.

Your master ledger should expose three groups. Campaign-wide costs include media; allocated agency or management fees; allocated software; creative production; influencer compensation when used; and usage-rights payments when used. Fulfilled-incentive costs include the actual incremental food, packaging, processing, delivery or other fulfillment, and labor cost of every incentive used. Other matched-check serving costs include the remaining food and beverage, packaging, payment processing, fulfillment, and incremental labor costs attached to the matched checks. Use a written allocation basis—such as campaign days or location share—for a cost that serves more than this campaign.

Count each line once. If a discount already reduced the settled sale, do not subtract its face value again; subtract the actual applicable food, packaging, processing, fulfillment, and incremental labor cost once. If an incentive's food cost already sits in matched-check variable costs, do not repeat it under campaign costs.

Then calculate:

Campaign contribution from directly matched checks = directly matched net settled sales − all fulfilled-incentive costs − other variable serving costs for the matched checks − campaign-wide costs.

That is still not causal incremental profit. Direct matching says which recorded sales connect to the campaign identity; it does not prove those guests would not have come otherwise. Observed change needs a like-for-like baseline, while an incremental claim needs a stronger comparison that can support the difference.

Ask these questions when an agency ROAS claim does not reproduce

Red flags are questions that expose the missing record, definition, or agreement—not verdicts about somebody's intent.

When the report relies on estimated sales, the word “estimated” tells you exactly which proof is still missing. It can be useful for planning, but it cannot be relabeled as a matched check.

Make the tracking prove a sale before you test its cleanup

Run one positive transaction through the complete path before trusting a dashboard. Use a manager-approved test offer and test identity, and keep the test out of published performance totals.

  1. Trigger the campaign's trackable response and confirm one response record appears with the correct campaign, time, location, and identity.
  2. Complete the same booking, claim, or staff handoff a guest would use, then record the verified in-person arrival.
  3. Pay and settle a check. Confirm the source POS record is paid, non-voided, and correct.
  4. Verify that this positive check first appears once in the matched campaign-sales report with the correct campaign, date, location, and net settled amount.
  5. Only after that positive observation, void or refund the transaction through the normal manager-approved process.
  6. After the documented reconciliation interval, verify that the matched report removes the check or subtracts the refunded amount. Keep the before-and-after evidence.

Next, take a small sample of real matched records that you can trace manually. Record the sample rule and size, then walk each record from response to identity, arrival, settled check, and any later reversal. A clean test proves the plumbing can work; the sample tests whether real records follow it consistently.

Keep, repair, or stop based on the first broken stage

Keep the agency when you can reproduce the evidence, the campaign contribution clears your written threshold, the service matches the agreement, and you retain the access and assets you were promised. Put the next review date and decision rule in writing, much as you would give marketing a written trial and review—without treating that guide's review window as a guaranteed time to results.

Repair the tracking when the offer gets responses but identity, arrival, or check matching breaks. Repair execution when the tracking works but people drop at the offer, response, booking, staff handoff, or visit step. If the campaign needs a cleaner comparison, run one decision-sized two-week test rather than splitting a small budget across several offers; the example is a test design, not a universal budget or duration.

Stop new spend when the verified acquisition cost or service risk exceeds the limit you set, access remains unavailable, the report cannot be reproduced, or the agency will not correct a material execution problem. A documented billing or contract dispute belongs with the appropriate financial or legal professional.

The same chain changes slightly with the job. A pre-opening campaign needs an opening-specific response and visit plan, covered in how to market a new restaurant before opening. If the disputed work was influencer recruitment and coordination, compare what the agency does with a system that helps your restaurant build repeatable direct relationships before replacing one service with another.

Find out whether acquisition or retention is holding you back

If your records still do not show whether acquisition or retention is holding you back, the current Feast marketing-audit offer is $27 one time for a limited time, with regular access presented as $47 per month. Get your restaurant's retention curve audited.