This article is relevant only to the Restaurants vertical
Experience OS empowers quick-service restaurants to deliver highly personalized recommendations and promotional content. By leveraging dynamic A/B testing, restaurants can tailor their campaigns based on user behavior, time of day, and geo-location—ensuring optimized items and offers reach each guest at the perfect moment. With just a few steps, you can launch, test, and refine campaigns that drive traffic, boost order conversions, and elevate the dining experience.
Step 1: Create the Campaign
From the Experience OS homepage:
Select your Application (Experience Web, Experience App, Experience Kiosk, or Experience Drive-Thru).
Go to Create Campaign › Product Recommendations.
Enter a campaign name and, optionally, add notes and labels for tracking.
-
Select an API Selector Name.
The API Selector Name identifies which campaign the restaurant is requesting when serving the recommendation widget.
Step 2: Configure the Experience
Click Create New Experience.
Create a new variation or copy an existing one.
Select the widget types to include. Each widget corresponds to a specific stage of the user journey. Learn more about widgets
Important:
To ensure consistency across variations, define the widget structure at the start.
Every variation must use the same type and number of widgets. This preserves a unified journey while enabling personalized content within a fixed structure—supporting accurate analysis and a seamless experience.
Step 3: Select the Algorithm, Features & Business Rules
Add a Recommendation.
-
Select the Algorithm. Learn more about algorithms
The list is dynamically filtered based on the widget.
All algorithms support both All Users and Identified Users, with All Users serving as the baseline.
Define Features. Learn more about features
Apply Business Rules. Learn more about business rules
Repeat as needed to add the optimal number of recommendations.
Click Save Widget.
Step 4: Allocate Traffic
Choose the percentage split between variations and the control group.
Step 5: Set Targeting Parameters
Control where, when, and to whom the campaign appears.
| STORE |
| Select Store IDs that will display this experience |
| WHO - Audience |
| Choose the user group that will see the recommendations (e.g., all users or a predefined identified segment) |
| WHERE - Screen |
| Choose where the experience appears—cart page, product views, or any supported touchpoint |
| WHEN - Timing |
|
Date Select specific dates or ranges (user or site time zone) |
|
Day of the Week Specify days (e.g., weekdays vs. weekends) |
|
Time of Day Set time ranges (user or site time zone). Note: Dynamic Yield does not adjust for Daylight Savings Time |
Step 6: Activate and Publish
Set the experience status to Draft or Active.
Click Save Experience.
Publish the campaign when ready.
After publishing, click the API Details icon to view the API selector used to serve the recommendation widget.
Best Practices
Support Requests Without a Store ID
Some mobile and web applications do not require users to select a store before checkout.
As a result, recommendation requests may be sent without a store ID.
When this happens, Dynamic Yield returns recommendations based on the global product feed, which may not reflect store-specific availability or ranking.
Best Practice for Campaign Setup
To ensure full coverage and a seamless fallback experience:
1. Always include an “All Stores” Experience
Add an experience targeted to All Stores (default store targeting).
This ensures recommendations are served even when the store ID is missing.
2. Place the “All Stores” Experience Last
Position this experience at the end of the campaign hierarchy to act as a fallback without overriding store-specific targeting.
3. This experience will serve as the default for:
Requests missing a location ID
Requests from stores not explicitly targeted
Any unexpected scenario where store targeting cannot be resolved
Fallback Campaign
Restaurants should fetch daily recommendations from Dynamic Yield by sending a regular “choose” request for each daypart using this campaign selector.
These fetched recommendations should be stored and used as the fallback in case of network outages or API failures.
Campaign configuration:
Name the selector “default”
Create one experience using the Popular in Store algorithm
Define the number of items based on filtering needs
Target All Stores to ensure broad applicability
Learn more about fallback campaign configuration.