Rule types

Rule types allow you to define specific criteria for your Audience. These rule types provide flexibility in targeting and personalizing your campaigns.

You can find several rule types that you can readily access and configure without additional setup in Ninetailed's Rule Builder. These rule types offer a range of options to define conditions based on user location or session data. On top of that, Ninetailed also allows you to send events or attributes, such as traits, via the Ninetailed SDK.

Ninetailed supports the following rule types:

  • has viewed page

  • has performed event

  • has trait

  • is located at

  • is returning visitor

  • is on device

has viewed page

The has viewed page rule targets visitors that have seen a specific page one or more times. You can use this rule to segment visitors who have browsed to:

  • a product or collection page you've featured within your e-commerce site.

  • one of several blog posts concerned with a particular topic.

  • your pricing or contact pages.

This type requires at least one where condition and allows for a when condition.

Rule type: has viewed page

Examples

Brand campaign visitor

You can create dynamic personalize content for visitors from a Google Ads brand keyword campaign using the has viewed page rule with the following configuration:

Brand campaign visitor: has viewed page rule

Social Media Visitors

You can create dynamic personalize content for visitors from social media platforms using the has viewed page rule with the following configuration:

Social media visitors: has viewed page rule

has performed event

The has performed event rule type can be used to identify whether a visitor has performed a specific event.

NOTE: Using this rule requires that your application sends event data using the Ninetailed's .track() call. You must know the exact case-sensitive name(s) of the event(s) that your track() calls set. For more information, see how to send events using our SDK or API.

The has performed event condition targets visitors who have triggered a specific event one or more times. Your application may use events to quantify how often a user takes some discrete action, such as:

  • clicking a button

  • adding an item to their cart

  • scrolling a specific section into view

  • spending a certain amount of time on a page

This type allows for where and when conditions.

Ninetailed rule type: has performed event

The event value must exactly match (case-sensitive) the event name called in your application.

Examples

White paper download

You can create dynamic personalized content for visitors who download a white paper:

Ninetailed: has performed event rule for download whitepaper

New newsletter signups

You can thank visitors who have recently signed up for your newsletter by offering a promo code:

Ninetailed: has performed event - newsletter signup

has trait

The has trait rule type is used to identify whether a visitor has received a specific trait.

NOTE: Using this rule requires that your application or third-party applications send key:value data using the Ninetailed.identify() call. You must know the exact case-sensitive name(s) of the trait(s) that your identify() calls set. For more information, see how to send events using our SDK or API.

The has trait condition targets any visitor whose profile contains a specific trait. Traits are key-value pairs that capture information about each unique visitor. Traits can be anything that your Ninetailed-enabled website sends to Ninetailed, or that third-party applications have pushed into Ninetailed.

Traits can include things like:

  • names.

  • company name.

  • birthday.

  • loyalty program status and points.

  • favorite color.

Ninetailed: has trait rule type

Each has trait condition has a key and a value. Both must exactly match (case-sensitive) the values that were sent to Ninetailed's Experience API (via an API, SDK, or upstream data flow). The value you wish to compare can either be a string (text) or a number, depending on the value of the trait.

NOTE: Trait values that are neither encoded as strings nor numbers will be coerced to their string equivalent. For example, if you want to build a rule to match a trait whose value is the boolean true, use the string "true" as the value when creating the rule.

Example

Vertical

You can create dynamic personalized content for visitors who work in a specific vertical, e.g. e-commerce:​

Ninetailed vertical: has trait rule

is located at

The is located at rule type is used to identify whether a visitor is located in a specific region.

NOTE: Using this rule requires that your application calls one of Ninetailed's .page(), track() , or identify() methods at least once. For more information, see how to send events using our SDK or API.The is located at rule targets visitors of the specified continent, country, city, zip code, or region.

Ninetailed: is located at rule

Location types

There are a number of different scopes you can choose from:

  • Continent

  • Country

  • City

  • Postal Code

  • Region

For the Continent and Country types, a dropdown helps select the right location. When the location type is City , Postal Code, or Region, you may choose from a variety of matching operators:

  • Note that an automatically generated dropdown list is generated when the location type is set to either Continent or Country.

  • When matching a City, spell the city with proper capitalization and spacing, e.g., San Francisco.

  • When matching a Postal Code, use the shortest representation of postal code when performing exact matches. In the United States, for example, postal codes will be 5 digits of format XXXXX instead of the 9-digit format of XXXXX-XXXX. If you are unsure of the postal code format, try checking within the browser or use the contains matcher instead of the equals matcher when appropriate.

  • When matching a Region, consider what this will resolve to based on the country of the visitor. For example, Region will be a state in the United States, while in Canada Region will be a province. Spell the region with proper capitalization and spacing, e.g.,New York.

NOTE: Regions are formatted using the ISO3166-2 standard.

is returning visitor

The is returning visitor rule is used to Identify whether a visitor has been on your page before.

NOTE: Using this rule requires that your application calls one of the Ninetailed's .page(), track() , or identify() methods at least once. For more information, see how to send events using our SDK or API.The is returning visitor rule targets visitors whose current session is not their first.

The is returning visitor rule targets visitors whose current session is not their first.

Ninetailed: is returning visitor rule

NOTE: Ninetailed defines a session as of a period of interaction with no more than 30 minutes of inactivity. A profile will begin a new session when triggering a new Ninetailed event after this timeframe.

Examples

First Time Visitors

Present a welcome quiz to assess the preferences of first time visitors by using the condition is returning visitor: No.

visited landing page

The visited landing page rule is used to identify whether a visitor has visited a specific landing page.

NOTE: Using this rule requires that your application sends page view data using the Ninetailed's .page() call. For more information, see how to send events using our SDK or API.

The visited landing page rule is similar to the has viewed page rule, but targets visitors whose session began on a specific page or from a specific destination.

You might use this rule to segment visitors who have visited:

  • a particular page as the first page in their session.

  • from a specific search engine.

  • from a blog post presented on an affiliate marketing website.

  • by clicking on your ad.

This rule consists of at least one where condition.

Ninetailed: visited landing page rule

Example

Traffic from an affiliate

Use the following rule configuration to capture the interest of visitors who clicked on an affiliate link:

Ninetailed: Traffic from affiliate

is on device

The is on device rule is used to identify whether a visitor is visiting your content on a specific device.

NOTE: Using this rule requires that your application calls one of Ninetailed's .page(), track() , or identify() methods at least once. For more information, see how to send events using our SDK or API.

The is on device rule targets visitors using either desktop, tablet, or mobile devices. The type of device is assessed by parsing the User-Agent header of the visitor's request and comparing to a list of known User-Agent strings.

Ninetailed: is on device rule

Examples

Streamlined designs for non-desktop users

Experiment with larger buttons and less text in call-to-actions presented on smaller devices:

Ninetailed: streamline design for non-desktop users