How do you create a report based on Event values?
GA4 seems very unintuitive.
We want to get what I thought would be some simple data, we have an event we’re recording that’s passed a value.
We simply want a report, given a data range, of those parameter values and their counts.
Basically exactly what we see when we go to Engagement->Events->click on the specific Event->”Events int he last 30 minutes” box, but, with an actual date range, not realtime/30 minutes. What it shows in that box is exactly what we’re looking for.
The short answer is:
The most robust and cost-effective solution for creating a custom, date-ranged report of Google Analytics 4 event parameter values and their counts, as an alternative to the real-time “Events in the last 30 minutes” view, is to leverage the Google Analytics Data API (GA4).
While a basic exploration in the GA4 UI might suffice, the API provides programmatic access to define specific metrics like eventCount and dimensions like your custom event parameter name, giving you complete control over the date range and filtering logic.
This approach allows you to build a dedicated reporting application or integrate the data into an existing business intelligence tool like Looker Studio or BigQuery using their respective APIs, providing the exact, historical view you require without the limitations of the GA4 real-time interface.
The long answer is:
The challenge you’re encountering is common, as the standard Google Analytics 4 (GA4) interface, while powerful, often lacks the flexibility for highly specific, long-range event parameter reporting that was easily achievable in Universal Analytics (UA) custom reports – a common source of frustration.
The view you like, “Events in the last 30 minutes,” uses a different data stream optimized for real-time latency and is not intended for historical analysis, which is why it doesn’t support an extended date range.
To get the specific historical data you need – the parameter values and their counts over a custom date range – the most technical, comprehensive, and scalable solution is to utilize the Google Analytics Data API (GA4).
This API is designed for programmatically fetching GA4 report data, allowing you to bypass the user interface limitations.
You would construct a request to the Google Analytics Data API (GA4) specifying your desired dateRanges, set the dimension to the name of your custom event parameter (which must be properly registered as a custom dimension in the GA4 UI), and set the metric to eventCount or a similar count metric.
This direct API call pulls the aggregated data matching your criteria, effectively replicating the structure of the real-time card but for your chosen historical period.
This method is highly cost-effective because it uses a free Google service tier and only requires development effort, eliminating the need for expensive third-party reporting tools or a dedicated server-side tracking setup using Google Tag Manager and Stape, as the data is already collected client-side and available within GA4.
Furthermore, once you establish this programmatic connection using the Google Analytics Data API (GA4), you can easily pipe the resulting dataset into a more capable reporting environment.
For instance, you could use the Looker Studio API to automatically update a dashboard or use the BigQuery API to import the raw event data into BigQuery for highly complex, un-sampled analysis, which is an excellent best-practice for dealing with high-volume or sensitive GA4 data.
This establishes a robust data foundation for ongoing reporting and analysis.