BuildBaseBuildBase

Run ads with conversions

The complete checklist for Google Ads and Meta to count your sign-ups and sales - what goes in the console, what goes in your app, and how to prove it before you spend.

An ad platform optimises toward the conversions it is told about. Tell it nothing and it optimises toward clicks. This page is the whole setup, in order, for Google Ads and Meta. Each step links to the page with the detail.

1. In the ad platforms

PlatformCreateYou will need
Google AdsA conversion action for sign-up and one for purchase (Goals › Conversions)the AW- conversion id and each label
MetaA dataset (pixel) in Events Manager, and a Conversions API access token for itthe pixel id and the token
GA4A web data stream, and a Measurement Protocol API secret for itthe G- measurement id and the secret

Where each id sits in each vendor's console is listed in Providers.

2. In the BuildBase console

  1. Settings › Tracking & Tags - add Google Ads, Meta Pixel and GA4 with those ids.
  2. On the Google Ads entry, fill in Conversion labels for sign-up and purchase. A blank label means that event is not reported to Google Ads, and nothing errors. See Events.
  3. On the Meta Pixel and GA4 entries, turn on Server-side conversions with the token and the secret. That covers the sale whose buyer closed the tab. See Server-side conversions.
  4. Auth › Clients - attach all three to every app on the ad's path. That usually means your marketing site, where the ad lands, and your app, where the sign-up and the sale happen. A tag attached only to the app never sees the click; one attached only to the site never sees the sale.
  5. Send a test conversion for Meta with a test event code set, and check Events Manager › Test events. Clear the code afterwards: while it is set, every conversion goes to Test events.

3. In your app

Everything on the Overview checklist, and in particular:

  • @buildbase/sdk 0.0.68 or later in every app on the path. Earlier releases lose the checkout step on Safari, and can credit a conversion to the wrong one of two ad clicks.
  • A consent banner on the page the ad lands on. Ad tags load only after a visitor accepts marketing. A visitor who is never asked is measured as one who refused, and never becomes a conversion anywhere. See Consent.
  • Restore the answer on every page load, in every app. The sign-up usually happens a page or a domain later than the answer.
  • One registrable domain from the landing page to the sale (example.com, app.example.com). The click id is kept in a cookie on that domain. If the site and the app are different domains (example.com and example.io), nothing carries across and no sale is attributed.
  • If your app sets a Content-Security-Policy, allow the tags' origins. See Providers.

4. Prove it before you spend

Click your own ad, or open the landing page with ?gclid=TEST-1&utm_source=google. Accept the banner, sign up, and buy with a Stripe test card.

CheckWhere
The tags load on both appswindow.__buildbase.tracking.installed in the console of each - see Verify
Sign-up and purchase reach GA4GA4 › Admin › DebugView
Meta counts one purchaseEvents Manager › Test events, one event from browser and server
Google Ads records a conversionGoals › Conversions › the action's status. Allow a few hours
The server side decidedSettings › Tracking & Tags › Server-side conversions, one row per sale, with a reason

If a step comes up empty, Verify lists the causes in the order they usually happen.

Next