Expand my Community achievements bar.

Profile script to return true on the third page view of a specific group of urls

Avatar

Level 1

Hi Experience League,

 

I want to create a Profile script to allocate a return true on a visitor's 3rd page view of a specific group of URLs. 

e.g.

Specific page URLs = URL 1 to 10

 

Visitor 1:

Page view 1 - views URL 1

Page view 2 - views URL 4

Page view 3 - views URL 7

In this case, on their view of URL 7, the script returns true.

 

Visitor 2:

Page view 1 - views URL 3

Page view 2 - views URL 1

Page view 3 - views URL 10

In this case, on their view of URL 10, the script returns true.

 

Then I'll create an audience based off of those returning true for the profile script.

 

HAs anyone got experience creating a profile script like this before?

 

Cheers,

 

Sam

1 Reply

Avatar

Level 5

Hello @SamB2024,

Below is a profile script that increments a counter each time a visitor views one of the specific pages (you can add more as needed), and returns true on the 3rd page view within that set. You can then create an audience in Adobe Target using this profile script’s return value.

Instructions:

  • Replace the targetUrls array with the URLs or patterns you want to track.
  • Run this profile script on a global mbox (e.g., target-global-mbox) so it executes on every page load.
  • On the visitor’s 3rd page view from the specified URLs, the script will return true.
  • On other pages or before the 3rd qualifying view, it will return false.

 

// Define the specific pages you want to track.
// Replace the URLs below with the actual page URLs or partial matches.
var targetUrls = [
    "https://albertacg.com/openai-o1-adobe-analytics-sdr/",
    "https://albertacg.com/how-to-prepare-for-black-friday-2024/",
    "https://albertacg.com/creating-a-dynamic-data-feed-for-adobe-target-recommendations/",
    "https://albertacg.com/how-to-drive-personalized-content-with-adobe-target-recommendations/",
    "https://albertacg.com/mastering-ai-integration-how-to-use-chatgpt-and-adobe-target-together-for-optimal-results/",
    "https://albertacg.com/mastering-data-insights-how-to-use-chatgpt-and-adobe-analytics-together-for-unmatched-results/",
    "https://albertacg.com/seamless-migration-transitioning-from-adobe-appmeasurement-to-web-sdk-for-enhanced-analytics/",
    "https://albertacg.com/unlocking-the-future-of-digital-marketing-with-adobe-experience-platform-trends-and-insights/",
    "https://albertacg.com/adobe-analytics-vs-customer-journey-analytics-unveiling-the-best-tool-for-insightful-data/",
    "https://albertacg.com/10-shocking-adobe-target-features-you-arent-using-but-should/"
  ];
  
  // Get the current page URL
  var currentPage = page.url || "";
  
  // Retrieve the stored count of how many times the user has visited one of these URLs.
  var count = user.getLocal('pageViewCountForGroup') || 0;
  
  // Check if the current page is within our target set of URLs
  for (var i = 0; i < targetUrls.length; i++) {
      if (currentPage.indexOf(targetUrls[i]) > -1) {
          // Increment the count since the user is viewing one of our target pages
          count = count + 1;
          
          // Update the stored count
          user.setLocal('pageViewCountForGroup', count);
          
          // Break out of the loop since we found a match
          break;
      }
  }
  
  // Return true on the visitor's 3rd qualifying page view, otherwise false
  return (count === 3);

 


Once you have created the profile script and activated it, you can then create an audience that looks something like this:

 

Matthew_Ravlich_ACG_0-1734422574571.png

 

Use that audience to deliver targeted experiences or offers to users who have viewed three different URLs in your specified set.

 

This approach allows you to easily track when a user hits a certain threshold of page views on a defined group of pages and then act on that information within Adobe Target.

I hope this helps.

Matthew Ravlich | Adobe Certified Expert | ACG Digital