What this integration solves
Pipedrive is common in mid-market sales teams. Out of the box it will not teach Google Ads about won deals. This build stores click IDs on the person, associates them to deals, and uploads on stage changes via Pipedrive automations webhooks or Zapier/n8n.
Prerequisites and permissions
Pipedrive admin company settings access, Google Ads conversion access, and an automation tool that can call Google Ads. Custom person fields: GCLID, GBRAID, WBRAID. Deal fields: Offline upload done (boolean-like), Offline upload stage (text).
The build, step by step
1. Map hidden form fields into Pipedrive person create/update via leadbooster forms or website forms API.
2. Create Google Ads offline conversion actions for each monetised stage.
3. Automation: when deal stage hits target, read org person GCLID, post conversion with deal value and currency, stamp Offline upload done.
4. Use deal id + stage as order_id for deduplication.
5. Document stage probability values if you upload expected revenue before won.
Gotchas
Persons with multiple deals can upload conflicting values if you pull the wrong deal. Pipeline stage IDs differ across pipelines. Merged persons may drop custom fields. Pipedrive currency vs Ads currency mismatches are common in multi-market sellers.
How to verify it is working
Create a test person with GCLID, move a deal through stages, confirm webhook logs and Google Ads acceptance. Re-run the same stage to ensure dedupe holds.
What breaks it later
New pipelines without automations, API token rotation, and sales creating deals without a person. Monthly audit of won deals missing GCLID.
Identity and capture for Pipedrive to Google Ads offline conversions
Pipedrive identity lives on the Person, not the Organisation. Leadbooster, website forms and manual creates must write GCLID, GBRAID and WBRAID to the same Person fields. Multi-person Deals need one primary-buyer rule before go-live. Pipeline clones mint new stage_id values; labels are for humans only.
Upload contract for Pipedrive to Google Ads offline conversions
Automations key off stage_id, never English stage names. order_id is dealId + stage_id so webhook retries stay idempotent. Normalise deal currency into the Ads account currency in middleware. Stamp Offline upload done only after Google accepts the hit, and block zero-value Won uploads unless an agreed expected-value field exists.
Monitoring for Pipedrive to Google Ads offline conversions
Export Won deals monthly and chart the share missing Person GCLID. That capture KPI is separate from Ads Accepted volume. Watch API token rotation, new pipelines without cloned automations, and Deals created without a Person. Re-test after any pipeline redesign the same day.
Deep dive: Pipedrive to Google Ads offline conversions
Treat stage_id as the contract. When a product line gets its own pipeline, rewrite automations immediately. EU sellers with GBP Ads accounts routinely mismatch currency. Free plans without webhooks need an external Deals API poller; CSV upload is a bridge, not a system. Chat-originated People without GCLID stay permanently dark to Ads.
Operator checklist: pipedrive-google-ads-offline-conversions
1) Person fields receive a test GCLID from the form. 2) Deal links to that Person. 3) Stage move fires the webhook. 4) Ads shows Accepted within 72 hours. 5) Offline upload done stamps. 6) Retry the same stage and confirm no duplicate. 7) Re-test after the next pipeline clone.