Why connect GA4#
From GA4 Margly pulls data about your e-shop traffic and customer behavior. Without GA4, Margly doesn't have information about website visits, so it can't calculate the conversion rate (orders divided by visits) or show you where people are coming from.
One OAuth for all Google products#
Margly uses a single OAuth flow for Google — you authorize Google Ads, GA4, and Search Console at once. If you have already connected Google Ads, for GA4 it's enough to just activate it by selecting a property in the Integrations section (no new OAuth window opens).
Connection procedure#
Connect Google account
In Integrations → Google click Connect Google account (if you haven't done so yet). The OAuth window from Google opens — approve 4 permissions for reading data from Google Analytics, Google Ads, Search Console, and email for identifying the connected account.
Select GA4 property
Margly shows you a list of GA4 properties your token has access to. Pick the one that belongs to your e-shop. You can find the property ID in GA4 in the section Admin → Property → Property Details.
Margly pulls historical data
On the first connection Margly pulls the last 365 days (1 year) of daily data. For regular e-shops this takes on the order of minutes.
What Margly actually pulls from GA4#
Margly loads GA4 data in two ways:
- Main background loading (saved into the Margly database, read by the dashboard overview and AI Advisor):
- Daily aggregate: visits, users, new users, page views, average visit duration, bounce rate, completed purchases, and revenue from GA4 — all broken down by channels
- Detailed breakdown of visit × channel × source × medium × day with counts of visits, conversions, and revenue
- Supplementary loading on page open (calls GA4 API directly on dashboard page visit) — described below.
In the Overview section#
- Conversion rate = number of orders from the e-shop divided by number of visits from GA4 × 100
- Visits and users — summary for the chosen period
In the Advertising section (requires GA4 connection)#
- Breakdown of visits and purchases by device (mobile, desktop, tablet) — sessions, users, completed purchases, and revenue
- Top landing pages (top 10) — which URL on the web people open first, number of visits, completed purchases, revenue, bounce rate, and a computed conversion rate for each page
- Purchase journey (see below)
- Acquisition channels — from which channel the user first came to your website (first-user attribution): number of users, new users, completed purchases, and revenue
In Orders → GA4#
- The same breakdown by device
- The same top landing pages
- Purchase journey
In Customers → GA4#
- Acquisition channels — where customers first came from
- Age groups (requires Google Signals)
- Gender (requires Google Signals)
- New vs. returning users — visits, completed purchases, average visit duration, and bounce rate for each group
- Geography — top 15 countries by user count
- Engagement — average visit duration, bounce rate, pages per visit, engaged sessions — top 10 channels
Purchase journey — detail#
Margly loads from GA4 the counts of five key events for the chosen period and assembles a journey graph from them:
| Journey step | GA4 event that the tracking code must send |
|---|---|
| Website visit | session_start |
| Product view | view_item |
| Add to cart | add_to_cart |
| Begin checkout | begin_checkout |
| Purchase | purchase |
For each step Margly computes the drop-off vs. previous step in percent (drop-off %) — you see where people drop off the journey the most.
Common errors#
- "Property not found" — the Google account you logged in with doesn't have access to the selected GA4 property. In GA4 → Admin → Property Access Management add the email you used to log in to Margly.
- "Daily quota exceeded" — GA4 has a daily query limit. Margly normally fits within it; if you see the error repeatedly, contact support.
- Numbers don't match between GA4 and Margly revenue — that's normal. GA4 assigns revenue to sources according to its model (data-driven, last-click…), Margly takes revenue directly from the e-shop. Small differences arise in practice.
- Missing demographic data (age, gender) — in GA4 administration enable Google Signals (Admin → Data Settings → Data Collection → Google signals data collection). Without Google Signals, GA4 doesn't measure demographics.
- Some GA4 chart is empty — Margly catches GA4 API errors so the rest of the dashboard works. If a specific view (e.g., landing pages) fails, it shows empty — typically an exceeded quota, temporary GA4 error, or missing data. Try opening the page again in a few minutes.
What's next#
- Connecting Google Ads — paid traffic
- Connecting Search Console — free traffic from Google
- Understanding margins — how Margly calculates ROAS and break-even