I've got a process on my website that I would like to track as a funnel, except I am unclear on how to do so since the process has a loop.
We are building a single-page tool that calculates the number of products the user needs for their home, which is based on how many rooms the home has and the details of each room. Here is an example workflow:
Create Home
Add Room 1, set details, click Save
Add Room 2, set details, click Save
Edit Room 1 details, click Save
Click Analyze
As you can see from steps 1 and 2, the user can add a variable number of rooms. From step 4 you can see that they can go back to edit a room after they've created it.
I would like to see where users drop off, so I'd like to see this funnel, minimally:
Create Home -> Save at least 1 room -> Click Analyze
If I track "Save Room" as a page view (/save-room) there will be a lot of drop off once users start to add more rooms: it will look like they exit the funnel at /save-room by going to /save-room... right? Should I control this with Javascript to make sure that the /save-room pageview is only sent once per process? Is there a better way?
Additionally, I would like to track whether people with larger homes (more rooms) drop off more frequently. So if I prevent additional /save-room page views from being sent, I would lose this visibility. Should I track all of these operations as events as well?
Thanks in advance!
Funnels do (literally) not have loops (that's one of the reasons Google introduced flow reports).
One possible way would be to create a session based custom metric. You set it to 1 at the first "save room" pageload, then instead of doing more "save room" pageviews you track an event for each additional room and increment the custom metric in the event (thus saving the number of rooms; you'd need to create a custom report, since custom metrics do not show up in standard reports, but you would get the info for the number of rooms and still be able to use the funnel visualization).
Related
Lets say I wish to track
User action - game he played - which area he stays - his house number.
If I were to track these event actions in Tabular format, it would look like:
UserId|Game|Area|House|Timestamp so on.
Then I can always run SQL queries if I want to answer few business queries. Like
1. In a given day/week, who is the most active User
2. Which game is most-played?
3. Which area plays most events
4. Which user from which area are the most active
Whats the best way to capture this using Google analytics? Will custom dimensions be useful. Or GA is not suitable for this kind of insight?
Thanks.
First of all, the house number is too precise, it would be against GA's ToS.
In GA everything is captured in "hits", you can think of this as one "row" of data.
Let's look at what you wanted to find out:
Most Active User? - This depends on how you determine "Active". Is it the longest Session durations? Tried most games? Most logins? Most sessions? To track a user, you'd need a User ID tracked.
Which game is played the most? - Again, what is played the most? Longest time in game? Most "start" games? This would require you to know the Game that was played and when someone started playing
Which area is most active? -This would go back to the definition of active, the region information is needed along with the active definition
Which users are most active in an area? Same as above, the user would need to be identified and area
To determine which Custom Dimensions (CDs) you want, let's look at the example data points you want to track and try to determine the scope and if it already exists as a standard dimension:
User ID - this is obviously related to the user, makes sense to be user-scoped
Game - This is a tougher CD. I would think that in a single session, users can play multiple games, thus I'd think you'd want this to be hit-scoped.
Area - GA already provides this based on the ISP
Timestamp - GA already provides time dimensions
From above, we can determine that you need to create two CDs, one to track User ID, the other to track the Game.
You can also look into using the userid feature in GA for cross-device tracking.
I am trying to create a "Custom Report" in Google Analytics but cannot get the dimension/metric to work. My goal is to retrieve all pages of a user that triggered an event(also a goal) on which pages before they converted(purchased - ecommerce)?
Like this:
1) User enters the main page ("/")
2) User goes trough 3-4 article pages (20 seconds activity triggers an event that also is a goal in GA.
3) User fills out form and submits (Enhanced Ecommerce - transaction)
My Goal is to list out either:
1) How many times a user triggered this particular event before purchasing
2) List all pages on where user triggered this particular event before purchasing.
My Custom Report looks like this:
But gives 0 rows in return.
This is caused by the filter that you are using, where you are trying to combine Hit level data with session data. Events are gathered at hit level, where as the question you ask needs to be looked at from a sessionalization perspective.
Let me describe what I believe is happening. Since a user on your website is browsing the articles page, they trigger an event called "Content viewed". Not sure how many times or the exact coding here, but let's say it triggered four times. This is then tied to the Event as a Hit to the page that it triggered on.
On the following page, the order page, they trigger the event "Order Completed" after they register, which again, the event is registered Hit level on that page. This means that on pages ABCD, they trigger the event for "Content viewed".
What you need is a segment to do this kind of analysis. A segment ties together sessions and users from Hit level data, so you can answer questions like: "Which Users have triggered "Content viewed" and then completed registration?"
Sessionalization works by creating sessions tied to a User (client ID) and what happened during that Session. A Session carries different Hits, which are then aggregated as a Unique Visitor, or User, over a number of sessions.
Hope my explanation helped!
I have a very basic site goal:
When someone gets to the '/my-account' page directly from the '/component/community/ajaxregister/ajaxregister' page, it needs to count it as a conversion (Registration).
I have a custom destination goal set up:
Destination = '/my-account'
Funnel: ON
Step 1 '/component/community/ajaxregister/ajaxregister' Requires? YES
The registration counts in my db do not match the goal count and the 'Reverse Goal Path' report shows that there are conversions being registered where the 'Goal Previous - Step 1' includes pages other than the registration page.
Any ideas on how to make this goal register only when one lands on my-account from the registration page?
The "required step" merely affects funnel visualization, not goal conversion. So by default there is no way not make this count only when people come from the registration page.
To solve this in code (and thus make the question on topic :-) ) you could
check the referring page on your goal conversion page, then
fire an event when the referrer is the registration pages, and
then switch to an event-based goal in the GA backend
That way you would not have a funnel (does not work with event based goals), but at least you'd have the "correct" number of conversions.
I'm looking for a service that will provide me analytics to prevent click fraud for saving views in a view_counter in a post table. So basically like this:
->Someone visits one of my sites posts
->Analytics service sends me a response that tells me if the view is an organic click, or a robotic click fraud scam
->If the click is organic the view_counter column is incremented on the post table in the database.
Note I don't want to manually hook each post to something that will be able to do this. I would like to automate the task. So when the post is made on my site the service is automatically set up to count those views and send me a response, so I can save it in the database.
I'm looking at some of the I'm looking at some of the reporting APIs, but am unsure what one I would attempt to use and how I would implement this.
Thanks for any help.
I'm not sure it's help but first of all you have to decide what a good session is. For example you can count only sessions with some duration or some user interactions or maybe if user scroll the page.
And then you can make an advanced segment for these sessions and make custom report for all your articles.
Or export your data to Google Sheets and create a table with all your pages and "good sessions" for them.
https://developers.google.com/analytics/solutions/google-analytics-spreadsheet-add-on?hl=en
Are dynamic advanced segments retroactive at the session or visitor level? Can it retroactively recalculate session data or can it retroactively recalculate visitor data?
Here is an example as this is a foggy question.
Say I add an event tag to GA today. Tomorrow i run a report where the dynamic segment is for visitors who have triggered the event. The report requests unique visitors over time.
Now, if it is retroactive at the visitor level, the visitor is now tagged as having triggered the event. The report should show data going back in time (assuming these are not first time visitors). In this scenario GA will see if the visitors tagged arrived 2 days ago even though the events did not exist yet.
This answer no longer reflects up to date information.
Advanced Segments are not queried at the visitor level, and are thus not able to query data across sessions. They query particular sessions (or, visits), not visitors.
So, if you visit the site today, trigger an event, and then visit the site again tomorrow and don't trigger the event, an advanced segment for that event will be a query that says "Show me all sessions in which this event was trigger"; the former will be included and the latter excluded.
Similarly, if you do an advanced segment for a particular page, what you're saying is "Filter down to all the sessions in which this page was viewed" (this can be confusing for people who apply an advanced segment for a particular page, and the result contains more than just that page.)
However, they are dynamic and can be applied to the retroactively. In other words, the results of the advanced segmentation are not contingent on when the advanced segment itself was created. (This stands in contrasts to, say, account filters, that do not apply themselves retroactively.) They tend to be calculated on the fly; you'll notice that complex advanced segments can often take a long time to process, and tend to increase the likelihood that Google Analytics will return sampled (or, "fast access") data.
There is no way to use advanced segmentation to query across sessions.