How is Time on Page calculated by GA?
Referring to the first search result link that appeared - https://help.analyticsedge.com/article/misunderstood-metrics-time-on-page-session-duration/
If Visitor 1 visited page1 at 0:00 and moved to page2 at 0:45, then
time on page for page1 = 0:45-0:00 = 0:45
time on page for page2 = ???-0.45 = 0:00
Session duration = 0:45
If this was true then if a user spent 10 mins on a single page where he just read content but never went to other page then will the time on page and session duration be 0:00?
Yes, it can only track time against another action. In most cases this means non-bounce and non-exit pages only have a time on page stat. There are other ways to get timer stats. If you use Google Tag Manager you can use a timer trigger to fire at intervals, so it will fire, for example, every 10 seconds that someone is on the page, and not fire when they've left the page.
Related
I am working on fullcalendar + Nylas (Calendar Sync service).
Nylas is fetching only 1000 event per request from server. so I need re fetch new events on navigate every month full calendar. I need js code only for fullcalendar refetching event while navigate the months.
The Nylas Events endpoint has the option to filter GET requests by starts_after. You can make a request that searches from the start of the month and filter out any events that happen in the following month.
i am having an issue when call free busy request on Google Calendar API.
Full day event are not showed correctly.
If I have an event on 23/04/2018 (full day event)
the FreeBusy request return this:
{"calendars":{"null":{"busy":[],"errors":[{"domain":"global","reason":"notFound"}]},"<MYEMAILADDRESS>":{"busy":[{"end":"2018-04-23T08:15:00.000Z","start":"2018-04-23T08:00:00.000Z"}]}},"kind":"calendar#freeBusy","timeMax":"2018-04-24T06:00:00.000Z","timeMin":"2018-04-23T05:00:00.000Z"}
As you can see the start/end time is not useful.
Otherwise if i get the event from event list API, the event has not a time but only date (correct).
Any suggestion?
Thanks
I have a aspx page for booking tickets, and i am providing link to users through mail(link of booking page) .
when they click that link it should check the time 09:00 AM then it should navigate to booking page else redirect to another page showing message "not allowed this time"
if (DateTime.Now.Hour == 9)
Response.Redirect("Page.aspx");
else
Response.Write("<script language='javascript'>alert('Not allowed this time');</script>");
You are checking for a Current time of the Server using DateTime.Now.Hour. It takes current time from a server, and taking only HOUR part of this datetime. If your hour is 9 o'clock (it don't consider minutes), user will be redirected to the some Page.aspx. You have to change the name.
If it is not 9 o'clock, corresponding alert will be displayed.
I'm a newbie in analytics.
I want to track a record-created event every time someone creates a time-record in a web application for time-tracking. But the user can also copy a time record to multiple dates which should yield one record-created event for each new record.
Would a simple loop work or does google think my events are coming to them too fast? Should I add a setTimeout?
_.each(dates, function() {
ga('send', 'event', 'record-created');
// maybe wrap the line above in a setTimeout ?
});
As per documentation:
Each analytics.js tracker object starts with 20 hits that are
replenished at a rate of 2 hit per second. Applies to All hits except
for ecommerce (item or transaction).
Plus you have "only" 500 interaction hits per session, so you should not send too many events or GA will drop data.
When I am in the month view of FullCalendar, then say I go back a few months to March and click on an event, then hit the browser 'back' button, how can I make it so that the browser knows to go back to March? Currently, it just goes back to the current month.
Thanks
Here is one possible solution:
From eventClick callback, when you redirect the user to the other page. Also send current day, month and year of the calendar in the URL.
On that page get the values from URL and store them in session variables.
This is how you can get current date of the fullCalendar:
var calCurrDate = $('#calendar').fullCalendar('getView').start;
var date = calCurrDate.getDate();
var month = calCurrDate.getMonth();
var year = calCurrDate.getFullYear();
Now on calendar page check if those session variables are defined. If they are defined, add the following properties to fullCalendar
<cfif isDefined('SESSION.d')>
<cfoutput>
date: #SESSION.d#,
month: #SESSION.m#,
year: #SESSION.y#,
</cfoutput>
</cfif>
For server side language I've used Coldfusion (as I know only this). You can easily understand the logic and translate it to your desired language.
Note: At the end of the calendar page you must destroy the session variables. Otherwise every time when you refresh the page you'll be taken to the same day, month and year.
I hope this helps. Thanks