Getting started

GA4 Property vs Data Stream: What Is the Difference?

Updated 2026-09-043 min read

Short answer

A property is the container your reports are built from. A data stream is a single source — one iOS app, one Android app, one website — sending data into that property. One property can hold several streams.

Almost every confusing number in GA4 becomes clear once you know which of these two levels you are looking at. They sound interchangeable and are not.

Property: where reporting happens

A property is the reporting container. Retention, funnels, user counts and every standard report are calculated at this level. When someone says "open Analytics and look at the numbers", they mean a property.

Data stream: one source feeding it

A data stream is a single origin of data. An iOS app is one stream. Its Android counterpart is another. A marketing website is a third. Each carries its own identifier — a bundle ID, a package name, a domain.

One product, three streams
Property: "MotionFit"
├─ Data stream: iOS app (com.example.motionfit)
├─ Data stream: Android app (com.example.motionfit)
└─ Data stream: website (example.com)

Reports on the property combine all three.

Note: That last line is the part that surprises people. A property-level user count is not "users of the iOS app" — it is users across every stream in the property.

Why the distinction matters

QuestionLevel that answers it
How many people used our product?Property
How many people used the iOS app?Data stream
Is the Android release performing worse?Data stream comparison
What is our overall retention?Property

Reading a property-level number as if it described one app is the single most common misreading of GA4, and it usually shows up as numbers that seem too high for the platform you had in mind.

Deduplication across streams

Within one property, someone who uses both your iOS app and your website may be recognised as one person or two, depending on how identity is resolved. Across separate properties, no such reconciliation happens at all: the same human counted in two properties is simply two counts, and adding those totals together overstates your audience.

Careful: Never sum user counts from different properties and present the result as unique users. The arithmetic is valid; the meaning is not.

How Appnaly uses both levels

Appnaly discovers the GA4 properties your Google account can read, then lists the data streams inside them so you can choose which apps to watch. That is why your app list in Appnaly looks like a list of streams rather than a list of properties — a stream is the closest thing GA4 has to "one app".

Where Appnaly totals figures across several connected properties, it says so and states that users are not deduplicated between them. That is the honest description of what the underlying data supports, and it is worth remembering whenever a combined number looks larger than you expected.

Related reading