Use page groups to isolate performance issues

Isolating issues where performance might be impacting your business is critical. Page groups give mPulse a way to identify, capture, and summarize the performance characteristics of pages that belong together logically. These groups let you see performance trends within segments of your site that may not affect the entire site.

For example, your Add-to-Cart is slow and the number of visitors going to Checkout has also decreased. Page groups let you see which pages affect page load time on your site and whether those pages are experiencing increased traffic.

How page groups work

In mPulse, a page group is a true/false rule using match criteria based on URL parameters. In other words, does this URL contain the query string parameters defined in the page group or not? Each page group is defined for a specific segment of your site. mPulse identifies page groups by their name in your data beacons. As mPulse receives beacons, it scans your data to find a match against the page group rule defined in your web app configuration. If a match is found, mPulse associates that page view for that URL with a page group name, and assigns the performance data for that content to the appropriate page group. Page group performance is then reported, and can be used as dimensions to filter mPulse data that's displayed in the page group widgets.

How to define page groups

You define page groups in your web app configuration on the URLs tab. Consider how you think and talk about your site. Your home page might make up one page group named "Home," your product detail page a second group, named "Products," and a third, named "Cart." Your search results and checkout pages may also have their own page groups.

Set up page groups

Organize your content into page groups to capture and summarize the performance characteristics of pages that belong together logically.

Before you begin

You can define page groups using these methods:

  • JavaScript Variable
  • Query String Parameter
  • URL Substring - End of Text
  • URL Substring Trailing Text
  • URL Regular Expression

How to

  1. In mPulse, click Central, then Apps.

  2. From the list, double-click your app to open the Configure Web App dialog.

If mPulse is waiting for your beacons to come in, click Advanced to open the Configure Web App dialog.

  1. Click URLs, under Definition Method, click the plus sign to show the Definition Method menu.

  2. From the menu, select a method and define the page group.

📘

Note

For details on defining these methods, see the links under Learn more.

URLs page

  1. Select the XHRs beacons that you want to capture for the page groups.

📘

Note

If you choose All, you can select the Mark XHR as background activity unless matched in the list above option, which tells mPulse to capture all requests, but only consider a request as an actual page view if it matches a page group in the list. This option does not increase the session length or impact bounce rate (session length greater than 1).

  1. When you're done defining and testing your page groups, click OK to save the configuration.

  2. List each page group in the order that you want them applied to your data.

Define a page group with JavaScript Variable

Capture the value of an existing JavaScript variable on your site to define your page group.

Before you begin

The JavaScript variable can be coded anywhere on the page and at any time before the page finishes loading (in other words, before the beacon is sent), and must be globally readable.

You can also insert a specific JavaScript snippet in to your pages to define a page group, using any logical grouping of unique identifiers or symbols (namespace) that you choose.

If you have other tools in place that use JavaScript, this is an easy way to define your page groups.

These steps show you how to use the JavaScript Variable method to define a page group using the value of a variable in your source code.

How to

  1. In the Variable Name field, enter the name of variable that you want to use for your group name (for example, LOGIN.pg).

📘

Note

Acceptable characters of the JavaScript value are: upper and lower case alphanumeric characters (a-z, A-Z), space, underscore (_), dash (-), and period (.). The maximum character length is 100. If your page name exceeds this limit, it'll be truncated.

  1. To check that the correct value is captured, in the Enter Test URL field, enter a URL that includes the variable that you want applied to the page group (for example, https://www.example.com), and then click Test.

  2. If the match is successful, that row turns green and the name of the page group appears in the Result field. Click OK to save the configuration.

In this figure, you can see Value of variable: LOGIN.pg.

Define with JavaScript variable

Define a page group with Query String Parameter

Capture a specific data value in a query string to define your page group.

Before you begin

Use this method with caution and with a full understanding of the values in your query strings. If time stamps with unique IDs are returned as part of the query string value, this can (potentially) create extremely large numbers of resulting page groups, which will distort and delay data going to the mPulse dashboards.

These steps show you how to use the Query String Parameter method to define a page group using the data value associated with a name/value pair in a query string.

How to

  1. In the URL Pattern field, enter the full URL leading up to the question mark (before the name/value pair), followed by an asterisk as a wildcard (for example, https://www.example.com/?*).

  2. In the Name field, enter the name portion of the URL's name/value pair (for example, product) that's associated with the value that you want to apply to your page group (for example, widget1).

If the name entered in the Name field matches the query string parameter's name portion of the name/value pair, mPulse uses that data value for the page group name.

  1. Check that the correct data value is used for the page group. In the Enter Test URL field, enter a URL that you know includes the pattern and the name associated with the data value that you want applied to the page group (for example, https://www.example.com/?product=widget1), and then click Test.

  2. If the match is successful, that row turns green and the name of the page group appears in the Result field (for example, widget1). Click OK to save the configuration.

Define with query string parameter

Define a page group with URL Substring - End of Text

Capture the last portion of text in a URL to define your page group.

These steps show you how to use the URL Substring - End of Text definition method to define a page group using the value of the text at the end of a URL.

How to

  1. In the URL Start field, enter the full URL leading up to the portion of the URL that you want use for your page group, followed by an asterisk as a wildcard (for example, https://www.example.com/blog/*).

  2. Check that the correct text is used for the page group. In the Enter Test URL field, enter a URL that you know includes the text that you want applied to the page group (for example, https://example.com/blog/learn-more.jsp), and then click Test.

  3. If the match is successful, that row turns green and the name of the page group appears in the Result field (for example, learn-more.jsp). Click OK to save the configuration.

Define with URL substring end of text

Define a page group with URL Substring - Trailing Text

Capture a portion of text in a URL to define your page group.

These steps show you how to use the URL Substring - Trailing Text definition method to define a page group using the value of the text between the beginning and end of a URL.

How to

  1. In the URL Start field, enter the full URL leading up to the portion that you want to match and use for your page group, followed by an asterisk to count as a wildcard (for example, https://www.example.com/blog/*).

  2. In the Trailing Text field, enter the end portion of the URL that you do not want to capture (for example, .jsp).

  3. Check that the correct text is used for the page group. In the Enter Test URL field, enter the URL that you know includes the text that you want applied to the page group (for example, https://example.com/blog/learn-more.jsp), and click Test.

  4. If the match is successful, that row turns green and the name of the page group appears in the Result field (for example, learn-more). Click OK to save the configuration.

Define with URL substring trailing text

Define a page group with URL Regular Expression

Use standard regex rules to capture a portion of a URL to define your page group.

These steps show you how to use the URL Regular Expression method to define a page group.

How to

  1. In the Pattern field, enter the full URL leading up to the portion that you want to match, followed by the regular expression to capture the text that you want for you page group name (for example, https://www.example.com/(\w+)).

  2. In the View Group field, enter the variable that you want to capture (for example, $1).

  3. Check that the correct value is captured for the page group. In the Enter Test URL field, enter the URL that you know includes the text that you want applied to the page group (for example, https://example.com/shop/account/home), and click Test.

  4. If the match is successful, that row turns green and the name of the page group appears in the Result field (for example, shop). Click OK to save the configuration.

Define with URL regular expression

List page groups

mPulse applies page groups to your data in a top-to-bottom order. The first page group definition that matches is the page group that mPulse uses for a given page or view. List your important page groups first, and your general page groups last.

If you're using a JavaScript Variable definition to name some of your page groups, then those page groups should follow the other page group definitions. JavaScript Variable definitions don't fail so if you list those page groups first, the other page groups will never get applied.

In this example, both the JavaScript Variable definition and the URL Regular Expression definition match the test URL. The JavaScript Variable definition is listed before the URL Regular Expression definition, which means that mPulse applies the JavaScript Variable definition to your data first, places any matching pages in to the page group named value of variable:LOGIN.pg, and ignores the URL Regular Expression definition.

Example 1

Just like the first example, both the JavaScript Variable definition and the URL Regular Expression definition match the test URL. The difference in this example is the URL Regular Expression definition is listed before the JavaScript Variable definition, which means that mPulse applies the URL Regular Expression definition to the data first, places any matching pages in to the page group named shop, and ignores the JavaScript Variable definition.

Example 2

Page group best practices

Guidelines for defining, naming, and applying page groups to your data.

  • For easy data management and maintenance, limit your page groups to fewer than 20.

📘

Note

There is a limit of 10,000 unique page groups for each mPulse app. If your app exceeds the limit, you will not be able to create any additional page groups.

  • Page group names are injected in to your site's data beacon when it's created. Once your site is tagged with the mPulse snippet, and mPulse starts to receive your beacons, you cannot add a page group to your data beacon or change an existing page group name in your data beacon. Consider defining your page groups before or very soon after you tag your site with the mPulse snippet.

  • When naming page groups:

    • Establish a naming convention early on and stick with it, preferably before or very soon after you tag your site with the mPulse snippet.

    • If your page templates have a page name variable, pull the value of a JavaScript variable and use that. If you're using an analytics tool that has page name variables in the JavaScript, they can be used as well.

    • In most cases, some portion of the URL can be parsed and used to name your page groups.

    • Use alphanumeric characters, dashes, underscores, and spaces only. The maximum character length is 100. If your page name exceeds this limit, it'll be truncated.

  • Use caution when defining page groups with
    variables or expressions, as they can create extremely large numbers of resulting page
    groups, which will distort and delay data going to the mPulse dashboards.

🚧

Caution

Creating page groups with variables or expressions may cause your app to exceed the 10,000 page group limit.

  • List your more specific page groups first,
    and your general page groups last.

  • JavaScript Variable definitions don't fail
    so list these page groups after the other page groups.

About automatic page groups

mPulse creates page groups automatically for new apps.

Automatic Page Groups (APG) make it easier to get up and running with mPulse by automatically defining page groups for newly created mPulse apps. After you've set up mPulse on your site and there's a steady flow of beacons, mPulse scans the data to identify common performance characteristics and automatically creates page groups for your new web app based on traffic.

How are automated page groups defined?

Once mPulse has collected 250k beacons, it uses URL Regular Expressions to identify pages that logically belong together and automatically defines the page group for your web app configuration.

The automatic page group functionality is applied for an app when all of these conditions are met:

  • New app created after the release of APG
  • No page groups previously defined for the app
  • A minimum of 250,000 beacons received for the app

📘

Note

This process runs only one time for a new app.

Where do they appear and how are they applied to my traffic?

All page groups, including the ones mPulse defines for you, appear in your web app configuration on the URLs tab. These page groups function just like manually created page groups. You can modify and delete these automatically created page groups, just as you would a page group that you defined yourself. mPulse doesn't overwrite existing page groups.

How will I know when they're ready?

Once mPulse creates your page groups, you'll see a pop-up notification on your mPulse Home page.

📘

Note

A particular URL path must receive at least 1.5% of the total app traffic in order for APG to create an associated page group.