Event Reference (v1) / Page Events
Page Section Impression / page_section_impression
Measures when a section of a page is visible for a certain amount of time. This event can be used to identify which sections are actually within a users viewport for the time required to read/engage with the given content.
These events when implemented correctly are more contextually meaningful than something like a page_scroll event.
Measuring the visibility of a section of a page can be a bit tricky. It requires that the sections follow predictable (or at least consistent) patterns ideally using semantic HTML markup in order to be accurately measured. You may need the help of a web developer to add footprints into the HTML such as data-section attributes or other similar identifiers.
A simple implementation approach can be using a Google Tag Manager visibility trigger configured to execute for any <h2> elements that are 100% visible in the viewport for X seconds and using the <h2> element text (captured via an auto-event variable) for the section_name property. Though not perfect, it can be a good starting point for measuring section impressions if you use proper heading heirarchy and scope your selectors to defined semantic content elements like <section>, <article>, etc...
-
- Name
- Event Name Required
- Value
- event: page_section_impression
Section/UI Properites
These properties can be applied to any event to provide more contextual information about "where" an interaction occured within a given page.
-
- Name
- Section Name Optional
- Type
- section_name: string
- Description
More specific than
ui_location, this property can be used to describe the name of a section or container that the event occurred within.- E.g.
recent posts
-
- Name
- UI Location Optional
- Type
- ui_location: string
- Description
The name of the section or container that the event occurred within. This could be a sidebar, header, footer, or any other named/defined section of a page.
- E.g.
sidebar
Content Properties
These properties are mostly applicable to page_* or content_* events. However, they can be used in other appropriate situations.
-
- Name
- Publish Year Optional
- Type
- publish_year: string
- Description
The year the content was published. YYYY format.
- E.g.
2016
-
- Name
- Publish Month Optional
- Type
- publish_month: string
- Description
The month the content was published. MM format.
- E.g.
05
-
- Name
- Publish Day Optional
- Type
- publish_day: string
- Description
The day the content was published. DD format.
- E.g.
04
-
- Name
- Content Name Optional
- Type
- content_name: string
- Description
The name of the content. Ideally fed from a CMS - this is not meant to be the
<title>of the page, but the name of the content itself which is often more useful for analysis.- E.g.
The Ultimate Guide to Google Analytics 4
-
- Name
- Content Author Optional
- Type
- content_author: string
- Description
The author of the content.
- E.g.
Derek Cavaliero
-
- Name
- Content Group Optional
- Type
- content_group: string
- Description
Used for aggregate analysis of content that is of a common cohort. For example, all blog posts could be grouped under
blog.- E.g.
blog
-
- Name
- Content Type Optional
- Type
- content_type: string
- Description
Similar to
content_group, but more specific. For example, a blog post could have acontent_groupofblogand acontent_typeofguide.- E.g.
guide
-
- Name
- Content Word Count Optional
- Type
- content_word_count: integer
- Description
The approximate number of words that make up the
<main>or body of the page. This is generally provided by a CMS that has direct access to the underlying content structure to process and expose the word count programatically.- E.g.
500