I have created 5 marketing channels namely - Display, Email, Paid Social, Natural Search and Direct in this order only. Created corresponding processing rule for each channel.
Display, Email and Paid channel data is captured through query string parameter from the url when visitor land on the home page. And have set channels data value to query string parameter for all the above three channel with their corresponding unique parameters. [For example - for Email : cid=eml]
But I am not getting any visits data is going only in these two buckets - first in Direct and second in None.
Irony is when i stored query string parameter value in a separate eVar (using custom coding in a rule in Launch) and then assigning back this eVar value in marketing channel processing rules in place of query string parameter - everything is working fine, data in buckets in collecting perfectly also last touch and first touch report is coming correct.
Issue is only when i am using query string parameter in rule and channel's value. Can some solve this problem. Do i need to use getqueryparam plugin in launch or any kind of custom coding, so that query string parameter also work??
are you able to share the link you are using? It might be a quicker way for the community to troubleshoot.
A few things to check.
1. Query string parameters are case sensitive. Check that you are using "eml" and not "EML" (ideally adjust the MC Rule to cater for both) But since your evar set-up is workging this seems unlikely.
2. Does your application strip the query string values when a user lands on the page? How are you using launch to assign the cid to a variable?
3. Have you set up "cid" to map to your campaign variable? E.g.
Is there a reason why you want to use the query string paramter to set the variables instead of the more coomonly used "Tracking Code" Campaign Variable? (I know this doesn't answer your question, but if it achieves the same result it's probably better to just set-up and move on)