Content grouping
Content grouping is a custom dimension that classifies pages into editorial groups — Blog, Product, Docs — so you can report by content type instead of one URL at a time. In GA4 it is populated by sending a content_group parameter on the page_view event. Because it is event-scoped and only as good as the values you send, untagged pages fall into '(not set)' and inconsistent naming fragments the report.
What this means
A content group is an editorial label for a set of pages — for example tagging every /blog/* URL as 'Blog' and every /product/* URL as 'Product'. It lets a report answer 'how does the blog perform vs the docs?' without summing individual URLs.
In GA4 you populate it by sending a content_group parameter with each page_view. The value you send becomes the dimension; GA4 does not infer groups for you.
Scope and limits
Content grouping is event-scoped: it applies to the page_view that carried it. Pages that do not send content_group show '(not set)'. Inconsistent values ('blog' vs 'Blog' vs 'Articles') split one group across several rows, so a single naming convention is essential. Historical pages cannot be re-grouped retroactively without reprocessing.
- Populated by the content_group page_view parameter
- Untagged pages => (not set)
- Inconsistent naming fragments the report
How it appears in analytics and logs
A content group value is whatever your tag sent as content_group. A large '(not set)' share means pages are missing the parameter, not that a group named '(not set)' exists.
Diagnostic use case
Use content grouping to analyse performance by content type rather than per-URL, ensuring every page sends a consistent content_group value.
What WebmasterID can help detect
WebmasterID can group pages by path or metadata so you read traffic by content type, keeping the mapping first-party and consistent across the site.
Common mistakes
- Forgetting to send content_group on some templates.
- Using inconsistent casing/labels that split one group.
- Expecting GA4 to infer content groups automatically.
Privacy and accuracy notes
Content grouping describes the page, not the visitor. WebmasterID maps pages to groups from page metadata, with no personal data involved.
Related pages
- Page path dimension
The page path dimension is the path portion of a viewed URL — /blog/post — excluding the hostname and, by configuration, the query string. GA4 derives it from the page_location of each page_view. It is hit-scoped, so it counts every view of a page, and the most common pitfall is query strings (utm_*, session IDs) fragmenting one logical page into many distinct paths.
- Landing page dimension
The landing page dimension records the first page a visitor saw in a session — the entry point. GA4 derives it from the page_path (and optional query string) of the session's first page_view event. It is a session-scoped dimension, so pairing it with hit-scoped metrics, or ignoring how query parameters split the same page, are the usual ways it misleads.
- The page_view event: the base of web analytics
page_view is the event fired when a page loads. It is the base of almost every web-analytics model: sessions, pageviews, and most reports build on it. In classic sites the tracker fires it automatically on load; in single-page apps you fire it on each route change. Its properties (path, title, referrer) drive most downstream reports.
- Event Explorer
See the content_group parameter on page_view events.
Sources and verification notes
Last reviewed 2026-06-24. Facts are checked against primary/official sources where available; uncertain specifics are marked “Data not yet verified” rather than guessed.