Overview
Outcomes with Products and the Dynamic Product Feed (DPF) both display product recommendations on a result screen. The confusion between them is common because they can look identical to the user — but how they work, how they're maintained, and which situations they're suited for are quite different.
The simplest way to think about it:
Outcomes with Products — you hand-pick exactly which products appear for each result. Everyone who reaches the same outcome sees the same products.
Dynamic Product Feed — products are pulled from a connected catalog and filtered based on the user's answers. Different users can see different products even when they reach the same result.
How Outcomes with Products Works
When you create an outcome, you can manually add up to 25 products per outcome — 1 main product and up to 24 additional products. Each product is entered directly in the Outcomes section of the Builder with a title, description, image, price, and redirect URL.
Those products are fixed. Every user who matches that outcome sees exactly those products in exactly that order. The content only changes if you go back into the outcome, edit the products, and republish the experience.
Products are displayed on the outcome screen using the Outcome Products element, which must be added from the Outcomes category in Add Element. If a Dynamic Product Feed container is on the screen instead, the outcome products will not appear.
How Dynamic Product Feed Works
The Dynamic Product Feed connects a product catalog to your experience — either uploaded as a CSV or synced directly from Shopify (syncing every 15 minutes). Products in the catalog are organized with tags, categories, and attributes, and the DPF logic filters that catalog based on the user's answers to surface the most relevant products.
Because the filtering happens at the time of display, different users can see different products based on their individual responses — even if they land on the same outcome screen.
The DPF also supports Outcome Name mapping: by adding an "Outcome Name" column to your product feed, you can restrict which products appear based on the outcome the user matched. This gives you the precision of outcome-based results with the scalability of a catalog.
Categories in a DPF serve a different purpose — they define display slots and labels on the result screen (for example, grouping products under "AM" and "PM" headings), but they are not filterable. Use Outcome Name mapping when you need products to be filtered; use categories when you need products to be grouped and labeled on screen.
Key Differences
| Outcomes with Products | Dynamic Product Feed |
How products are selected | Manually curated per outcome | Filtered automatically from a catalog |
Products per result | Up to 25 per outcome | Depends on catalog size and filter logic |
Variation per user | Same products for everyone reaching that outcome | Can vary based on individual answers |
Catalog updates | Requires editing products and republishing | CSV re-upload or automatic Shopify sync |
Setup effort | Low — add products directly in the Builder | Higher — requires building and uploading a product catalog |
Outcome Name filtering | N/A | Available — add "Outcome Name" column to DPF to link products to specific outcomes |
Best for | Small, curated, stable product sets | Large catalogs, frequent updates, or complex filtering needs |
When to Use Outcomes with Products
Outcomes with Products is the right choice when:
You have a small, specific set of products to show per result — for example, three hand-picked products for each of five outcomes.
Your catalog is stable and product details (price, availability, images) don't change often. Updating products requires republishing the experience.
The recommendation is about a persona, skin type, or lifestyle category where a handful of curated products make more sense than filtering from a large catalog.
You want the simplest possible setup — no CSV, no catalog management, just products entered directly in the Builder.
You have fewer than 30 outcomes and the combinations are clear and predictable.
When to Use Dynamic Product Feed
The Dynamic Product Feed is the right choice when:
Your catalog is large or changes frequently — seasonal products, repricing, new SKUs, or availability changes. The DPF can update via Shopify sync without touching the experience.
You need different users to see different products even when they reach the same outcome, based on their specific answers throughout the experience.
You have many outcomes — if you're approaching 30 or more distinct results, managing products manually per outcome becomes unsustainable. DPF handles this at scale.
You want to use Outcome Name mapping to filter products per outcome without creating separate screens for each result.
You're running a product finder where the goal is matching users to the right product from a catalog, rather than showing a curated set tied to a persona result.
Your Shopify store is the source of truth for products and you want the experience to stay in sync automatically.
Note: Shopify sync for DPF requires an Enterprise-level account. CSV upload is available on all plans.
Using Both Together
Outcomes with Products and DPF are not mutually exclusive. A common setup is to use Matching or Scoring outcomes to determine which result type a user receives, while the DPF populates which specific products appear for that result.
For example:
A skincare quiz uses outcome logic to match users to one of three skin type outcomes (Oily, Dry, Combination).
The DPF is linked to those outcomes via Outcome Name mapping so that each skin type result shows only the products tagged for that skin type in the catalog.
The result screen displays both the outcome heading and description (from the Outcomes elements) and the filtered product recommendations (from the DPF element) side by side.
This gives you the best of both — structured, logic-driven results with dynamic, catalog-powered product recommendations.
Decision Guide
Does the result involve specific products from a catalog that may change? → Use Dynamic Product Feed.
Do you have fewer than 30 outcomes with a small, stable set of products per result? → Use Outcomes with Products.
Do different users need to see different products based on their individual answers? → Use Dynamic Product Feed.
Is the result a persona, skin type, or lifestyle category with curated, hand-picked products? → Use Outcomes with Products.
Do you have a large catalog and need products to stay in sync with your store automatically? → Use Dynamic Product Feed.
Do you want to combine outcome logic with catalog-driven products on the same screen? → Use both — set up Standard Outcomes and link them to your DPF using Outcome Name mapping.
