Connect Salesforce Sales Cloud
Link your Salesforce Sales Cloud org to Tapper so real deal outcomes, such as qualified and won deals and their value, reach your Google Ads bidding through Tapper Vantage.
Google Ads optimizes for whatever you tell it a conversion is. If that is a form submission, it buys you form submissions, including the ones that never become customers. Connecting Salesforce Sales Cloud lets Tapper read what actually happened to each lead. Tapper Vantage then sends that value back to Google Ads, so bidding chases revenue instead of volume. To learn more about Vantage, see Tapper Vantage.
Sales Cloud is a shared connection: you connect it once for a protected entity, and every Tapper product on the workspace uses the same connection.
The connection is read-only. Tapper never writes to your Salesforce org.
This page is for Sales Cloud. To connect Marketing Cloud Engagement, the Salesforce product for email and journeys, see Connect Salesforce Marketing Cloud Engagement.
Before you start
Check your Salesforce edition first. Enterprise, Unlimited, Performance and Developer editions include API access. Professional edition needs the paid Web Services API add-on. The Additional API Calls product is a different thing and does not enable it. Group and Essentials editions have no API access and cannot be connected.
You need the Owner or Admin role in your Tapper workspace to connect or disconnect Salesforce.
Grant read-only access
Salesforce has no read-only OAuth scope. Read-only is enforced by the permission set you assign, not by the login itself. Set this up before connecting.
Create a permission set
In Salesforce, go to Setup > Permission Sets > New. Name it something like Tapper Integration (Read Only).
Enable API access
Under System Permissions, enable API Enabled. Leave every write permission off.
Grant read on four objects
Under Object Settings, grant Read, and only Read, on Lead, Opportunity, Contact and Account. Do not grant Create, Edit or Delete on any of them.
Assign it
Assign the permission set to the user who will authorize the connection.
A Salesforce Integration User license works well here if your edition includes one, since it keeps the integration separate from a person's login.
Connect from Tapper
Open the CRM tab
In Tapper, open Setup > Advanced in the sidebar and select the CRM tab. If your workspace has more than one protected entity, first pick the one whose leads you want to measure in the switcher under the workspace name.
The same connection is also under Lift > Business details > Measurement > CRM. Connecting in either place makes the same connection.
Click Connect your Salesforce org
You are sent to Salesforce to sign in and approve access. Sign in as the user you assigned the permission set to.
Allow access
Review the requested access and allow it. Salesforce sends you back to Setup > Advanced > CRM, also when you started from Lift. The tab confirms Salesforce connected.
Review, then enable
A new connection starts paused. Check the Click ID field, then turn on the switch labeled Syncing paused. It then reads Syncing enabled.
Enabling begins a one-time import of the last 12 months, which uses your Salesforce API quota.
If Click ID field on the CRM tab reads None found, follow Add the Sales Cloud click ID field next. Tapper does not turn on syncing until the connection has a click ID field, because without one no outcomes can reach Google Ads.
Once Salesforce is connected, Vantage > Accounts and campaigns shows it in its Data source step. If the sync has a problem, that step links back to the CRM tab with Fix Salesforce.
What Tapper reads
A small set: enough to answer which ad click produced this deal and what it was worth, and nothing more.
| Object | Fields |
|---|---|
| Lead | Record ID, email, phone, status, lead source, created and modified dates, conversion details, click ID. Record type, rating and currency when your org has them. |
| Opportunity | Record ID, stage, amount, close date, created and modified dates, won and closed flags, click ID. Campaign ID, record type and currency when your org has them. |
| Contact | Record ID, email, phone, created and modified dates. |
| Opportunity Contact Role | Opportunity ID, contact ID, primary flag, role, and the linked contact's email and phone. |
| Opportunity History | Record ID, opportunity ID, stage, amount, created date. |
Email and phone are hashed the moment they arrive. The original values are never stored: not in our database, not in logs, not in our warehouse.
Tapper does not read names, company, job titles, addresses, notes, descriptions, activities, tasks, attachments or any custom object. It does not read orders, invoices, payments, refunds, or any payment method or gateway data. Ask your account manager for the full data disclosure document if your security team needs the complete list.
What the CRM tab shows
| Area | What it tells you |
|---|---|
| Salesforce | Your org's address, its status (Syncing, Paused or Sync error), the syncing switch and the detected Click ID field. |
| Match rate | The share of outcomes matched to a specific ad click, from your Salesforce click ID field or from Tapper click data, broken down by stage. This is the ceiling on how much of your deal value can reach Google. |
| Sync status | For each Salesforce object, whether its first import is Running or Complete, how far it is up to date, and when Tapper last checked. |
Unmatched outcomes have no click ID from either source, so they are not sent to Google Ads.
Keeping it in sync
After the first import, Tapper checks for changes every 15 minutes by default and reads only records modified since the last sync. The interval shows under the switch, for example Syncing every 15 minutes. While syncing is on, you can force a check at any time with Sync now on the CRM tab.
Pausing or disconnecting
Turn off the Syncing enabled switch to pause. Syncing stops, and the connection and every outcome already collected are kept.
Disconnect revokes Tapper's access with Salesforce, stops syncing and deletes the stored credentials. Outcomes already collected are kept. If Tapper could not revoke its access in Salesforce, it says so. To finish, remove Tapper under Connected Apps in your Salesforce settings.
If a connection stops working, the CRM tab says Salesforce sync stopped on and the date, with the reason. Select Reconnect Salesforce to restore it without losing your history. If your org used up its daily Salesforce API limit, select Resume syncing once the limit resets.