Setting up Google Analytics 4 with BigQuery
Shopify’s Partner Dashboard can send your App Store listing’s activity (page views, the install funnel, ad clicks, and install events with the search term that drove them) to a Google Analytics 4 property you own. GA4 can export those events to BigQuery, and Partner Console polls BigQuery to bring them into the Listing analytics page and to auto-attribute affiliate referrals.
The chain is: Partner Dashboard → GA4 → BigQuery → Partner Console. Each arrow is one setup step below. Budget about fifteen minutes; data flows from the day the export is enabled (Google does not backfill).
Step 1: Connect GA4 in the Partner Dashboard
Section titled “Step 1: Connect GA4 in the Partner Dashboard”If your app listing already reports to a GA4 property, skip ahead.
- Create a GA4 property at analytics.google.com (one per app keeps datasets tidy).
- In the Shopify Partner Dashboard, open your app, then Distribution › Analytics, and paste the GA4 Measurement ID.
- Shopify starts firing listing events server-side:
page_view, engagement steps,shopify_app_installandshopify_app_ad_click, each carrying the shop and the surface (search term, category, ad) that produced it.
Step 2: Create a Google Cloud project
Section titled “Step 2: Create a Google Cloud project”BigQuery lives in Google Cloud, so you need a project to hold the export.
- Go to console.cloud.google.com and sign in with the same Google account that can admin your GA4 property.
- Create a project (a name like
yourapp-analyticsworks) and note its Project ID. - Make sure the BigQuery API is enabled for it (APIs & Services › Enable APIs).
Google’s free BigQuery tier (10GB storage, 1TB of queries per month) comfortably covers App Store listing volumes, so this normally costs nothing.
Step 3: Link GA4 to BigQuery
Section titled “Step 3: Link GA4 to BigQuery”- In GA4, open Admin › Product links › BigQuery links and create a link to the project from step 2.
- Choose Daily export at minimum; enable Streaming too if you want same-day data in the console.
- Repeat for each app’s GA4 property. Every property exports into its own dataset in the project, named
analytics_<property id>.
The first tables appear within roughly 24 hours of linking.
Step 4: Grant Partner Console access
Section titled “Step 4: Grant Partner Console access”Partner Console reads the export with a service account you control.
- In your Google Cloud project, open IAM & Admin › Service accounts and create one (name it something like
partner-console-reader). - Grant it two roles: BigQuery Data Viewer and BigQuery Job User. Read-only; it can never modify your data.
- Open the service account, go to Keys, and create a JSON key. A key file downloads; you’ll paste its contents in the next step.
Step 5: Connect it in Partner Console
Section titled “Step 5: Connect it in Partner Console”- In the console, open Settings › Integrations › Google BigQuery.
- Enter the Project ID and paste the JSON key, then save. The connection test runs immediately and reports how many datasets it can see; if it fails, the error tells you whether it’s the key or the project.
- The modal then shows each of your apps with a dataset picker (GA4 exports are listed first). Map each app to its
analytics_<property id>dataset and leave App Store Listing enabled. - Pick a poll frequency (every 10 minutes is the default) and save the mapping. The first sync fires immediately and backfills the last 7 days of the export.
Running multiple apps?
Section titled “Running multiple apps?”One connection covers them all: each app maps to its own dataset inside the same project. If a new app launches later, reopen the modal and map it; nothing else changes.
What happens next
Section titled “What happens next”- Listing analytics (Behavior › Listing analytics) fills in: views, installs, ad clicks, the listing funnel, installs by surface, and the search terms that installed.
- Affiliate auto-attribution: install events whose landing URL carried a referral code credit the affiliate automatically, with no code in your app.
- The integration modal shows the last sync time and how many listing events have been captured, so you can confirm it’s flowing without leaving Settings.
Troubleshooting
Section titled “Troubleshooting”- Connection test fails: the JSON key is malformed (paste the whole file, including the braces) or the service account is missing a role.
- Datasets dropdown is empty: the GA4 → BigQuery link isn’t created yet, or it exports to a different project than the one you connected.
- No data after a day: check that the Partner Dashboard actually has the Measurement ID, and that the BigQuery link shows recent export runs in GA4’s admin. Remember the export only starts from the day it was enabled.