~/TechPurAI
~/tutorials/google-analytics-mastery/setting-up-a-ga4-property
beginner·part 2 of 22·3 min read

Setting up a GA4 property and data streams

Updated Aug 21, 2026Google Analytics

Part 1 covered why GA4 exists. This part is the actual setup — the real hierarchy every GA4 implementation is built from, and Bright Leaf Coffee's first property, created from scratch.

The real hierarchy: Account, Property, Data Stream

text
Google Analytics Account: Bright Leaf Coffee
  Property: Bright Leaf Coffee — Web & App
    Data Stream: brightleafcoffee.com (Web)
    Data Stream: Bright Leaf Coffee iOS App (if one existed)

An Account is the top-level container, typically one per business. A Property sits beneath it, representing a specific business unit or product being measured — most businesses need only one. A Data Stream is the actual source of data flowing into that property — a website, an iOS app, an Android app — and a single GA4 property can combine multiple streams into one unified view, a genuinely different structure from Universal Analytics, which required separate, disconnected properties for web and app.

Creating the account and property

text
Account name: Bright Leaf Coffee
Property name: Bright Leaf Coffee — Web & App
Reporting time zone: match the business's actual primary time zone
Currency: USD (matters directly for e-commerce revenue reporting, part 9)

Time zone and currency aren't cosmetic settings — every report's date boundaries and every revenue figure GA4 displays are calculated using these values, and getting either wrong at setup produces subtly incorrect data that's easy to miss until a report looks inexplicably off later.

Adding the web data stream

text
Stream type: Web
Website URL: https://brightleafcoffee.com
Stream name: Bright Leaf Coffee — Main Site

Creating this stream generates a unique Measurement ID (in the form G-XXXXXXXXXX) — the specific identifier every tracking snippet installed in part 4 needs to actually send data to this exact property. This ID is the direct connection between the website's code and this specific GA4 property; a mismatched or missing ID is one of the most common reasons a "correctly installed" tracking snippet reports no data at all.

Enhanced measurement: on by default, worth understanding

text
Enhanced measurement (enabled by default):
  ✓ Page views
  ✓ Scrolls
  ✓ Outbound clicks
  ✓ Site search
  ✓ Video engagement
  ✓ File downloads

GA4 automatically tracks these common interactions with zero custom code required, a genuine improvement over Universal Analytics' need for manual event tracking on most of these — worth knowing they're on by default rather than assuming every single event needs custom implementation, which part 3's event model covers in more depth.

A real second property structure for GreenDesk

text
Account: GreenDesk
  Property: GreenDesk — Web & App
    Data Stream: greendesk.io (Web)

Even though GreenDesk currently has no app, structuring the property as "Web & App" from the start — rather than naming it narrowly as "GreenDesk Website" — avoids a real, if minor, future headache: adding an app data stream later works cleanly regardless of the property's original name, but a property named too narrowly can create confusion once it's tracking more than what its name implies.

Data retention settings, worth reviewing immediately

text
Event data retention: 14 months (the maximum available, vs. the 2-month default)

This setting, easy to miss during initial setup, controls how long GA4 retains user-level and event-level data for certain exploration reports (part 12) — the default is genuinely short, and extending it to the maximum immediately at setup avoids losing the ability to look back further than a couple of months later, once that data has already been silently discarded.

Common mistake

Leaving data retention at its short default setting, only discovering months later that historical data needed for a year-over-year comparison was never actually retained. This is a real, one-way loss — retention settings only apply going forward, so setting this correctly at the very start of part 2's setup, before any real data has accumulated, is the only way to avoid it entirely.

Next: the GA4 data model in full — events and parameters, and what "everything is an event" actually means in practice.

VK

Vijay Kumar

Founder of TechPurAI — writing hands-on tutorials and honest tool breakdowns.

LinkedIn ↗
← previous1. What GA4 actually measures, and how it differs from Universal Analyticsnext →3. The GA4 data model: events, parameters, and why everything is an event