Skip to main content
Data direction: This is a destination — Upstack sends event and conversion data out to this platform via server-side APIs.

What it does

Google Ads relies on conversion signal to power Smart Bidding, Performance Max, and any campaign that optimizes toward purchases. Upstack reports every Shopify purchase to a dedicated Purchase - UpstackData goal through the Google Ads tag, and can also forward conversions server-side through Google’s API. The Tracking Method setting controls which paths run. With server-side forwarding on, conversions reach Google even when the browser-side gtag is blocked by ad blockers, ITP, or cookie restrictions. Each event carries the original click identifier (gclid or gbraid/wbraid) plus hashed customer data, so Google can match the conversion back to the ad interaction that drove it. The result is more complete conversion data inside Google Ads, sharper Smart Bidding decisions, and reporting that reflects the conversions your campaigns actually produced.

How it works

Google Ads uses a primary/secondary conversion goal architecture. Primary goals drive bidding — Smart Bidding optimizes toward whatever is marked primary. Secondary goals are observation-only: they appear in reports but do not influence the bidder. You create a dedicated Purchase - UpstackData goal for Upstack during onboarding, set it as Primary, and switch your existing Purchase goals to Secondary. Upstack hashes customer data — email, phone, first_name, last_name, city, state, zip, country — with SHA-256 before sending it to Google’s API. Google uses these match keys the same way Enhanced Conversions does, so you do not need to configure Enhanced Conversions for web on the Upstack goal itself.
Your Google Ads account needs enhanced conversions switched on at the account level before Google will accept customer data over the API. If it isn’t, Google rejects the hashed identifiers and Upstack retries the conversion without them (click IDs and IP only), so conversions still arrive but match fewer users. It is a one-time setup and is still recommended. The Conversions API setup guide walks through both settings to check.

Set the Upstack goal as primary

During onboarding, set Purchase - UpstackData as your Primary purchase goal and switch your existing Purchase goals to Secondary, so a single primary purchase goal drives Smart Bidding. See Enable primary goal. Conversion actions that Upstack creates for server-side forwarding are added as Secondary, so they don’t compete with your primary goal.

Setup guides

Onboarding guide

End-to-end walkthrough for connecting Google Ads to Upstack Data.

Configure destination

Configure the Google Ads destination inside Upstack Data.

Server-side Conversions API setup

Connect Google Ads with OAuth and map events to conversion actions for server-side forwarding.

Find conversion ID and label

Locate the conversion ID and label values Upstack needs.

Create purchase goal

Create the dedicated Upstack purchase conversion goal in Google Ads.

Enable primary goal

Promote the Upstack goal to primary so Smart Bidding optimizes against it.

Connect Google Ads account (source)

Connect Google Ads as a campaign data source for attribution reporting.

FAQ

Primary goals drive Smart Bidding — Google optimizes toward them. Secondary goals are observation-only and appear in reports but do not influence the bidder. During onboarding, set the Upstack goal as primary and switch your other Purchase goals to secondary, so only one purchase goal drives bidding.
Pointing Upstack at your existing goal would mix Upstack’s server-side conversions with whatever source is already firing into it (gtag, Shopify’s native tag, GTM), which makes deduplication and quality comparison impossible. A dedicated Upstack goal keeps the data clean.
During onboarding, follow the Enable primary goal guide: set Purchase - UpstackData as Primary and switch your old goal to Secondary so it stops influencing Smart Bidding.
Upstack already sends the same hashed match keys Enhanced Conversions uses (email, phone, name, address) on every server-side event, so Google’s match-rate logic applies automatically. Configuring Enhanced Conversions for web on top of the Upstack goal would not add data, and on the wrong goal it can cause duplicate or conflicting match logic.That is separate from the account-level enhanced conversions setup, which is still recommended. Google will not accept customer data over the API until the account has agreed to the customer data terms and has enhanced conversions for leads turned on. Until then, Upstack retries each conversion without user identifiers (click IDs and IP only), so conversions still arrive but match fewer users. The Conversions API setup guide covers both.
During onboarding. Set it as Primary when you set up the destination, and switch your existing Purchase goals to Secondary at the same time.

Conversion API forwarding

How Upstack Signal forwards events to ad platforms via server-to-server APIs.

Attribution and reporting

How Upstack attributes conversions back to the campaigns that drove them.

Events not reaching destination

End-to-end diagnostic guide when events aren’t arriving at any destination.