Question from Reddit user:
Hi all,
Pulling my hair out here.
I’ve Googled this, and I’m only coming up with ways to export a traffic report that shows the total traffic in a selected date range. That’s fine, however, I’m being asked to also supply a month by month breakdown in the one spreadsheet for traffic.
eg.
Jan: 300
Feb: 450
Mar: 280
etc.
Does GA4 just not offer the feature?I’ve figured out how to create a filter in Pages and Screens>Add filter>Page path and screen class for reporting on a single URL, but not how to have the report itemising each month’s traffic (or other metrics).
Hoping for a solution, so we can see some sort of repeat trend in our yearly traffic!
Answer from Nabil:
The short answer is:
You are correct that the standard GA4 Pages and screens report won’t give you a clean month-by-month breakdown for a single filtered URL ready for export; it aggregates the whole date range you select.
The simple solution within the GA4 interface is to use the Free Form Exploration report, placing Month as the Row dimension and setting a Filter for your specific URL’s Page path and screen class.
However, the truly robust and scalable solution that exports directly to a spreadsheet format you need is to use the Google Analytics Data API to pull the data and the Looker Studio API to visualize it and manage the final export, as this guarantees a clean, automated monthly breakdown for any metric.
The long answer is:
The reason you are pulling your hair out is that the standard GA4 reports are built for high-level summaries and trend graphs, not detailed spreadsheet exports segmented by both a page and a time period.
The Pages and screens report you are using is a summary table, which is why it only shows the total.
To get the month-by-month table you require within the GA4 interface, you need to navigate to Explore and create a new Free Form Exploration.
In the Exploration setup, you must set the Rows dimension to Month and the Columns to your desired metric like Active users
or Sessions
.
Most importantly, you need to set a Filter where the Page path and screen class exactly matches the specific single URL you are reporting on.
This will produce a table inside the Exploration report with a row for each month and the corresponding traffic, which you can then export as a CSV.
However, for a solution that avoids manual Exploration setup every time and provides the clean, integrated spreadsheet that your stakeholders are asking for, the best path is to use the Google Analytics Data API.
You can use a Google Sheets add-on or a script to connect to the API and configure a single query that requests the month
dimension, the pagePath
dimension (filtered to your single URL), and the sessions
or activeUsers
metric.
This pulls a table directly into Google Sheets formatted exactly as requested.
This is powerful on its own, but an even better solution is to integrate this data into Looker Studio via its native connector or the Looker Studio API.
In Looker Studio, you create a time-series table where the breakdown dimension is set to Month, and the data source is your GA4 property, filtered by page path.
This Looker Studio report can then be scheduled for automated delivery to your stakeholders, providing an always-up-to-date monthly breakdown without you having to touch the GA4 interface at all.
The underlying data quality can be further ensured by utilizing Google Tag Manager and a server-side tagging environment like Stape or Google Cloud Platform to ensure clean, consistent data collection with minimal sampling issues, making your API and Looker Studio reports highly reliable.