Let's assume we have a goal to setup offline events tracking using measurement protocol, the only limitations from our side is that we need to post the events feed once daily and have a GA setup with correct standart reports from GA UI.
GA limits:
- Session timeout limit is 4 hours;
- Max time delta between when the hit being reported occurred and the time the hit was sent - the qt parameter, is also limited to 4 hours;
Test case:
"0". Session timeout limit is set to the max 4 hours.
- User visits site at 9 a.m first session is created.
- It takes him 10 minutes to get the info needed for making a call.
- User makes a call and an phone order at 9:10 a.m. Unique, non personally identifiable code is passed with the call to CRM and saved in GA dimension and uid.
- At 6 p.m call-report CRM generates the call-report and passes it to GA using measurement protocol event upload HTTP requests.
- At 6 p.m call-report CRM generates the transaction-report and passes the phone order value & number to GA using measurement protocol transaction requests.
Questions:
1) Does the qt parameter in request described on the 5'th step of test case needs to be equal to:
1.1) Possible maximum value - 4 hours (because otherwise it may be not processed by this rule "Values greater than four hours may lead to hits not being processed.") 1.2) Actual value - 8 hours & 50 minutes.
2) Does 1.1 result in a first session timeout?
3) Does 1.1 result in a second session being created, which:
- start-time is equal to 4 p.m & 50 minutes;
- end time is equal to 4 p.m & 50 minutes;
- user-agent by-default is equal to the value which has been used in measurement protocol HTTP request;
- by-default is not closed, so if a second user visit is on 4 p.m this visit's hits will be sent to this session;
4) Does this second session affect the value of standart report's parameters, such as:
- average session length;
- average bounce rate & exit rate;
- average pages per session;
5) Does the second session affect the flow reports or any other Google reports making in incorrect?