In this page you will find the answers to the main reports of alleged errors from GA4 Magic Reports users.
I say “alleged” because these are problems you can run into while using the add-on but which don’t actually depend on the add-on itself.
Let’s see what they are and how you can quickly fix them!
Can’t load the Accounts and Properties or lists are incomplete
Creating a new report you may see in the sidebar the lists of your GA4 Accounts and Properties that don’t load correctly or that don’t contain all your GA4 customers.
How to solve
Very often problems with Google Sheets add-ons (as well as in the official one of Universal Analytics) are related to the use of multiple Google accounts in the same browser.
So, try logging into your browser with a single account.
Output format with incorrect commas and dots
That kind of problem (as well as in the official one of Universal Analytics) shouldn’t be with the add-on but with the Google Sheets settings that misinterpreting the dot and comma.
How to solve
Try changing the locale settings in the menu File –> Settings and then run the report again.
User does not have sufficient permissions for this property
One of the most frequent errors that is obtained by those who try to query Google Ads data is “User does not have sufficient permissions for this property“:
That is an authentication error returned by Google. It does not depend on the add-on, there are no authentication systems inside the add-on.
How to solve
Very often problems with Google Sheets add-ons (as well as in the official one of Universal Analytics) are related to the use of multiple Google accounts in the same browser.
So, try logging into your browser with a single account.
Invalid argument: timeZone. Should be of type: String
This error depends on the Google Sheets application. It may happen, for some reason that is not always understandable, it fails to recover the set time zone value. Luckily the solution is very simple.
How to solve
You can fix it by changing time zone in Google Sheets. To change the timezone on a Google Sheet:
- Click File in Google Sheets menu;
- Click Spreadsheet Settings item.
- Choose a time zone (any time zone should work).
Note: Google does not list the same timezone options for each of their applications, so you may have to choose a different city than yours that has the same timezone.
The request’s dimensions & metrics are incompatible
This issue doesn’t depend on the add-on but on the correct use of dimensions and metrics in GA4.
How to solve
You can check the compatibility between GA4 dimensions and metrics in the following official online tool: https://ga-dev-tools.google/ga4/dimensions-metrics-explorer/
You can select them by clicking the checkbox next to their name. Incompatible dimensions & metrics will be grayed out.
Report result is not the same as I see in the GA4 UI
The result that the add-on shows is exactly what Google API provides.
How to solve
Try to check if you also get the same result with this tool: https://ga-dev-tools.google/ga4/query-explorer/
If so it means you are querying different dimensions and metrics than what you are expecting or seeing in GA4 UI.
I don’t get row with values with 0
It can happen even if you set the “include empty rows” option to TRUE.
How to solve
There is currently no solution, the result that the add-on shows is exactly what Google API provides. The alternative is to use Google Sheets formulas to fill in the gaps in reports where data is not provided.
Note: Google API right now is in alpha and beta version, I expect that with the next updates they will be improved, for example with rows to 0 as it was on Universal and as you need.
failed with error: Invalid startDate
Value of startDate must be YYYY-MM-DD, NdaysAgo, yesterday or today. You can however simulate other custom dates such as for example “firstDayLastMonth” with Google Sheets formulas.
How to solve
Example, to get the date of the first day of last month you can enter the following Google Sheets formula in the startDate cell:
=EOMONTH(TODAY(),-2)+1
The same goes for other custom dates that are not obtainable through the expected values from the documentation: https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/DateRange?hl=en
Schedule don’t work
In the past there was a bug that didn’t allow scheduling on reports in different Google Spreadsheets. This bug was fixed on June 10, 2023.
However, there may be other reasons why scheduling doesn’t work.
1) Are you using different Google Accounts in the same browser? This can lead to Google add-on conflicts.
How to solve
Very often problems with Google Sheets add-ons (as well as in the official one of Universal Analytics) are related to the use of multiple Google accounts in the same browser.
So, try logging into your browser with a single account.
2) The save button in the schedule modal stays freezed:
How to solve
Try logging into your browser with a single account.
3) Are running too many reports?
Google applications have limitations and one of them is the six-minute limit on execution time.
So, it is likely that the large number of reports in a single sheet could create problems, it did even with the official Google add-on based on Universal Analytics.
How to solve
Try to divide the reports into multiple Google Sheets.
I want use segments in the tool, is it possible?
Creating segments inside the report query is currently not supported in the Google Analytics Data API. It doesn’t depend on the add-on. Anyway, there is a workaround.
How to solve
Try to follow the following steps:
- Create segment in the GA4 UI
- Turn it into Audience
- Use AudienceName as a dimension in GA4 Magic Reports
Conclusion
Did you get an error that is not in this list? Leave me a comment and let’s figure out how to solve it together! 🙂
If I re-run a report and it is empty it fails to overwrite the original report so it looks like there is a result when in fact there isn’t.
Hi Kevan,
the report sheets are emptied at each run and filled with the new result.
So, if the data is not written, it means that the report is not executed.
Check if you get errors in the modal.
I’m using macbook Pro, with chrome browser and when I hit run report it just keep loading, my teammate use Dell, chrome and it works fine, how to solve that?
Hi Henry,
are you using of multiple Google accounts in the same browser?
Very often problems with Google Sheets add-ons (as well as in the official one of Universal Analytics) are related to the use of multiple Google accounts in the same browser.
So, try logging into your browser with a single account.
Let me know!
oh that’s correct, I did use multiple account, however I tried incognito mode but the add on still does not work, should I login to a normal browser but just with 1 account only?
Hi Michele,
First of, thanks for all your work. Very appreciated!
My issue is, I run reports every day, fetching Google Ads AdsCost from 1st day of the month through Yesterday. I scheduled it to run between 5AM & 6AM.
Most of the reporting is fine, but some reports instead of fetching the Yesterday AdCost, it fetch the day before. So when looking at my spending, I don’t have the right data for the date requested.
Hi Alex,
this kind of problem doesn’t depend on the add-on. It shows what Google APIs provide.
One cause of what you write could be that between 5AM & 6AM the data in GA4 has not yet been updated, so it is still from the previous day.
Hi, Michele!
I have a question when it comes to creating a report which includes statistic for each month.
So, I want to create a report which has dimensions (page path and screen class) and metrics (total users, views and views per user) What else do I need to include to get a monthly cohort? and how do I do it? Lets say I want this statistic from January to June for these dimensions and metrics.
I have tried different approached with cohorts with nth month and so fort, but often I get this message: API call to analyticsdata.properties.runReport failed with error: Cohort dimensions can only be used in requests with a CohortSpec.
I’m quite lost at this point.
Thank you for your help.
Hi Elin,
CohortSpec was recently introduced in the GA4 API (API are in beta and constantly evolving), it is not yet implemented in the add-on. It will be one of the next releases 🙂
He configurado el reporte y al darle a Run Report, se abre el modal con un spinner y no pasa de ahi. Que podria estar sucediendo?
Hi hector,
very often problems with Google Sheets add-ons are related to the use of multiple Google accounts in the same browser.
So, try logging into your browser with a single account.
Let me know!
It’s right. I did it in a new window, and it worked correctly. Thank you so much
Perfect, thanks for the feedback!
Hey Michele,
Thank you for this wonderful blog post. I have a question. I need the GA4 reports and then color-code the data according to benchmarks. But every time I run the reports, all my formatting is going away. Is there a way to fix this?
HI Vaishali,
the add-on cleans and recreates the report in the Sheet at each run.
To maintain the customizations on the Sheet, my advice is to use another tab in the Spreadsheet into which the data of the regenerating Sheet is automatically conveyed.
In this way the structure of sheet will not change and at the same time the data will update automatically after the new execution of the report 🙂
Hi Michele,
I have a problem setting dates by formula; I mean of course start date/end date. Everything works until I rerun the script and the values overwrite the formulas.
Do you have any idea how to solve this?
Hi Sara, what kind of error are you getting?
Hello,
I cannot receive data after February 29 in the GA4 Magic Report, although I run the report in GA4 without any problems.
Metrics: Date, Event count
Dimensions: Landing Page + query string, Event name
Dimension filter: new_register_form
Hi Cansu, this could be a problem with the filter used, check if even with this online tool you are not getting results, in which case there is a problem with the wording of the report request: https://ga-dev-tools.google/ga4/query-explorer/
Magic reports are vastly under reporting Prior year’s data when comparison is used.
From Magic report
CY 2291231 400273
PY 2161450 151983
From Google’s extension
CY 2294451 400530
PY 2279950 520364
From UI
CY 2264809 400273
PY 2210555 520364
These are for Sessions and Add to carts
Hi Ravi,
the result given is that of the Google API, without any processing. It seems very strange to me that you get this difference by querying 2 metrics in a simple date range. Could you share a video or some screenshots? I also invite you to try running the report via this tool: https://ga-dev-tools.google/ga4/query-explorer/ should give you the same result as GA4 Magic Reports as it uses the API (and also the same result as Google’s add-on, although that hasn’t worked for several days).
uongiorno Michele,
Sono 6 mesi che cerco di recuperare i dati correnti, ma riesco a recuperare solo i dati degli ultimi 2 mesi.
Le dimensioni che sto cercando di recuperare sono date, fullPageUrl, pagePath e pageTitle.
Ho provato anche su https://ga-dev-tools.google/ga4/query-explorer/, ma il risultato è lo stesso.
Puoi capire la causa e una soluzione?
Ciao Kazuho,
da quello che scrivi direi che si tratta della Data retention: https://support.google.com/analytics/answer/7667196?hl=it
Come hai avuto modo di appurare non si tratta di un problema dell’add-on. Il motivo è dovuto a un’impostazione, che puoi trovare in Admin a livello di Proprietà, relativa al tempo di conservazione dei dati che può essere impostata a 2 o a 14 mesi. Nel tuo caso è sicuramente impostata a 2 mesi. Non puoi recuperare quelle info dai report di GA4 perché al raggiungimento del periodo impostato Google elimina quelle informazioni. Se hai BigQuery collegato puoi provare a risalire a quelle info da lì.
Hi, I LOVE your extension, it’s really helped me back up my GA4 data. One problem I’m having is with compound filters in a report on pages viewed. I need to filter out views of page /search/ ONLY when the user is from Singapore (lots of search spam). But when I use:
NOT__fullPageUrl__CONTAINS__/search/__AND__NOT__country__EXACT__Singapore
it filters out all Singapore traffic and all /search/ pages, regardless of country. How can I filter out those pageviews only when it’s both /search/ AND singapore?
Thanks!
Jannette
Hi Janette,
the filters in GA4 work in AND, what you described is an expected behavior and it is the same behavior you also get with GA4 Explore or with the Google Dev Tools: https://ga-dev-tools.google/ga4/query-explorer/
To get the result you want you should use the segments in Explore. The API does not support segments yet.
Hi, so I created this report in one file. When I create a copy with another name and try to run the report, I get this error:
GoogleJsonResponseException: API call to analyticsdata.properties.runReport failed with error: Invalid value at ‘limit’ (TYPE_INT64), “” Invalid value at ‘currency_code’ (TYPE_STRING), 10000
However it runs fine with the original report. How can I fix this?
Hello Alesandra,
thanks for the report, it’s a fix I have to make for this anomaly that is only there when creating a copy of the file.
To fix it in the meantime, just delete the duplicate “Offset” row.