# Google Analytics 4 - Simple Learning # **Part 0: The first basic thing** GA4 tracks both app and web. UA Data structure is based on a hit, GA4 Data structure is based on an event. GA UA |Hittime| Page| Clientid|Pageviews|Page Type|Event|Channel| | -------- | -------- | -------- | -------- | -------- | -------- | -------- | | 8AM 01:00|Home Page|Ruby| 1|PAGE|-|Organic Search| | 8AM 01:10|Community|Ruby|1|PAGE|-|Organic Search| | 8AM 01:30|Community|Ruby|0|EVENT|Click to post|Organic Search| --> GA UA is hard to define custom event but easier to understand GA4 |Timestamp|Event|Page|Clientid|Channel| | -------- | -------- | -------- | -------- | -------- | | 8AM 01:00|Pageviews|Home Page|Ruby|Organic Search| | 8AM 01:10|Pageviews|Community|Ruby|-| | 8AM 01:30|Click to post|Community|Ruby|-| --> GA4 is easier to define custom event but hard to understand **Part 1: METRICS** UA Data structure is based on a hit, GA4 Data structure is based on an event. Hence, metric values don't match. ![image](https://hackmd.io/_uploads/H15KevaHT.png) | Metrics | Definition | GA UA | GA4 | | -------- | -------- | -------- | -------- | |Total Users|Dictinct active cookie|Available|Available| | New Users |Distinct new cookie|Available|Available| |Sessions|The number of sessions that began on your site or app (event triggered: session_start). If a campaign source change mid session --> GA UA creates a new session while GA4 does not. If a session spans across 2 days --> GA UA creates new session while GA4 doesn't.|Available|Available| |Session Timeout||on default 30 minutes -> MINIMUM: 1 minute, MAXIMUM: 4 hours|on default 30 minutes -> MINIMUM: 5 minutes, MAXIMUM: 7 hours and 55 minutes| |Engaged Sessions|The number of sessions that lasted 10 seconds or longer, or had 1 or more conversion events or 2 or more page or screen views.|Not available, can custom|Available| |Engagement count|Count number of events|Available|Available| | Avg. Engagement Time|The average length of time that the website was in focus in the browser|Not available, can custom|Available. GA4 sends a ping with a time stamp when the browser/tab loses focus. Anytime the user was on another tab is not calculated in these calculations.| |Engagement Rate|The engagement rate is the percentage of engaged sessions on your website or mobile app.|Not available, can custom|Available| | Bounce Rate |Percentage of sessions that users bounced away after initial reading.|Available. **The percentage of visitors who leave a website after viewing only one page.**|Available. **The bounce rate is the opposite of the engagement rate**. The bounce rate is the percentage of sessions that were not engaged.| | Avg. Session Duration|Average time users spend on a particular website, app, or platform during a single session|Available|Available| |Pageviews|Total number of pages viewed. Repeated views of a single page are counted.|Available|Available| |Avg. Time On Page|The average amount of time each user spends on any one page on your website|Available| Not available, **can not custom**| **Part 2: DIMENSION** |Dimension| Definition | GA UA | GA4 | | -------- | -------- | -------- | -------- | |Channel Grouping| Include Organic Search, Direct, Social, Referrals,... |Available|Available. But interface inaccurate at the moment.| |Source|Include google, facebook, instagram, youtube, ...|Available|Available. But interface inaccurate at the moment.| |Medium|Include cpc, cpm, organic, ...|Available|Available. But interface inaccurate at the moment.| |Campaign|From UTM Source|Available|Available. But interface inaccurate at the moment.| |Adcontent|From UTM Content|Available|Available. But interface inaccurate at the moment.| |Keyword|From UTM Term|Available|Available. But interface inaccurate at the moment.| |Categories|Category name from pages|Available|Available| |Pages|All pages|Available|Available| |Demoraphics|Include City, Age, Gender|Available|Available| |Events|Include Event name, Event category, Event lable, Event action|Available|Available| |Cohort|Include Weekly Retention, Monthly Retention|Available|Available| **Part 3: Read GA4 report** Commercial Team: Utilize GA4 for all metrics and dimensions, with the exception of "average time on page" and the "channel grouping report," for which we rely on GA Universal Analytics. Google Analytics does not currently support tracking certain backend metrics, such as the number of affiliate orders, sign-ups, or articles published, along with precise categorization of these metrics. We will provide further updates on these capabilities once they are implemented upon deployment. For now, please use Hawkeye. **Part 4: GA4 in Hello Health** Google Analytics 4 (GA4) currently presents limitations due to a number of bugs we've encountered, making it less practical for our current needs. One critical metric, the average time on page, which is essential for client communication, is notably absent. Our dashboards in Hawkeye consistently rely on GA4 data, except for two crucial elements: average time on page and channel grouping. In these cases, we resort to using Google Analytics directly. In summary, it's advisable to use Google Analytics directly for swiftly accessing key metrics, demographic and interest data, and ensuring precise category information for clients, as GA4 may not provide the desired accuracy at this time. **Part 5: Uses Cases** Case 1: Demographics of Parenting Community. (https://hellodoktor.com/community/keibubapaan/) Step 1: Go to GA4 > Business Objective > Raise brand awareness > Demographic details Step 2: Go to filter > Add new comparison > Select dimension > Page contain '/community/keibubapaan/' Note: the numbers will never cover 100% because, we need to understand how google can share these information for us, it only came from users who allow users to read their infor, which who did not allow google won't be able to share. Case 2: Analyse /keibubapaan/ Date range: 8 Nov 2023 --> 5 Dec 2023 Views: 535K Users: 266K View per user: 2.01 Avg. Time on page: 03:00 Avg. Engagement time: 15s (not recommend) Avg. Session Duration: 01:45 Bounce rate%: 88.92% Interaction click: 11k Ad click: 1k GA4 Step 1: Go to GA4 > Report > Examine user behaviour > Pages and Screens GA UA Step 1: Go to GA UA > Behaviour > Site Content > All Pages How to know these numbers are good or not, do we have a benchmark Views: 6.9M Users: 2.1M View per user: 3.16 Avg. Time on page: 02:26 Avg. Engagement time: 25s (not recommend) Avg. Session Duration: 02:27 Bounce rate%: 83.71% Interaction click: 234k Ad click: 12k Overall Insights: . Parenting category has view per user 2.01 less than all site 3.16 so user tended to read pages less than . parenting category has avg time on page 3 m higher than all site so actually user enjoy reading articles longer 24% note: usually, when u analyse avg time on page, do not analyse avg session duration because it will cause a confusion with client while session duration is less than avg time on page. internally we can understand session duration is also counted for user that bounced away, but avg time on page excluded them. Simple Highlight Insights: . Most enjoy article: we take the top 5 has highest views and avg time on page . Most engaged articles: we take the top 5 has highest interaction click or ad click or read multiple articles Advanced Highlight Insights: . After read /keibubapaan/, how many percentage they continue to read /community/? views /keibubapaan/: 535k continue to view /community/: 32k => rate = 6% Case 3: Interactions with /keibubapaan/ GA4 Step 1: Go to Events Filter /keibubapaan/ Choose event_category contains 'Together', 'Header Banner', 'Chatbot' Step 2: You can simply calculate interaction rate by devide event and pageviews Case 4: Channel Acquisition to Yahoo Search Fully use GA UA Step 1: Go to Acquisition > All Traffic > Source/Medium Open Secondary dimension "Landing Page", go to advance and choose source/medium containing 'yahoo' There is no way to filter source/medium with age, gender.