Closed chrisblakley closed 2 years ago
Looks like the new "Streams" use a "Measurement ID" (as opposed to a Tracking ID). This will mean that Nebula Options and variable names will need to change... right?
User data retention options have also changed. Can only select between 2 months and 14 months for "event" data.
The label "Event Data" is what is concerning... I know Universal Analytics keeps the event data and only removes demographic data beyond the retention period, but this seems to apply that the actual event data itself may be removed...
Any chance that this just means the cookie data will get deleted (as in, disassociated with the user) and not the actual analytics data? It mentions that the 2- or 14-month period is reset every time the user comes back to the site.
Edit: Someone in the community mentioned that they believe the data would be removed from GA after the retention period, but would remain available via Google BigQuery. I'm hoping to confirm that soon myself.
User Properties are created on the reporting-side (not the admin-side) here:
Each GA Property can have a max of 25 user properties. https://developers.google.com/analytics/devguides/collection/ga4/user-properties
Note: User properties can be (permanently) archived so that new ones can be created (with a 48-hour waiting period): https://support.google.com/analytics/answer/9269570?hl=en&ref_topic=9756175 Once it is archived, that is permanent!
Custom Dimensions and Metrics are still available, but are tucked away under Events > All Events on the reporting-side as well. The "Parameter Name" is the JS object key, and the "Dimension Name" is the human-readable reporting name. Parameter names are no longer limited to dimension4
or whatever (however, keep them shorter than 24 characters)). From what I can tell, custom dimensions are no longer limited. However, I don't see a "scope" setting, so I'm not sure how hit, session, and user dimensions are defined...
In reporting, secondary dimensions can be applied to table reports by clicking the "+" icon.
"In a Google Analytics 4 property, every "hit" is an "event," meaning there is no longer a distinction between hit types." AKA– there is no pageview
hit type (but what about timings
and exceptions
– also events I'm assuming?)
Recommended events: https://support.google.com/analytics/answer/9267735 Note: the "Event" column is the event "name" (which I believe is what the conversion would look for)
GA4 has some default events that it can track via Enhanced Measurement: https://support.google.com/analytics/answer/9234069?hl=en&ref_topic=9756175
The list for web:
pdf|xlsx?|docx?|txt|rtf|csv|exe|key|pp(s|t|tx)|7z|pkg|rar|gz|zip|avi|mov|mp4|mpe?g|wmv|midi?|mp3|wav|wma
Video tracking refers to Youtube videos, and only when they have the enablejsapi
query string. Nebula already does some "reloading" of Youtube videos, but with GA4 it should always do it for all videos.
GA4 also has recommended defaults for common events: https://support.google.com/analytics/answer/9267735
It will be a good idea for Nebula to match these names and properties.
Per https://support.google.com/analytics/answer/10106689?hl=en&ref_topic=9328240
GA4 has a limit of 500 event names. How many event names (ballpark) does Nebula currently use? With a quick find, I can see that Nebula sends roughly 86 event instances to GA, however many of those are going to be duplicate names, so we should be well within the limit and also allow for the child theme to have more than enough event names of its own.
Note: This is per device/browser instance– not per property! As clarified here:
"You can send a maximum of 25 custom parameters per event, and each parameter value can be 100 characters long. There is a total limit of 50 custom text and 50 numeric parameters per property." https://support.google.com/analytics/answer/10106689?hl=en&ref_topic=9328240
GA4 has five default conversions (that do not count towards the 30 additional conversions you can add):
Default conversions details: https://support.google.com/analytics/answer/9234069
Since there is no "View" column anymore in the admin section, it looks like goals/conversions are managed on the reporting side under Events > All Events. There is a column here where you can toggle which events are marked as conversions.
New conversion events can be created in anticipation of upcoming event data (if no events have appeared yet) under Events > Conversions and clicking "New conversion event" and filling out the event name.
@todo: Note here what the "Event Name" corresponds to– I'm guessing it's the action
, but verify that.
This is a great idea so that dev servers can send actual data to GA without interfering with live data.
From the docs: https://support.google.com/firebase/answer/7201382?hl=en&utm_id=ad
Include a 'debug mode' = true
parameter; for example:
gtag('config', 'G-12345ABCDE',{'debug_mode':true});
gtag('event', 'xyz', {
'debug_mode':true
});
These will appear in the DebugView report:
Consider adding a Nebula option in the Analytics section to set all data to "debug" mode.
It seems like GA4 would be good for cross-domain tracking (if we need multiple domains to send data to the same GA property). Looks like we could just set up a new stream for each data source, but the documentation recommends (requires?) some kind of User ID that is passed between the websites... What about if we do not have user logins?
The Measurement Protocol still works with GA4, but looks like the API is back to Alpha, so it could drastically change between now and when becomes stable. For now, here is the documentation of how to send an event via the Measurement Protocol: https://developers.google.com/analytics/devguides/collection/protocol/ga4/sending-events?client_type=gtag#send_an_event
Nebula was sending a beacon for quality assurance usage tracking #2075 but eventually we can use Fetch for that.
const measurement_id = `G-XXXXXXXXXX`;
const api_secret = `<secret_value>`;
fetch(`https://www.google-analytics.com/mp/collect?measurement_id=${measurement_id}&api_secret=${api_secret}`, {
method: "POST",
body: JSON.stringify({
client_id: 'XXXXXXXXXX.YYYYYYYYYY',
events: [{
name: 'tutorial_begin',
params: {},
}]
})
});
Note that the new version of the Measurement Protocol is v2
.
After doing some initial testing, I'm not sure how the persistent data would be set since it happens in the event_callback
function of the event being sent to GA... Additionally, the syntax is not the way the documentation requires.
gtag('event', 'page_view', {
'event_callback': function(){
window['ga'](function(){
var gtagTracker = window.ga.getByName('gtag_UA_36461517_3');
gtagTracker.set('client_id', gtagTracker.get('clientId')); //This does not follow the proper syntax for a user property in gtag...
});
},
'custom_parameter': 'I would need the data here...'
});
Since the documentation requires the custom property to be at the top-level of the object parameter (parameter 3), the above syntax may not even work at all. Is there a way to "set" the property like there was in Universal?
I want to list some typical reports we use in Universal Analytics and map them to how you'd find that data in a GA4 property.
Key metrics (users, sessions, pageviews, bounce rate)? Formerly under Audience > Overview.
Which acquisition channel has the highest conversion rate? First check the User Acquisition report using the "Medium" or "Source/Medium" dimensions:
"Default Channel Grouping" is still available in certain reports such as Traffic Acquisition: And while it is very cool to see event data in this report now, I don't see a "Conversion Rate" column– only a raw number of conversions which is not all that useful... In fact, even in the Analysis Hub I don't see a conversion rate metric (only "Conversions". Similarly within the Analysis Hub, I do not see a Default Channel Groupings dimension either.
Further details would be under Explore > Analysis > Template Gallery > Acquisition (under Use cases). I still need to try this myself to learn what additional customization is required after choosing that report type.
Which UTM source/medium is performing the best? Again– check the User Acquisition report and/or use the explorer to build the data.
What URLs are referral tracking coming from? Explore > Analysis > Template Gallery > Acquisition?
What are the top landing pages on the Organic Search channel? I'm guessing you'd use the "Pages and Screens" report under Engagement, but I don't know how to segment to organic traffic yet– probably via "comparison" but I don't see an "organic search" option in that dropdown... Do we really need to make a custom analysis for this too?
What is the average load time of the website?
Which page are users typically navigating to after landing on the home page?
What about the Content Drilldown report?
How does the bounce rate of each landing page compare?
What pages users exit from? I haven't tested this yet myself, but looks like it would be found under the Explore > Analysis > Template Gallery > User Behavior (under "Use Cases"). ...Do we really have to "create" all of these reports on every single property we manage?? I understand that GA4 caters to both web and apps, but this sounds like a huge time requirement... Can't "web" have better default reports?
Internal search usage?
How can I see an individual user's sessions? The User Explorer still exists, but the report must be "created" under the Explore > Analysis > Template Gallery > User Explorer (under "Techniques)
Where can I see exceptions (errors) that we are tracking?
Will there be a community shared report template gallery like exists in Unversal now? Since managing dozens of properties could get tedious setting up the same reports over and over in the Explorer I wonder if we'll see a community-based (or even user-based) saved templates to make setting these up a little faster...?
Here are my questions from my notes below. I'll try to answer them here as a quick-reference in the future (or for anyone else who stumbles upon this). I will not feel confident switching Nebula to GA4 until I can answer all of these questions.
Q.) Will we ever get direct access to the Tasks API? This issue is currently assigned, but no idea if anything will change from it. IMO, this may be the primary hurdle for Nebula updating to GA4...
Q.) Does data itself (events) get removed from GA reports after the retention period, or just their association with that user (cookie)? The Data Retention page says the following: "You can change the retention period for data you send that is associated with cookies, user identifiers, or advertising identifiers. These controls don’t affect most standard reporting, which is based on aggregated data. Changes to these settings take effect after 24 hours." So it seems like not all data is beholden to this data retention policy. More info here: https://support.google.com/analytics/answer/7667196?hl=en&utm_id=ad
Q.) What is the difference between a "User Property" and a "Custom Dimension"? My current guess is that a User Property is the same as the old user-scoped dimension in UA, and a custom dimension now refers to an "event" scoped dimension... I'm not sure what an event-scope is... is it a "hit"? If so, where did "session" scoped dimensions go (I use those much more commonly)...
Update: User-scoped custom dimensions are now available separately: https://support.google.com/analytics/answer/10075209
Q.) How are custom dimensions scoped? Event-based and User-based: https://support.google.com/analytics/answer/10075209 Will there be session-scoped custom dimensions?
Q.) What does the event "name" correspond to? (Ex: Category, Action, or Label) The event name is the equivalent of the UA "action". There is no such thing as a category, action, or label anymore– only custom parameters: https://support.google.com/analytics/answer/10106689?hl=en&ref_topic=9328240
GA4 has a limit of 500 event names per property!
Q.) Are custom parameters (for events) the same as custom dimensions/metrics or are they different?
Q.) Where are filters (formerly in Views), and how do we filter out internal traffic? I thought they would be in the "Data Streams" setting within each property, but when I click on the "All Filters" setting under the Account, I see this message: "Filters cannot be applied to App + Web [GA4] Properties."
However, if you click into the Data Stream, and then choose "Tagging Settings" in the "Additional Settings" section, you can select "Define internal traffic" which would still appear in GA reports, but would be marked as internal.
Update: Filters are now available:
But it looks like the config options for the filters are very limited:
Q.) Are brand terms no longer able to be added to allow for custom channel groupings of "Branded Paid Search" and "Generic Paid Search"? Not only are these no longer a thing, but it appears that it has also been retroactively removed from Universal Analytics as well.
Q.) Are Calculated Metrics going away? I didn't use these much, but Nebula does have some documentation on them that may need to be updated.
Q.) Is internal Site Search reporting going away? Since that was a setting under "View", the setting must have been moved. In this documentation page, site search is still referenced, and the query parameter can be changed in the "Advanced Settings" area... wherever that is.
Q.) How is "Engagement" defined? Sessions that last longer than 10 seconds, or have a conversion event, or had 2 or more pageviews.
Noting this here as a custom field formula for Google Data Studio. This can help recreate the "Default Channel Grouping" dimension that is sorely lacking from GA4:
CASE
WHEN ((Source="direct" AND Medium="(not set)") OR Medium="(none)") THEN "Direct"
WHEN Medium="organic" THEN "Organic Search"
WHEN (Social Source Referral="Yes" OR REGEXP_MATCH(Medium,"^(social|social-network|social-media|sm|social network|social media)$")) THEN "Social"
WHEN Medium="email" THEN "Email"
WHEN Medium="affiliate" THEN "Affiliates"
WHEN Medium="referral" THEN "Referral"
WHEN (REGEXP_MATCH(Medium,"^(cpc|ppc|paidsearch)$") AND Ad Distribution Network!="Content") THEN "Paid Search"
WHEN REGEXP_MATCH(Medium," ^(cpv|cpa|cpp|content-text)$") THEN "Other Advertising"
WHEN (REGEXP_MATCH(Medium,"^(display|cpm|banner)$") OR Ad Distribution Network="Content") THEN "Display" ELSE "(Other)"
END
Here is the logic source from Google's documentation: https://support.google.com/analytics/answer/3297892
Note: I have now seen the default channel grouping in GA4 reports– not sure if it is available in the Explorer and no idea if it is available in Data Studio, but I did see it (or a sufficiently equivalent) somewhere.
March 2022 Edit: I want to say I've seen the default channel groupings now in GA4. It might not have been exactly the same as before, but I think they are there in some capacity now.
Per a Google rep, the ballpark of Q2 2021 was floated for a broader feature set.
They also mentioned at least 18 months before the idea of Universal deprecation would be in the conversation. I imagine (hope) it will still work for a very long time (since Classic still works)...
They also mentioned a quality of life reporting update around Q1 2021. Really looking forward to that.
Looks like GA4 will have event editing right from within Google Analytics– so changing the name of the event name after the data has been sent (without needing to modify website code).
Important: Think of these like filters it does not change historic data already within GA– only new data coming in.
Where this is useful would be to establish consistency in naming. For example setting up rules like eblast
=> email
or Mailto Click
=> mailto_click
to preemptively be consistent.
The "Operator" field most likely has a RegEx option, so that could be used for things like lowercasing or replacing spaces with underscores too... Not 100% positive on those possibilities yet, though.
New demo account available: https://analytics.google.com/analytics/web/demoAccount
https://support.google.com/analytics/answer/6367342?linkId=110255766
Actual Demo Property: https://analytics.google.com/analytics/web/#/p213025502/reports/intelligenthome
User-scoped custom dimensions are now available in GA4: https://support.google.com/analytics/answer/10075209
Data filtering is now available as well, but is limited to exclude internal traffic and/or dev server traffic:
An API key will be needed to use the Measurement Protocol API. It is available under Admin > Data Streams > (Click the data stream you want) > Measurement Protocol API secrets
Cross-Domain tracking (formerly GA Linker) is set up under Admin > Data Streams > (Click the data stream you want) > More Tagging Settings > Configure your domains
Google announced today that Universal Analytics will no longer be available as of July 1, 2023.
-Until July 1, 2023, you can continue to use and collect new data in your Universal Analytics properties.
After July 1, 2023, you'll be able to access your previously processed data in your Universal Analytics property for at least six months. We know your data is important to you, and we strongly encourage you to export your historical reports during this time.
In the coming months, we'll provide a future date for when existing Universal Analytics properties will no longer be available. After this future date, you'll no longer be able to see your Universal Analytics reports in the Analytics interface or access your Universal Analytics data via the API.
https://support.google.com/analytics/answer/11583528
GA4 is nowhere close to being ready for this, but I'm guessing the GDPR lawsuits in the EU is what is hastening Google's decision.
Might be time to look into alternate platforms ahead of July 2023. What a nightmare this whole thing is.
Ideally it would be a free, cloud-based platform that is privacy compliant and allows for the advanced detections (events, custom dimensions) that Nebula has developed. The biggest thing here is we're trying to replace a literal industry standard, which is a very tall order.
As I research these, I'll update with some details and gut reactions.
https://matomo.org/ Pricing: https://matomo.org/pricing/
Self-hosted is free (does that include the WP plugin? I'm guessing not...?). Otherwise the cloud-based is $23/mo for 50k "hits" (guessing pageviews?).
I've started running the WP Plugin version of this on the Nebula documentation now. Seems okay so far. Nebula already has been using their spam domain list for years. "Forms" analytics are $179/yr so it seems like it's a "nickel and dime" situation here for anything beyond vanilla data. I'd be scared of switching several dozen clients over only to find an unexpected extra cost for a certain feature.
The reporting categories look similar to GA, so that is promising. Once data starts coming in I'll have a more clear understanding of how viable the reports are. The reports still don't have as much detail as GA– for example the Landing Page (or Entry Page, or whatever they call it) report does not have a conversion rate metric.
I do not want Nebula to be beholden to an expensive, proprietary platform like this as very few websites would feasibly be able to use it. It likely is the closest alternative to Google Analytics, but there are significant reasons against this platform including a steep learning curve. This can certainly be something that is considered for adding in addition to GA4, but not out of the box for Nebula.
https://plausible.io/ Pricing: https://plausible.io/#pricing Demo: https://plausible.io/plausible.io
$9/mo for up to 10k monthly pageviews. $20/mo for 100k pageviews.
Claims to not be blocked by ad-blockers... Doubtful. Their GA comparison page claims that GA has too many features, that is... exactly what I'm looking for as a data analyst. Maybe the oversimplification of Plausible is good for some tiny business somewhere, I need something complex. Complexity is a benefit here.
This is another "dashboard" style platform, but to its credit it does have some of the reports and even some contextual data, but still nowhere close to GA. I don't see event tracking anywhere, so I'm guessing the Goal Conversion report is all destination based? I may be wrong on that– tough to tell. One of the better contenders, but I still feel like I'd choose GA4 over this.
Nebula does already allow for MS Clarity integration, but I don't believe it has enough features to be the sole reporting platform.
https://clicky.com/ Demo: https://clicky.com/stats/?site_id=32020 Free tier (not sure the limitation), and $10/mo for up to 1,000,000 pageviews.
They're claiming Google Analytics doesn't have many of the features that it actually does (bot filtering, non-JS tracking, email alerts, video analytics, WP plugin), so that makes all of the claims on the site untrustworthy.
Does not appear to have conversion rate metrics in their content reports- such as Entrances. The demo does not have any event data so I can't tell the usefulness/organization.
https://heap.io/ Pricing: https://heap.io/pricing
Free up to 10k sessions/mo. $300/mo for ~16k sessions/mo. on the Growth A Tier... Damn that's a big jump.
Tough to tell from the screenshots if it is worthwhile, but for the price tag this would need to be literally lifechanging. I'm not going to recommend Nebula users buy into a $300/mo+ analytics platform.
https://simpleanalytics.com/ Pricing: https://simpleanalytics.com/#signup Demo: https://simpleanalytics.com/simpleanalytics.com
$19/mo for up to 100k pageviews. This looks like it's a pay per admin seat platform too, so only 1 at the lowest tier. Then $60/mo for 1,000,000 monthly pageviews and 10 users.
Event tracking is in beta apparently. The demo is even more underwhemling than Fathom. Seems to be missing any kind of contextual data and I don't see bounce rate or conversion rate metrics anywhere. It lives up to it's name, but kind of insulting to expect people to pay $60/mo for this... am I missing something?
https://usefathom.com/ Demo report here: https://app.usefathom.com/share/deasaicp/hilarious+platypus#/?filters=%5B%5D&range=last_7_days&site=114903 Pricing: https://usefathom.com/pricing
$14/mo for lowest tier of 100k monthly pageviews.
I'm significantly underwhelmed by this report. It's missing things like percent metrics, conversion goals, landing pages, event drilldowns... For $14/mo per client this is not an option at this point.
https://www.smartlook.com/ Pricing: https://www.smartlook.com/pricing/
Free for 1,500 sessions/mo. Jumps up to $40/mo for 5k sessions– this means many websites will need to pay the $95/mo tier to get a baseline acceptable amount of data (15k sessions/mo).
First impression it seems more like a Hotjar alternative than competing against Google Analytics itself. Can't really tell what the platform can do from the screenshots and I'd sooner stick with GA4 than give my personal information to a sales team's CRM to sit through 1 demo followed by daily spam email/phone calls thereafter.
https://posthog.com/ I think this is geared towards more product-analytics. Will probably delete this.
https://www.openwebanalytics.com/ https://github.com/Open-Web-Analytics/Open-Web-Analytics
Doesn't look all that great visually, but seems to be heavily inspired by Google Analytics. From the screenshots it's tough to tell exactly how deep the feature set goes, so I'm not counting this out, but I don't see things like conversion rate...
https://pirsch.io/ Demo: https://pirsch.pirsch.io/?domain=pirsch.io&interval=7d
$5/mo fo 10,000 pageviews, $10/mo for 100,000 pageviews.
Another simple dashboard type platform. I could have sworn I've already seen this exact style layout before with a different name...? Have I already looked at this one before or is there another one that looks super similar? Either way it is missing essential features.
https://www.visitor-analytics.io/en/ https://www.visitor-analytics.io/en/pricing/
Free plan is 400 visits per month (wow), $10/mo for 10,000 visits per month. Most sites are going to need the $32/mo tier.
https://66analytics.com/ https://66analytics.com/#pricing
You need to register for the demo. Looks like $80 to purchase the software. Will look into it more later.
Free tier is up to 100,000 "signals" per month and 1 user. There is a $10/mo tier and then jumps to a $70/mo tier.
Will look at features later.
https://fugu.lol/ Demo: https://app.fugu.lol/hqvc/projects/fugu/events/viewed-events?agg=d&date=30d
This seems to be massively missing necessary features to be considered useful for Nebula. They say so right on the homepage that it is meant for small indie teams and not businesses.
Free up to 3,000 pageviews/events per month. $12/mo up to 100,000 pageviews/events. Then jumps up to $29/mo for 1,000,000.
I literally cannot find a screenshot or anything of the reports. The features page just lists performance, page tracking, event tracking, and transparency. I have no idea what is available for reporting, but it doesn't sound like it is much.
https://count.ly/ https://count.ly/pricing
Basic version is free with no SLA or branding. The basic version does not appear to have access to any detailed reports and has limited User analytics (but doesn't say specifics). Pricing jumps to "Enterprise Edition", so likely far too expensive to consider those reports.
This is also product analytics, but I'll give it a fair shot later.
The site looks nice but I can't tell how the actual tool works without registering. Seems like there is no data retention without a paid account and despite the "pricing" page there are no prices which means it's expensive. No Data Studio connector without top-tier. No goal tracking without paid tier.
I'm lukewarm about any of these platforms (and that is being generous). None of them come even close to even the basic features of Google Analytics. Adobe Analytics is probably the closest, but there are many other reasons why that would not work for Nebula. I didn't see any ecommerce analytics reports in most of these tools– and the 1 or 2 that mentioned it I'm doubtful it's all that great.
What other platforms are there?
As we research alternatives, Nebula will begin shifting support to GA4 starting May 1, 2022 (in about a month and a half). Nebula v10 will be the last version that uses Universal Analytics 😢
Noting the most important GA reports in my opinion that we would either need to find in another platform or recreate within GA4 itself as closely as possible.
This is essential for key metrics and the visual timeline chart.
Probably the most useful report in all of GA. Default channel groupings with individual metrics including bounce rate (or engagement rate or whatever) and the conversion rate for various (or all combined) goals. These must be drilldowns so we can click into one channel to see additional details (referrals, search engines, social network, campaigns, etc.).
Pretty much the same report as acquisition channels, but includes campaign data. These must be drilldowns so that additional campaign details can be viewed. Campaign Name -> Source/Medium -> Content.
Breakdown of device categories with individual metrics including bounce rate and conversion rates.
Nice-to-have would be a bounce rate comparison, too.
Showing the most popular pages on the site. Nice to have the page value metric, too.
Showing the most popular sections on the site.' Each row in this report is a URL directory and includes all pages within that directory. Especially useful for organic acquisition pages like blog posts.
This is another essential report to determine which landing pages are contributing to conversions and also which have the highest bounce rates.
This is important to see pages being viewed before/after a specific page. Useful to see what the next pages viewed after the home page (or a particular landing page), for example.
Shows how often internal searches occur, what keywords are being searched for, as well as how often search refinements (subsequent searches) happen, how often users are leaving from internal SERP, and other useful metrics.
These are essential and must drilldown from Category -> Action -> Label. Ideally it would report on total and unique events.
These are obviously essential. From a setup standpoint, these should be able to be destination pages or events and be able to match full pages or partial/regex strings. This is actually one thing I think even Universal Analytics doesn't have great reports on. It's mostly useful as contextual metrics within other reports.
I suppose this isn't an essential report, but tracking errors is important. Secondary dimensions or drilldowns are important here to determine the location and other contextual information (like mobile vs desktop, browser, OS, etc.).
Obviously these are useful for a range of product/sales reporting.
Not essential, but nice to heave real-world data here.
In the transition period, this is a useful setting, too:
Collect Universal Analytics events
Data Streams (under Property admin) > Click right arrow on the data stream > More Tattings Settings > Collect Universal Analytics events
As of this moment (not yet committed), there are no more JavaScript instances of Universal Analytics. Everything in JS (and most PHP) has been updated to GA4.
The remaining steps include the PHP Measurement Protocol for some supplemental data and still need a massive amount of testing.
At this point, Nebula is fully functioning in GA4 now including the Measurement Protocol for usage and server-side data. Need to do a ton of testing, and although that was a major lift, now the hard part begins of trying to find how to actually report on that data in the platform itself.
Why can't we just have default reports like before? I'd dare say that I would actually like GA4 if we could just get the default reports from the previous platform...
Is there a way to annotate important dates in GA4? I don't see one...
Closing this as GA4 has now been implemented in Nebula officially, but there is still a long, confusing road ahead on the reporting side. Seems like every day I'm finding new, frustrating limitations with GA4... Definitely stifling motivation.
I'm hoping the community continues to push hard for basic features. Even searching by Measurement ID doesn't work. It's such a shame that every other aspect of design and development are getting such cool new features, and in analytics it feels like features are only being taken away. GA4 could have been so good, too.
...and I say all this as a huge fan of Google Analytics.
If anyone from the Google Analytics team ever finds this, please reach out! I would love to have an earnest conversation about the platform!!
Referral exclusion, session timeout, internal IP, and other settings are available here:
This is inside of the Data Streams property section.
To create destination page goals in GA4: Configure > Events
Create an event based on the page_view with the criteria that matches the desired destination (or any other details).
This is an example for a "Thank You" page:
Related/Dependent of #1500 and this makes #1962 redundant.
Google Analytics now (or will very soon) defaults to "Google Analytics 4" as the default property type (formerly "Apps + Web"). This type requires the gtag property, but Nebula currently only works with Universal Analytics.
As #1500 notes, we need to make sure that the Tasks API can be utilized to transition. There is (what still feels like a hack) a way to do this with Gtag, but I've been really hoping that a more direct approach would be natively possible. Google's Issue Tracker Tasks API inquiry: https://issuetracker.google.com/issues/119244062
Nebula's event tracking currently also triggers a GTM event hook– I wonder if that is still necessary with the Gtag library?
One additional note is that via Enhanced Measurement (noted in #1962) will eliminate the need for the Autotrack.js library (which does not support gtag anyway). That being said, we need to make sure than any of the Nebula settings and hooks that override aspects of Autotrack can do the same thing with Enhanced Measurement in Google Analytics itself.
Documentation
Implementation
So here is a checklist of things that need to be done to support Google Analytics 4 in Nebula:
Implement the Tasks API (#1500 also)enablejsapi
query parameter to all Youtube videos every timeUpdate event tracking to match recommended names and propertiesthisEvent
variables in Nebula event listeners to use better properties (now they we aren't locked into category, action, and label).ga('set', 'dimension1', 'whatever');
so those can be stored in thenebula
object and then passed via the next event (page_view or whatever).?debug
query string appears, enable GA4 debug mode as described in #1684Note: In GA4, IP addresses are automatically anonymized.