Decision table inputs

Important

Feature availability is part of a phased rollout. Your organization may not see this functionality yet. It will become available when your environment is included in the rollout.

In component personalization, inputs define the data that personalization rules use to evaluate visitors and determine which component variant they see.

For example, you might use Country and Device type as inputs in the decision table if you want to target mobile visitors in specific countries.

Tip

Location-based personalization depends on available location data and may not always reflect a visitor’s exact physical location. VPNs, proxies, network routing, and upstream data sources can affect location accuracy.

When personalizing components in Page builder, you can use three input types in decision tables, described in the following sections: Profile data, Conditions, and Custom values.

Each input appears as a column in the personalized component's decision table.

Each input appears as a column in the personalized component's decision table.

You can use a single input or combine multiple inputs to target specific audiences.

When you combine multiple inputs in a rule, a visitor must match all of them for the rule to apply.

Profile data

Use existing visitor profile attributes in SitecoreAI as inputs in decision tables for component personalization.

The following profile attributes are available as inputs:

AttributeDescriptionExample values
ChannelThe platform or pathway that your audience uses to connect with your brand.
  • web
  • mobile
  • mobileApp
  • offline
CityThe city associated with the visitor’s location.
  • Copenhagen
  • Dublin
ContinentThe continent associated with the visitor’s location (using standard 2-letter codes).
  • AF - Africa
  • AN - Antarctica
  • AS - Asia
  • EU - Europe
  • NA - North America
  • OC - Oceania
  • SA - South America
CountryThe country associated with the visitor’s location (in ISO 3166-1 alpha-2 format).US, CA, IE, DK, DE
Date of birthThe visitor’s date of birth.04/28/2000
Device typeThe device used by the visitor.
  • Desktop
  • Mobile
  • Tablet
EmailThe visitor’s email address.[email protected]
First nameThe visitor’s first name.John
GenderThe visitor’s gender.
  • Female
  • Male
  • Unknown
Last nameThe visitor’s last name.Doe
Operating systemThe operating system used on the visitor’s device.
  • Windows
  • macOS
  • iOS
  • Android
  • Linux
ReferrerThe source or website the visitor came from before visiting your site.google.com
RegionThe region or state associated with the visitor’s location.Texas
TypeThe visitor's profile type or status.
  • visitor
  • identified
  • retired
UTM campaignThe marketing campaign name captured from UTM (Urchin Tracking Module) parameters.spring-sale
UTM mediumThe marketing channel captured from UTM parameters.email
UTM sourceThe traffic source captured from UTM parameters.google

Conditions

SitecoreAI includes out-of-the-box conditions for common targeting scenarios, and you can create custom conditions for more advanced logic.

You can use these same conditions as inputs in decision tables for component personalization. When you select a condition, you configure how that input is evaluated.

For example, you can select the out-of-the-box Country condition to check whether a visitor is from Denmark. The condition input can evaluate to true, false, or null, which can then be used in a personalization rule.

Custom values

Use custom values as inputs in decision tables for component personalization when the data you need is not available through profile data or conditions.

Using JavaScript, custom values can combine profile attributes, visitor behavior, and calculated logic into a single reusable value.

Custom values can be either predefiend values provided by SitecoreAI or custom JavaScript values that you create for your own targeting logic.

Out-of-the-box (OOTB)

Use predefined custom values as inputs for common targeting scenarios.

  • First page - the first page viewed in the visitor’s current session. Returns null if no matching page view is found.
  • Guest birthday - whether the visitor’s birthday matches the current date.
  • Number of page views - the total page views in the visitor’s current session
  • Top Affinity - the highest affinity value in the visitor profile. Returns null if no valid affinities are found.

Custom

Create your own JavaScript-based custom values when other input types do not provide the targeting flexibility you need.

This allows you to combine profile attributes, session activity, and visitor behavior into reusable values that match your business logic.

For example, the following custom value classifies visitors as high, medium, or low intent based on session count and page views:

(function() {
  var sessionCount = profile?.sessions?.length ?? 0;
  var pageViewCount = profile?.traits?.session?.stats?.eventTypeCount?.pageView ?? 0;

  if (sessionCount >= 10 || pageViewCount >= 100) {
    return 'high';
  } else if (sessionCount >= 5 || pageViewCount >= 50) {
    return 'medium';
  } else {
    return 'low';
  }
})();
If you have suggestions for improving this article, let us know!