Search code examples
httphttpsadobe-analyticscontent-security-policy

How can we pass on referrer details to Adobe SiteCatalyst?


Our website is a vertical search engine and we refer a lot of traffic offsite to partners sites.

We recently switched our website over to serve all traffic via HTTPS. We realised this might confuse some of our partners if they were looking at referrer stats and saw a drop in traffic attributed to us. Therefore at the same time, we added the content-security-policy:referrer origin header and we can see that the referrer is correctly passed along by the browser.

Generally this is working fine but we have had complaints from users of Adobe SiteCatalyst (previously Omniture) who are no longer able to attribute traffic as being referred from us. We don't have access to SiteCatalyst to test this out. How does SiteCatalyst track referral traffic and is there a way to view all traffic split by different sources/referrers?


Solution

  • I don't know if this accounts for everything, since I don't have full context on both your end or your users' end, but here is some info / thoughts that might help.

    By default, Adobe Analytics tracks referrer from document.referrer. This can be overridden by setting s.referrer.

    In general, depending on how your site directs visitors to the other site vs. Browser security/privacy settings, document.referrer may or may not have a value. For example, Internet Explorer's default security/privacy settings is to suppress document.referrer on dynamically generated popup windows (e.g. window.open() calls).

    So, and again, this is just speculation because I don't know the full context, you may need to work something out w/ your users, e.g. explicitly passing the referring url as a query param to the target page, and have your users pop s.referrer with it if it exists. Something along the lines of:

    if ( !document.referrer ) {
      s.referrer=s.Util.getQueryParam( 'refURL' );
    }
    

    Note: s.Util.getQueryParam is a utility function for Adobe Analytics AppMeasurement library that will return the value of the specified query param, or an empty string if it doesn't exist. If your users are still using legacy H code, they should use the s.getQueryParam plugin instead. Or use whatever homebrewed method of getting a query param from the URL, since javascript doesn't have a built-in function for it.