The event model is the foundation of every report, exploration and custom definition you will ever build.
In GA4 an event is a named record of something happening: page_view, scroll, purchase, sign_up. Each event carries parameters, key-value pairs that describe it: page_location, value, currency, method. Some parameters are added automatically to every event (page_title, language, screen_resolution, ga_session_id); others you send yourself.
There are four categories of events:
- Automatically collected: sent by the tag with no configuration, e.g.
first_visit,session_start,user_engagement. - Enhanced measurement: optional browser interactions you toggle on in the web stream, e.g.
scroll,click(outbound),file_download,video_start. - Recommended: events Google names and documents, with expected parameters, such as
login,sign_up,purchaseandgenerate_lead. Using these names unlocks prebuilt reports and features. - Custom: anything else you name yourself, like
newsletter_toggle.
Limits to remember: event names are up to 40 characters, case-sensitive and should be snake_case; an event can carry up to 25 custom parameters; a parameter value is up to 100 characters. Exceeding limits silently drops the extra data.
A parameter only shows up in reports if GA4 knows about it: the standard parameters are built in, while your own parameters must be registered as custom dimensions or custom metrics (covered later). Raw parameters are always visible in DebugView and BigQuery, which is why those two are your debugging friends.
Event-level data is what explorations work with; standard reports aggregate it into pre-computed tables.
Remember
- Event = name + parameters; parameters describe the event
- Automatic, enhanced measurement, recommended, custom: in that order of effort
- Custom parameters need a custom dimension/metric to appear in reports