Fullstory Guides and Surveys is in Early Access. If you would like to evaluate Guides and Surveys, please reach out to a member of your account team.
Who can use this feature?
- Part of Guides and Surveys, an add-on for Business, Advanced, and Enterprise plans.
- Requires an Admin, Architect, or Standard role to configure.
Because Guides and Surveys is in Early Access, product functionality and documentation may change without notice.
What Is Page Targeting?
Page targeting controls where and when your guides or surveys appear on your website. By configuring targeting conditions, you ensure content is shown to the right audience in the right context, improving relevance and user experience.
You can narrow down content availability based on:
- Specific pages.
- User attributes.
- Devices, browsers and language.
- Page content.
- Other advanced conditions.
To configure page targeting for any tour, smart tip, banner, or survey, open the content in the editor and navigate to the Settings section. Page targeting options are available for both new and existing content.
Guides and Surveys supports the following targeting options:
- URL-Based Conditions: Control content display based on the page URL or referrer.
- Tour and Checklist State Conditions: Target users based on the state of other tours.
- User-Based Conditions: Show content based on user attributes like tags or browser language.
- Page Content-Based Conditions: Target pages based on the presence or attributes of specific HTML elements.
- Device-Based Conditions: Restrict content to specific devices or operating systems.
- Combining Conditions: Combine multiple conditions using ALL or ANY logic to create precise targeting rules.
URL-Based Conditions
Using URL and referrer targeting, you can customize where your guides or survey content is displayed, ensuring it reaches the right users in the right context. Below are the available conditions for URL targeting, along with their descriptions and usage examples.
| Condition Name | Description |
|---|---|
| URL equals | Specifies the exact URL where the content should display. The URL must match precisely, including https:// and the domain.Example: https://yourpage.com/path. |
| URL contains | Displays the content if the page URL contains the specified text. You can provide either a full or partial URL (e.g., https://yourpage.com/path or /path/index.html). |
| URL doesn't contain | Prevents content display on pages where the URL contains the specified text. Example: Avoid showing a tour on URLs that include /admin. |
| URL regular expression | Matches multiple URLs using a regular expression. |
| Referrer URL equals | Targets users arriving from a specific URL. The referrer is the page the user visited before landing on the current page. Find out more about HTTP referrer headers. Example: Show a tour if the user navigates from https://sourcepage.com. |
| Referrer URL contains | Displays content if the referrer URL contains the specified text. Example: Target users coming from pages with /blog in the referrer URL. |
Tip: Use URL regular expressions for complex scenarios, such as targeting multiple sections of your website with one rule.
How to Target Using Regular Expression
Regular expression is a powerful way to target complicated URLs or to simplify complex conditions into a single query.
How Does a Regular Expression (Regex) Work?
In regular expression you combine literal characters with special characters to create a logical pattern. This logical pattern then defines which URLs will be targeted and which will be out of scope.
- Literal character = any character of your URL, such as
wor/fromwww.examplepage.com/page. - Special character = a character having special meaning, such as
\drepresents any single digit.
Please note, that some characters common in the URL (such as / or .) are considered special by regex. Therefore if they are meant literally, it is necessary to always put \ in front of them. The common URL will then look like www\.examplepage\.com\/page.
Examples of Regular Expressions
Pattern: ^https://app\.mysite\.com$
| Matches | Explanation |
|---|---|
| ✓ https://app.mysite.com ✗ https://app.mysite.com/dashboard ✗ https://mysite.com |
^ matches start of URL\. escapes the literal dot$ matches end of URLUse case: Target only the exact homepage URL |
Pattern: mysite\.com\/products\/\d+
| Matches | Explanation |
|---|---|
| ✓ mysite.com/products/123 ✓ mysite.com/products/4567 ✗ mysite.com/products ✗ mysite.com/products/new |
\d matches any digit (0-9)+ means one or more times\d+ matches any numberUse case: Target individual product pages with numeric IDs |
Pattern: mysite\.(com|net|org)/pricing
| Matches | Explanation |
|---|---|
| ✓ mysite.com/pricing ✓ mysite.net/pricing ✓ mysite.org/pricing ✗ mysite.io/pricing |
| means "or"(com|net|org) matches any one optionUse case: Target same page across multiple domains |
Pattern: \/blog\/.*
| Matches | Explanation |
|---|---|
| ✓ /blog/post-title ✓ /blog/category/tech ✓ /blog/ ✗ /about |
. matches any character* means zero or more times.* matches anythingUse case: Target all blog pages regardless of path |
Special Characters (Essentials)
| Character | Meaning |
|---|---|
^ |
start of string |
$ |
end of string |
a+ |
one or more of a |
a* |
zero or more of a |
a? |
zero or one of a |
a{3} |
exactly 3x a |
a{3,} |
3x or more of a |
a{3,5} |
Between 3x and 5x of a |
a|b |
a or b |
\d |
any digit |
\D |
any non-digit |
. |
any single character |
[abc] |
a single character from a, b or c |
[^abc] |
a single character except a, b or c |
[a-z] |
a single character in range from a to z |
Testing Your Regular Expressions
You can use the tool regex101.com to test your regular expressions. Set the flavor to ECMAScript (JavaScript) to ensure compatibility with Guides and Surveys.
Tour and Checklist State Conditions
Target users based on their interaction with other tours or checklists. These conditions allow you to dynamically control the display of content based on a user's progress, enhancing personalization and ensuring relevance.
| Tour state is | Description |
|---|---|
| Closed | Target users who have started a specific tour but have not completed it. This is useful for showing complementary content or providing assistance during a tour. |
| Completed (reached the last step) | Show content to users who have fully completed a specific tour. For example, you can display a follow-up checklist or guide after users finish the main tour. |
| Not Started | Display content to users who haven't interacted with a particular tour. This can help prompt users to engage with a tour they may have overlooked. |
| Checklist state is | Description |
|---|---|
| Checklist Completed | Show content to users who have completed all the items in a checklist. |
| Checklist Dismissed | If at any point the user clicks the "Dismissed" button on the checklist or dismissed it automatically as completion action. |
By using tour and checklist state conditions, you can tailor your user experience based on their engagement history. This ensures users see content that aligns with their progress.
User-Based Conditions
User-based targeting allows you to display guides or survey content based on specific attributes of the user interacting with your application. This method helps you create personalized experiences tailored to individual users or groups. Below are the available user-based conditions and how to configure them.
| Condition | Description |
|---|---|
| Tag value |
When this condition is set, the tour will show only if the given user has the expected tag. You can check whether the value:
Find out more about how to segment users using tags (link to additional documentation to be updated when available). For example, display a tour exclusively for premium users by checking if the tag |
| Language is |
Target users based on their browser's preferred language settings. This is useful for creating localized content or experiences.
For example, show a French tour only to users whose browser language preference is set to |
| Browser is |
Display content based on the browser used to access the page. You can specify browsers such as Chrome, Firefox, Safari, and others.
For example, create a browser-specific guide for Firefox users on optimizing browser settings. |
| A/B Experiment |
Enable A/B testing to compare different variations of Guides and Surveys content and measure their effectiveness. You can divide your users into groups and serve different content to each group to determine the best-performing version. Learn more about setting up A/B experiments (link to additional documentation to be updated when available). |
| User Segment |
Create and target specific groups of users by defining shared attributes or behaviors. Learn how to create and use user segments (link to additional documentation to be updated when available). |
Page Content-Based Conditions
Page content-based targeting relies on inspecting the HTML structure of the webpage. It enables you to:
- Display content only when specific elements are present on the page.
- Check the attributes or values of HTML elements to refine targeting.
| Condition Name | Description |
|---|---|
| Element exists |
Target content based on whether an HTML element exists on the page. Provide a CSS selector (e.g., For example, show a tour only when a specific button or section is available on the page. |
| Element doesn't exist | Opposite of "Element exists" - target pages on which the specified element is not present. |
| Element text contains |
Control content display based on the inner text of an HTML element. Specify the text or a pattern (e.g., partial match, case-sensitive) to target elements dynamically. For example, display a checklist when a notification element contains specific text (e.g., 'Your profile is incomplete'). This is also handy to detect different page languages or specific values displayed on a page. |
| Element attribute contains |
Target based on the value of an element's attributes. Check if an element's attribute (e.g., For example, show content when a form input field contains a certain value (e.g., |
Device-Based Conditions
Device-based targeting allows you to control content visibility based on the detected device type, operating system, and local storage values.
| Condition Name | Description |
|---|---|
| Device type is Desktop |
Target users accessing your application through desktop computers or laptops. Automatically detects desktop devices based on the user's browser user-agent string. For example, display advanced features or dashboards optimized for larger screens. |
| Device type is Tablet |
Show content to users accessing your site or app via tablets. Identifies tablet devices using device-specific characteristics, such as screen size and user-agent information. For example, provide tablet-friendly onboarding tours or display tablet-specific tips for navigation. |
| Device type is Mobile |
Focus on users interacting with your application via mobile phones. Detects mobile devices through their user-agent string and screen dimensions. For example, deliver simplified guides or mobile-responsive content tailored to smaller screens. |
| Local Storage Values | Specify a key/value pair, which will ensure the tour is only displayed to users who have this local storage pair item in their browser. This is helpful to target tours based on users' previous interactions with your application or with other applications. For example, show a checklist when a local storage value indicates a specific user role or status. |
| Operating system is | This condition allows you to target users based on the operating system running on their device, such as Windows, macOS, Linux, iOS, or Android. This is particularly useful for creating content or guides optimized for specific platforms. |
Combining Conditions
Combining conditions in the Page Targeting section allows you to define when your content will be displayed based on multiple criteria. You can configure your settings so that content is displayed when ALL conditions match, or when ANY condition matches. Below are examples to illustrate this functionality.
Example 1: Targeting with ALL Conditions
The first targeting definition ensures that the product tour will display only if both of the following conditions are met:
- The page URL contains "domain.com".
- The page contains an element with the selector
#element-1.
Example 2: Targeting with ANY Conditions
The second example targets the tour to two different subdomains. The tour will be available on either subdomain if:
- The page matches any one of the specified subdomain criteria.
Example 3: Combining ALL and ANY Conditions
Combining ALL and ANY conditions within the Page Targeting section provides even greater flexibility. This allows your content to display when specific criteria in both groups are met.
This targeting definition ensures that the product tour will display when:
-
ALL of the following conditions are met:
- The operating system is Windows.
- The page contains an element with the selector
#element-1.
-
ANY of the following conditions are met:
- The page is on one of two different subdomains.
By using these features, you can create highly tailored targeting rules for your content.