Cost per opportunity by Google Ads campaign
Ask, and the agent puts each Google Ads campaign's last-month cost next to Salesforce opportunities created last month whose Primary Campaign Source matches it.
Combine Salesforce + Google Ads and move ad data into Salesforce. Just ask Letaido's AI agent and watch it do the work.
Use this Salesforce Google Ads integration for cost per opportunity by campaign, ad spend on Salesforce campaigns and ad keywords on new leads.
Ask, and the agent puts each Google Ads campaign's last-month cost next to Salesforce opportunities created last month whose Primary Campaign Source matches it.
Every morning, the agent replaces Actual Cost on matching active Advertisement campaigns in Salesforce with Google Ads spend from their Start Date through yesterday.
Every morning, new leads whose click ID matches a Google Ads click from the last 7 days get its campaign, ad group and keyword.
Google's Data Manager sends Salesforce conversions to Google Ads. Leta brings ad data into Salesforce.
| Option | Cost next to opportunities | Spend on Salesforce campaigns | Ad click details on leads | Sends conversions to Google Ads |
|---|---|---|---|---|
| Yes | Yes | Yes | No | |
| Google Ads Data Manager (Salesforce data source) | No | No | No | Yes |
| Salesforce Data 360 Google Ads connector | Partly | No | No | No |
| Zapier | Partly | Partly | Partly | Yes |
| Option | Which way data goes | How a run begins | Good at | Keep in mind |
|---|---|---|---|---|
| Letaido AI agent | Google Ads into Salesforce: cost on campaign records, and the campaign, ad group and keyword on leads | A set time, such as every day at 6am, or a request in chat | Cost per opportunity by campaign, keeping Actual Cost on Salesforce campaigns current, tagging new leads with their ad keyword | Campaigns are matched by name, and keyword tagging needs a GCLID field filled by your web-to-lead form. No job here sends conversions to Google Ads |
| Google Ads Data Manager (Salesforce data source) | Salesforce into Google Ads only | Imports on a schedule you set in Google Ads, or Run now | Offline conversions and enhanced conversions for leads from Lead, Opportunity or Order records, such as Stage becomes Closed Won | Replaced the legacy Salesforce link on May 31, 2025. Needs a GCLID or, for enhanced conversions for leads, an email address or phone number on your records. No sandboxes, and nothing comes back into Salesforce |
| Salesforce Data 360 Google Ads connector | Google Ads into Data 360 only | A daily batch data stream | Campaign and ad group delivery and conversion data, such as impressions, clicks and conversions, for Data 360 analysis | Needs Data 360. Data lands in data lake objects, not on campaign or lead records. By default, the first import goes back 180 days; you can choose a different date range. |
| Zapier | Either way: Google Ads lead form entries into Salesforce, Salesforce leads and opportunities back to Google Ads | A trigger such as a new Salesforce lead or an updated field. Most of these triggers poll for new data on a timer | Templates such as offline conversions for newly closed opportunities, or new Salesforce leads in Google Ads customer lists | Salesforce is a Premium app on Zapier. You build one Zap per recipe. Cost next to opportunities takes extra steps, such as Create Report in Google Ads plus a Salesforce query and a step that joins them. Ad click details on leads need an API Request step with a custom Google Ads click_view query, a step that matches each lead's GCLID, and a Salesforce update step |
Saved as an automation, like these jobs: every day at 6am or every day at 7am. Neither app sends events to Letaido.
Type it once in chat.
Allow all read operations once per app; approve each kind of write once.
Get record blob · Parameterized search · Describe object · Get bulk ingest results
Search · List accessible customers · Generate keyword ideas · Add negative keywords
Yes. Google's Data Manager imports Salesforce leads, opportunities or orders into Google Ads as offline conversions. Letaido's AI agent, Leta, covers the other direction: ad cost next to opportunities, spend on Salesforce campaigns and ad keywords on eligible new leads with matching keyword-bearing clicks.
Sign in to Salesforce once your admin has done the one time setup, then connect your Google Ads account. After that, ask for a job in chat or paste a prompt from a card on this page.
Ask for it. Leta reads last month's cost per campaign, finds opportunities created last month whose Primary Campaign Source has the same name, and returns cost per opportunity and pipeline per dollar in the chat. It only counts those matched opportunities. Nothing is written.
Yes. Every morning Leta replaces Actual Cost on matching active Advertisement campaigns with Google Ads spend from their Start Date through yesterday, so Salesforce campaign ROI reports stay current. Campaigns with no Start Date or no matching cost row are listed, not changed.
Yes, if your web-to-lead form saves the Google click ID in a GCLID field. Each morning Leta looks up click IDs on leads from the last 3 days in the 7 completed days of Google Ads clicks before today. Only leads with a matching click get campaign, ad group and keyword; a click with no keyword leaves that field blank.
Not with the jobs on this page. Google's Data Manager does that, from Lead, Opportunity or Order records, on a schedule you set in Google Ads.
No. Neither app sends events to Letaido, so jobs run on a schedule, such as every day at 6am, or when you ask in chat.
Allow all read operations once per app; approve each kind of write once.
Connect Salesforce and Google Ads, then ask for a job like "Show last month's cost per Salesforce opportunity by Google Ads campaign". Leta gets it done on your schedule, or the moment you ask.
Get Letaido