Expand my Community achievements bar.

SOLVED

Creating a Segment that will show pages that contain a specific custom link value

Avatar

Level 2

I'm trying to create a segment that I could then use as a filter to only show pages that contain a specific custom link value, for example a segment applied to a freeform which would then display pages with a specific button or link.

 

Open to other ways to go about this as well

Topics

Topics help categorize Community content and increase your ability to discover relevant content.

1 Accepted Solution

Avatar

Correct answer by
Community Advisor

So if you create a data element that looks for a particular link. (Exists or not).

 

Then map that data element via a page rule to an evar(with expiry on pageview) when page loads.

 

Then you can just filter pages with evar or not. A prop can work as well but they are usually fewer in number so may no be available.

 

GLTU

View solution in original post

10 Replies

Avatar

Community Advisor

For clarity of concept here...

Are you just trying to identify a links existence on a page or when someone clicks a specific link/button(making a custom link call)?

Avatar

Level 2

Trying to identify a links existence on a page! It sounds simple enough but I'm struggling with the logic of it unfortunately 

Avatar

Correct answer by
Community Advisor

So if you create a data element that looks for a particular link. (Exists or not).

 

Then map that data element via a page rule to an evar(with expiry on pageview) when page loads.

 

Then you can just filter pages with evar or not. A prop can work as well but they are usually fewer in number so may no be available.

 

GLTU

Avatar

Level 2

Thanks for your solution first of all. 

 

I don't have access to the data collection process of our site so creating a data element isn't something I think I can do.

 

Is there a way to pack what you suggested into the Segment Builder? I'm hoping to create a "catch-all" segment that I could then use in a freeform table with the Page Name dimension to display pages with that custom link value.

Avatar

Community Advisor

Unfortunately, what you are asking to do isn't possible without custom tracking.

 

While you can know what page a link is on from the click (this also typically requires an eVar to capture the page name and another eVar to capture the URL (as the default pageName / Page value is stripped from links during processing, and pageURL is not available in Workspace or Segment builder - this is also stripped from the data during processing in case you try to pull it from Data Warehouse or Raw Data Feed).. the problem is that you cannot rely on people having clicked on the links to know of their existence.

 

Now, if you aren't looking for complete accuracy, and you have the custom eVars set up to track the pageName and URL when links are clicked, you could create a pseudo report for the pages based on the actual clicks (but looking at the "Page Name eVar" as the dimension... but you cannot associate this to Page Views for those pages, it would still be tied to the click instances... 

Avatar

Level 2

Oh okay I see. Well the information provided definitely gives me a good direction to start looking for a solution here. Thanks again for the help guys!

Avatar

Level 10

We have multiple link groups on a page (aka modules). For those modules where we want to track the impression (particularly good for modules that are sometimes on the PV and sometimes not), we set a flag in the module code that says "track my impression". (String length limits mean we only track impressions in selected modules.) When the page loads we capture values for all those modules and concatenate them into a string and put them into an evar. The impression values are the same values we use to track clicks to the modules. For example, if the click value for the module is top-pks, the impression value is also top-pks. Both the click variable (if there is a click) and the impression variable are populated on the next page, where we also pass the referring page name. This destination page approach allows us provide a ctr in reporting and not have a huge number of custom link type calls we need to pay for. The last page in the visit, like in time spent, is not counted in the ctr (not good but better than doubling our Adobe call cost).

However, recently our dev has been changing how the site loads and we have been running into race conditions where sometimes miss some of the impressions. The method is dependent on capturing all the impression values before the Adobe call fires.

Avatar

Community Advisor

So is it that now you are to a more SPA(single page application) like server technology?

In that case you would need your page logic to change to capture that string summary later on pageload. Can you verify is it indeed an SPA you are tagging for?

Avatar

Community Advisor

Oh I absolutely agree, if you want to know where items are seen you need to have impression tracking... 

 

Trying to create a backwards stitching of "links clicked" to determine which pages they were seen on isn't an easy or a reliable way to get the information...

 

When you don't have access to the tracking, this becomes more difficult, as you then have to pull in other people to support the requests (which sometimes is unavoidable). Also, when developers change things, it can completely break solutions (I know that pain all too well and had to deal with it recently on a new implementation with a short release time and I had to work on the active Dev branch... code changed frequently breaking the stuff I was working on, and instead of getting the developer to provide a proper data layer due to "time constraints" I had to spend 10 times longer with more effort finding a way to make it work...)

 

If you at all have the ability, try and get alignment with the dev team, it will save so many headaches in the long run!

Avatar

Community Advisor

Jenn makes a good point here as in your case defining a digital datalayer object of the impression string i think would be key. You can then ensure its captured in a timely fashion but does seem like you need some dev alignment to make it happen.