GA4 ecommerce report
get_ga4_ecommerceGA4 ecommerce performance for the GA4 property linked to a GSC Wizard site: a revenue / transactions / purchasers summary plus channel, source-medium, page, landing-page, and product (itemName) breakdowns. Revenue is in the property currency (currencyCode). hasEcommerce is false when the property shows no ecommerce activity in the period. When active filters are incompatible with the item-scoped Products report, itemsFilterSkipped is true and items is unfiltered while every other table reflects the filters. totalRows gives the full row count of every table before limit. Returns a notConfigured result (not an error) when Google Analytics is not connected or no GA4 property is linked to the site in the GSC Wizard app. Date range is optional: omit startDate/endDate to analyze the last 28 settled days (data lags ~2-3 days).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| endDate | No | Optional. Window end as YYYY-MM-DD (e.g. 2026-05-31). You do NOT need to know today's date or the latest available date: omit this and the server uses the latest settled Search Console date (data lags ~2-3 days behind today). Never pass null or the string "null". | |
| filters | No | Optional GA4 dimension filters applied to every report in the call. Within a list field the values OR together; different fields AND together. Omit entirely for unfiltered data. | |
| siteUrl | Yes | ||
| startDate | No | Optional. Window start as YYYY-MM-DD (e.g. 2026-05-03). You do NOT need to know today's date. Omit BOTH startDate and endDate to analyze the last 28 settled days automatically (Search Console data lags ~2-3 days). Never pass null or the string "null". | |
| comparisonEndDate | No | Optional. End of the comparison period as YYYY-MM-DD. Provide BOTH comparison dates to compare two periods; omit both for no comparison (prev* fields are then 0 and hasComparison false). | |
| comparisonStartDate | No | Optional. Start of the comparison period as YYYY-MM-DD. Provide BOTH comparison dates to compare two periods; omit both for no comparison (prev* fields are then 0 and hasComparison false). |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| hint | No | ||
| note | No | ||
| items | No | ||
| pages | No | ||
| range | No | ||
| reason | No | ||
| account | No | ||
| siteUrl | No | ||
| sources | No | ||
| channels | No | ||
| timeZone | No | ||
| siteScope | No | ||
| totalRows | No | ||
| dataSource | No | ||
| propertyId | No | ||
| currencyCode | No | ||
| hasEcommerce | No | ||
| landingPages | No | ||
| hasComparison | No | ||
| notConfigured | No | ||
| reauthRequired | No | ||
| comparisonRange | No | ||
| ecommerceSummary | No | Metric totals keyed by GA4 metric name. | |
| itemsFilterSkipped | No | ||
| propertyDisplayName | No | ||
| prevEcommerceSummary | No |