Feast AnalyticsDoes Toast track where customers come from? What it can and cannot attribute

Does Toast track where customers come from? What it can and cannot attribute

Toast reports marketing-attributed sales, but outside campaigns need a campaign-to-guest-to-check link for direct attribution.

Yes, within its own marketing reports: Toast documents marketing-driven-sales reports and a Demand Attribution Dashboard that separates attributed sales into new, active, and reactivated guest segments. Those figures are attributed gross sales, not profit or proof of incremental lift; an arbitrary outside campaign still needs one identity connecting the response, guest, and completed Toast check for a direct match.

That boundary matters whether you run marketing yourself or compare restaurant marketing companies: order data is not automatically source data.

QuestionWhat the record can answerProof label
What sales does Toast attribute through its native marketing reporting?Marketing-driven sales, including a breakdown of attributed sales by new, active, and reactivated guest segmentsPlatform attribution
Did a particular outside campaign produce this completed check?Only when the campaign response, identified guest, and completed check carry one traceable identityDirect match

Step 1: Separate Toast-attributed sales from a directly matched outside campaign

Toast's native reports can show sales it attributes to marketing, but that is a different claim from matching an arbitrary outside campaign to a completed check. The first follows Toast's reporting rules; the second needs a campaign identity that remains attached to the guest through the sale. Toast's reports do not, by themselves, establish profit or causal incrementality.

Toast's official Restaurant Loyalty Program Software page, last updated August 18, 2026, documents enrollment at the register, through a digital receipt, during online ordering, or through a sign-up link. It says points then track automatically with purchases and that operators can monitor loyalty performance in real time.

Toast recordWhat it can establishWhat is still missing
Loyalty enrollmentThe guest joined through a documented enrollment pathWhich outside campaign led to that path when several campaigns share it
Points tied to a purchaseAn identified loyalty guest made a qualifying purchaseWhich ad, post, or promotion prompted the purchase
In-store or online earning and redemptionThe loyalty activity occurred in a documented service settingThe marketing source that influenced the guest
Real-time loyalty performanceActivity inside the loyalty programA profit calculation or proof that one campaign caused the activity

These Loyalty records can help identify a guest and purchase, but they do not recreate an outside campaign label that was never collected. For a wider POS-by-POS comparison, keep that separate on the marketing-revenue tracking guide. For current Toast plan questions, check the Toast marketing add-on cost guide; the official Loyalty page itself does not publish a standalone Loyalty price.

Write a short inventory with two columns: the purchase and guest records you already have and the outside campaigns you want to connect. A campaign without a distinct response record belongs in the second column, not inside POS reporting yet.

Step 2: Give the campaign one identity before it goes live

Direct attribution starts with a campaign ID that appears on the first response and remains attached to the guest. If every ad, food influencer post, email, and flyer sends people to the same unmarked page, the final check has no source label to inherit later.

Create one campaign record before launch and keep:

The offer does not have to be a discount. It does need a response the restaurant can identify, such as an opt-in, booking, or claim tied to the campaign ID. A platform click with no guest identity can remain useful platform reporting, but it cannot become a direct campaign-to-check match on its own.

An agency operator described the blind spot plainly:

“They don't click on that link. But they just come in the next day because they thought about it. I wouldn't get the attributed revenue towards them.”

That walk-in may be real marketing impact, but without the response-to-guest link it is not a direct match. Preserve it as possible observed lift rather than assigning the check to a campaign after the fact.

The campaign record is ready when a team member can name exactly where the campaign ID is created, what guest field carries it, and which completed check should close the chain.

Step 3: Carry the same guest identity into the completed Toast check

A response becomes a direct match only when the restaurant can connect the campaign ID to an identified guest and then to a completed check. The chain is:

campaign response → campaign ID → identified guest → completed Toast check

Toast Loyalty supports guest enrollment at the register, by digital receipt, during online ordering, or through a sign-up link, and it tracks points automatically with purchases. That can provide the purchase-linked guest record at the end of the chain. It does not recreate a campaign ID that was never captured at the beginning.

Keep these fields together inside the restaurant's private records:

Do not paste customer phone numbers, email addresses, payment details, or raw POS screenshots into a public report. Use an internal guest key for matching and a redacted test record when somebody needs to review the setup.

The chain is complete when one authorized reviewer can start with a campaign response and reach the correct completed check without guessing from the date, amount, or menu item alone.

Step 4: Test the whole chain before trusting a campaign report

Run one start-to-finish acceptance test through the live response path and confirm the final POS check before spending heavily. Testing only the ad link proves the first step; testing only the sale proves the last.

  1. Open the exact campaign link, QR destination, offer, or booking source a guest will use.
  2. Confirm that the campaign ID and permitted guest identifier are saved together.
  3. Complete an authorized test purchase or the next eligible campaign visit through the intended checkout flow.
  4. Confirm the completed check has the correct location, time, and gross amount.
  5. Follow the internal guest key back to the original campaign response and retain a redacted proof record.

The test passes only when the campaign ID, identified guest, and completed check form one traceable record. A dashboard total that happens to look right is not a substitute.

Where the match breaksWhat the result is nowRepair before the next campaign
Response has no campaign IDUnclassified responseGive each campaign a distinct link, code, or booking source
Campaign ID exists but no guest is identifiedPlatform or campaign response onlyAdd the permitted guest-identification step before the visit
Guest is identified but not at checkoutKnown response with no matched checkMake guest identification part of the approved checkout flow
Completed POS check has no campaign connectionNative sale with unknown marketing sourceRepair the response-to-guest join; do not assign by guesswork
Records disagree on location, time, or amountFailed matchCorrect the configuration and rerun the acceptance test

Retest after changing the offer path, restaurant location, guest-identification step, or POS setup. Put the retained proof into the weekly check described in why restaurant software gets canceled after the launch excitement fades.

Step 5: Label every result by what it actually proves

Use four labels—direct match, platform attribution, observed lift, and modeled opportunity—so a useful signal never becomes a stronger claim than the records support. Views, clicks, sales, and forecasts answer different questions.

A restaurant marketing operator heard a large view count presented as success and asked the question the report could not answer:

“We have brand awareness, check. Got it. Where's the sales?”

LabelRequired evidenceWhat you may sayWhat you may not say
Direct matchCampaign response, identified guest, and completed POS check joined in one record“This campaign has $X in matched gross sales.”“The campaign caused all $X,” “$X is incremental,” or “$X is profit.”
Platform attributionThe ad or marketing platform credits an action under its own reporting rules“The platform attributed X actions or sales.”“The POS verified every result” unless the completed check is actually joined.
Observed liftComparable covers, new guests, item sales, or total sales moved during the campaign period“Sales were $X higher than the stated baseline.”“The campaign directly caused the full difference.”
Modeled opportunityA forecast states its audience, response, visit, check, budget, and time assumptions“Under these assumptions, the opportunity is $X.”“The restaurant earned $X.”

Matched revenue is gross sales from the checks in the direct-match set. Profit requires the restaurant's food cost, discount or reward cost, media, software, added labor, payment fees, and other expenses. Incremental profit also requires a credible comparison showing what likely would have happened without the campaign.

Keep a weekly report with each label in its own section. Record the response count, identified responses, completed matched checks, matched gross sales, platform-attributed actions, comparable baseline, observed result, and every assumption in the forecast. If a number starts with “estimated,” keep its assumptions beside it; the guide to estimated restaurant attribution explains why the label matters.

Step 6: Add Feast only when the missing link is campaign to Toast check

Feast is relevant when Toast holds the completed sale but the restaurant still needs a managed path from campaign response to identified guest to verified check. Feast's documented path is offer, opt-in, wallet pass, in-store scan, POS transaction verification, and revenue attributed back to the campaign; Toast is among its supported POS systems.

That closes a specific gap. It does not turn an anonymous view into an identified customer, and it does not independently attribute Google Business Profile store visits or orders completed through DoorDash, Uber Eats, or Grubhub.

Feast should report the linked checks as campaign-attributed gross sales, not profit and not automatic proof of incremental lift. Keep the same acceptance test and four labels after setup; software does not remove the need to call a result what it is.

If your campaign identity keeps disappearing before the completed check, Book a demo of Feast.