GA4 + BigQuery traffic insights

Connect your app listing's Google Analytics 4 property through the BigQuery export and see which traffic sources actually turn into installs, trials and paying subscribers.

How it works

Shopify can send your public app listing’s traffic to a Google Analytics 4 property that you own. Partner Metrics reads that property’s BigQuery export (one GA4 property and dataset per app) with a read-only service account and joins each install’s shop_id to your Partner subscription data, so the funnel doesn’t stop at “install”, it continues to trial and paying subscriber.

The Shopify App Store export uses standardized event names, so there is no event mapping to configure: view_item (listing view), add_to_cart (Add app click) and shopify_app_install (install). GA4 has no subscribe event; subscriptions, trials and MRR always come from your Partner data.

Setup

  1. Create a GA4 property

    In Google Analytics, create a GA4 property for your app listing with a web data stream. Copy the stream’s Measurement ID (it looks like G-XXXXXXXXXX).

  2. Attach it to your app listing

    In the Shopify Partner Dashboard open Apps → your app → Distribution → Manage listing and paste the Measurement ID into the Google Analytics field in the Tracking information section, then save. For install events delivered server-side, also generate a Measurement Protocol API secret in your GA4 data stream settings and add it alongside the Measurement ID.

  3. Enable the BigQuery export

    In GA4 open Admin → Product links → BigQuery links and link the property to a Google Cloud project (create one first at console.cloud.google.com if needed, with the BigQuery API enabled). During linking, choose:

    • Data location: pick deliberately; it is hard to change later and Partner Metrics needs to know it
    • Frequency: Daily is enough for the reports; Streaming adds same-day data but requires Cloud billing

    GA4 creates a dataset named analytics_<propertyId> in your project. The first export can take 24–48 hours to appear. That delay is normal, not a broken setup.

  4. Grant the service account read access

    Open your app’s settings → BigQuery tab in Partner Metrics; it shows the shared service-account email to authorize. In the BigQuery console, open the analytics_<propertyId> dataset → Sharing → Permissions → Add principal, paste the service-account email and grant the BigQuery Data Viewer role on that dataset only.

  5. Connect the dataset

    Back in the BigQuery tab, enter:

    • GCP project ID: the project that holds the export
    • BigQuery Dataset ID: analytics_<propertyId>
    • GA4 property ID: the numeric property id
    • Dataset location: the location you chose when linking (fixes “Dataset not found in location US” errors for EU datasets)

    Save. Each app has its own GA4 property and dataset, so repeat this per app.

The reports you unlock

  • Traffic sources: the listing funnel (listing views → Add app clicks → installs → trials → subscribed) broken down by source, medium, campaign and more, with filters, group-by and per-store drill-down
  • Traffic source trends: how each source’s volume and conversion develop over time
  • Traffic source insights: a pivot grid across ten attribution dimensions showing where installs and subscribers really come from
The service-account key is server-only: it is never returned by any API endpoint or exposed to the browser. Partner Metrics only ever reads your dataset.
GA4 + BigQuery Traffic Insights Setup · Partner Metrics