The company I work for has a custom reporting schedule, similar to the month specific groups four or more weeks are grouped into 'periods'. I have a mapping from date to period that I wish to upload to Google Analytics using its data import function.
When I get to selecting the schema on the data import tool there is no option to select the date as the key to join my data on.
Is this possible in Google Analytics? What is the correct method?
No, this is for the most part not possible; imported data is applied to incoming data but not to data that has already been collected, and then it is applied to all hits, not to a specific timeframe. Also you cannot create new interactions, you can only amend or change interaction data as it is being collected.
Google Analytics Premium (now 360) accounts have a feature called query time imports where imported data is applied to existing data in GA. This still does not allow you to selected a date as key, but if you have created a custom dimension and stored a date in there you should be able to make this work (since you can select a custom dimension as key field); however if have not actually tested this, so this is an educated guess.
But for the most part no, this does not work in GA and there is no correct method for your use case.
Related
I'm looking to download hit data from a Google Analytics view for a small period of time that includes unique ID for a session and URL that was viewed. I believe I could do this going forward by setting something in Google Tag Manager to a Custom Dimension, but I was looking to avoid that (we have a good number of custom dimensions) and because I wouldn't be able to go backward.
Is it possible in the free version of GA to do something like? I picture the output being the URLs in my x-axis and my users in the y-axix with counts.
I'll be looking to take this data and do a cluster analysis to determine user behavior types.
Nope. Google Analytics does not expose a user specific id via the API or via data exports in a standard account (in GA360 you could use BigQuery to extract the client id).
You either have to set up a custom dimension (as you said this does not work for historic data), or try and use calcuated fields in Google Data Studio in the hope that if you aggregate enough different dimensions into one field you will end up with something specific per user.
I'm looking to import a csv which would contain:
1. The date a client signed up
2. Where they heard of us (online/facebook/storefront etc)
3. Their location
4. And if they became a sale are pending or not (y/n/na)
Given that type of data is this feasible to do. I've been attempting to do this in a variety of ways, mainly importing the data (though the ga import button) to custom dimensions. However after creating custom dimensions for each I am failing to see the data in any shape or form. I've created a custom report attempting to view these custom dimensions but it fails to show me anything after a couple days (I am aware of the 24hr potential processing timeframe).
Any help would be appreciated!
You could start by quickly setting up a Dashboard with Table widgets for each of these Custom Dimensions, with say, their associated number of Pageviews and/or Sessions. This would help you be sure whether or not data is correctly being recorded.
If that does not provide any positive result, make sure that the data you imported respects the format expected by the Data Import tool.
For details about the format, Google Analytics recently updated their documentation with file samples: https://support.google.com/analytics/answer/4524584?hl=en&ref_topic=6015090
Is it possible, and if so, how to make a "custom" counter entry in GA, which basically is a count based on database entries.
Quite hard to say without knowing your specific use case, but Google Analytics supports events. You can send custom events to Analytics on every page load. You can then think of a structure with different categories and labels where you can filter these.
If you just want to show the change of the number of entries in a table, you could also think of using a monitoring software like munin. Think about whether your data makes sense together with your other Analytics data or if you just want to show the changes over time together with your other server health parameters.
Suppose I have 65 people that register on January 1, 2012.
I want to find out how many of those 65 people returned to the site that same week. (More generally, if n people signup on date A, I want to be able to find out how many of those n people return in a given date range.)
Is there a way to do this using Google Analytics? If so, how? I am currently getting the user's username for each page hit.
If you only need to track people who sign in then you don't need to get very fancy. You can copy the relevant user attributes, such as sign up date, from your DB to GA using events or session level custom variables.
But if you want to track everyone, including those who don't sign up, then you'll need to use visitor level custom variables (GA cookies).
I explain how to set this up in detail in this post so I'll just highlight the key points here:
First, decide how to layout the data in Google Analytic's custom variables based on your requirements. For example, are you storing retention dates for daily, weekly or monthly tracking? Do you also want to track cohort goals? Partition this data into the available custom variable slots.
Write the cohort data to these custom variables when visitors arrive or achieve goals using Google Analytic's _setCustomVar function. Setting the fourth parameter of that function to 1 indicates you want to do visitor-level (cookie) tracking.
For each cohort you wish to analyze, create an advanced segment in Google Analytics. Using a regex expression in the condition will give you the flexibility to segment for interesting cohorts. ex: "All users whose first visit was the week before Christmas".
Analyze the results with reports by specifying a date range and the corresponding cohort-sliced advanced segments. Another option is to extract the data using the Google Analytics Data Feed Query Explorer or their API.
Once you've put in the work your new visitors will be stamped by their first visit date and nicely fall into each daily or weekly retention bucket. This is what it might look like if you were tracking weekly retention, for example:
This is not a full solution, but here are some points on how I would approach this problem with the help of Google Analytics:
You have to make sure that you somehow store the registration date of each user, either in your database or in a cookie. Then have a look at Google Analytics Event Tracking. You could for example set up a new category based on the registration date. On every page load in your page, you then have to set up this event tracking call, for example like:
_trackEvent("returns", "2012-01-01", "UserId:123123123")
This way you will receive all page views for users that registered on that particular date. To add a date range in this, you have to make sure that these events only get fired for the number of dates after the signup (e.g. 7 days).
After your date range, you will be able to see how many page views and how many users returned - you even know which users came back.
I've been playing with Google Analytics (& tracking events) and I'd like to be able to export my data as a raw log of [session ID, tracking event/analytics statistic] so that I can do my own classification of user sessions. All I seem to be able to do is look at events in aggregate, e.g. event X happened 19 times. Does anyone know if this is possible with Google Analytics? They certainly assign a unique ID, but maybe they choose not to make it possible. If not, positive experiences with MixPanel or others?
(I've seen How do I get raw logs from Google Analytics?, but that was in 2008 before their data export API was public; I'm hoping that I'm missing something.)
Custom variables are the way to go, but still there is the limitation of 50k unique values per month.
Google Analytics uses cookies that have a session ID, so you could read the "__utmb" cookie and use that value as the session identifier.
If you plan on doing deeper identified event/usage tracking, I recommend another tool.
This is one thing that I've never liked about Google Analytics. The workaround is sort of a pain... You basically need a way to identify each unique session, and Google does not provide a way to pull those unique session IDs from their API. Thus, we are forced to create our own...
Add a javascript function that checks the value of a custom variable (one that you are using as a session variable). If the value is empty, you know it's a new session. In this case, assign an incremental value to the custom variable (probably set up an extremely basic table to find get the "next" value). This way you can export whatever data you'd like broken down by session ID.