Expand my Community achievements bar.

Join us for the next Community Q&A Coffee Break on Tuesday April 23, 2024 with Eric Matisoff, Principal Evangelist, Analytics & Data Science, who will join us to discuss all the big news and announcements from Summit 2024!
SOLVED

Direct call rule is firing first prior to Pageview call which is causing spike in visits & other metrics also inflated

Avatar

Level 2

Hi Team,

 

Can someone help me how to sort this order of rule firing. Whenever our domain pages are loaded usually pageview (DOM Ready) should fire first and later followed by a direct call rule (this fires w.r.t Identifier)but this isn't happening in that order and direct call is firing first which is causing more direct visits number inflated also effecting other marketing channels where page views were less than visits.

1 Accepted Solution

Avatar

Correct answer by
Community Advisor

I assume that you have these 2 -- DOM Ready and Direct Call -- in 2 different Rules. Since Launch runs its Rules asynchronously, you can't guarantee which Rule runs first in the user's browser.

FYI ordering works only with events of the same type. So you can set the order all of your DOM Ready events or all of your Direct Call events, but you can't set orders for both DOM Ready and Direct Call events and expect Launch to follow them.

So here's what I'd do:

  1. Use 1 Rule only. Include both the DOM Ready and Direct Call events in that 1 Rule.
    1. BTW if you were unaware that you can include more than 1 Event in the same Rule, well… tada! 
  2. Add whatever conditions and actions that need to be done with the DOM Ready or Direct Call.
  3. Add a Max Frequency condition with the following:
    yuhuisg_0-1643869837211.png
    1. Count: 1
    2. Unit: page views

Here's how the above works:

  1. When DOM Ready or your Direct Call get triggered, this one-and-only-one Rule runs.
  2. It checks the Max Frequency condition. If this is the first time that the Rule has run, then the frequency is 0 currently, so the Rule will continue running. Internally, Launch will then update the frequency to 1.
  3. If the DOM Ready or your Direct Call get triggered again, this one-and-only-one Rule runs again.
  4. But now, the Max Frequency condition will fail, because the frequency is 1 now, which is also your setting for this condition.
  5. So the Rule stops and the actions won't execute.

Hope that helps!

Also, there's a forum specifically for questions about Adobe Launch: https://experienceleaguecommunities.adobe.com/t5/adobe-experience-platform-launch/bd-p/experience-pl...

View solution in original post

4 Replies

Avatar

Correct answer by
Community Advisor

I assume that you have these 2 -- DOM Ready and Direct Call -- in 2 different Rules. Since Launch runs its Rules asynchronously, you can't guarantee which Rule runs first in the user's browser.

FYI ordering works only with events of the same type. So you can set the order all of your DOM Ready events or all of your Direct Call events, but you can't set orders for both DOM Ready and Direct Call events and expect Launch to follow them.

So here's what I'd do:

  1. Use 1 Rule only. Include both the DOM Ready and Direct Call events in that 1 Rule.
    1. BTW if you were unaware that you can include more than 1 Event in the same Rule, well… tada! 
  2. Add whatever conditions and actions that need to be done with the DOM Ready or Direct Call.
  3. Add a Max Frequency condition with the following:
    yuhuisg_0-1643869837211.png
    1. Count: 1
    2. Unit: page views

Here's how the above works:

  1. When DOM Ready or your Direct Call get triggered, this one-and-only-one Rule runs.
  2. It checks the Max Frequency condition. If this is the first time that the Rule has run, then the frequency is 0 currently, so the Rule will continue running. Internally, Launch will then update the frequency to 1.
  3. If the DOM Ready or your Direct Call get triggered again, this one-and-only-one Rule runs again.
  4. But now, the Max Frequency condition will fail, because the frequency is 1 now, which is also your setting for this condition.
  5. So the Rule stops and the actions won't execute.

Hope that helps!

Also, there's a forum specifically for questions about Adobe Launch: https://experienceleaguecommunities.adobe.com/t5/adobe-experience-platform-launch/bd-p/experience-pl...

Avatar

Level 2

Thanks @yuhuisg  your answer helped a lot. But I see both the events fire all the time irrespective of the Application form event triggered.

Ex : event 1 fires for Pageview (DOM ready) happens on page load for all the pages.

       event 2 fires for Application Form (Direct call - Identifier) happens only specific pages where application form exists.

 

Please let me know to overcome this issue

Avatar

Community Advisor

Can you show some screenshots of your Rule setup and your multiple event calls?

Also, I've just updated my solution to use the Max Frequency condition, instead of the _satellite.setVar() method. This should be simpler to setup and more reliable too.

Avatar

Level 1

Genius! Will definitely use this in the future!

If for some reason you don't want to use the frequency limiter, you can even setup a fireonce flag, a boolean that turns false on the first rule execution.