Skip to content

BlogHow To Guides

Pipedrive Google Analytics Integration: GA4, Deals and Revenue

Pipedrive has no GA4 integration of its own that we could find. What GA Connector adds, how to send won deals to GA4 with the Measurement Protocol, where that breaks, and where revenue by campaign should live instead.

Pipedrive and Google Analytics 4: from the GA4 session to the Pipedrive deal and the won revenue
Contents
  1. Quick summary
  2. Pipedrive natively
  3. Marketplace apps
  4. Deal stages to GA4
  5. Why not GA4
  6. Setup checklist
  7. How LeadJourney does it
  8. Further Reading
Summarise this article with AI

Opens the page with a ready prompt in:

Nothing is sent until you pick a service.

GA4 knows which campaign brought a visitor to the site. Pipedrive knows which deal closed and for how much. Somewhere between the two sits the question every marketer in a Pipedrive company is eventually asked: which campaigns produced the revenue? The natural first idea is to connect the two tools and answer it in GA4.

This guide covers what actually connects Pipedrive and Google Analytics today, how to push deal stages into GA4 yourself with the Measurement Protocol if you want to, what Google's own documentation says about the limits of that, and why the answer to the revenue question is better built on the deal than on the session.

Quick Summary: Pipedrive and Google Analytics

In short

We could not find a GA4 integration built by Pipedrive. The connection people use is the marketplace app Google Analytics Connector, which writes UTMs, first and last click, the GA4 Client ID and GCLID into Pipedrive fields. The other direction, deal stages into GA4, is something you build with the Measurement Protocol: capture the client ID, fire an event such as close_convert_lead when a deal is won. It works, but GA4 accepts backdating of only 72 hours and attributes events per browser session, so a deal won six weeks after the click lands in GA4 as today's event. GA4 sees sessions, not deals, which is why revenue by campaign belongs next to the deal.

What Pipedrive Gives You Without Any App

Before reaching for a connector, it is worth knowing what is already in your account, because some of it is better than people assume.

  • Source fields on leads and dealsSince May 2024 every lead and deal carries Source origin (how it was created: Web forms, Chatbot, Import, API, Web visitors and so on, set by Pipedrive and not editable) and Source channel, an option list your admin defines. The source stays attached when a lead is converted.
  • Web Visitors, powered by LeadfeederA paid add-on that puts a tracking script on your site and reports which companies visit, filterable by country, Google AdWords campaign or pages visited. It works at company level, and contact people come from Prospector credits.
  • Web Forms in LeadBoosterLeadBooster, included from Premium or bought as an add-on, creates leads or deals from a web form. Its documentation says nothing about UTM parameters or hidden fields, so campaign data from the URL is not something it promises to carry.

What none of these does is talk to Google Analytics. We searched Pipedrive's marketplace and knowledge base for a GA4 integration built by Pipedrive and could not find one. That gap is filled by third parties.

What the Marketplace Apps Add

  • Google Analytics Connector

    Built by GA Connector, listed as free on the marketplace. Its own tracking script writes UTMs, first and last click, the GA4 Client ID and Session ID and GCLID into Pipedrive fields. The closest thing to a Pipedrive GA4 integration there is.

  • Outfunnel

    Website visitor tracking with an anonymous cookie, identified on a form fill or an email click, with visits written to Pipedrive as Activities. Pipedrive acquired Outfunnel in August 2026.

  • LeadsBridge

    Lead sync, audience sync and offline conversions for Google, Facebook, LinkedIn and TikTok. Aimed at the ad platforms rather than at GA4, but often where teams end up.

  • Zapier and Make

    General automation. A deal trigger in Pipedrive can call any HTTP endpoint, which is how most do it yourself Measurement Protocol setups are wired.

Notice the direction. GA Connector brings Google Analytics data into Pipedrive, which is the more useful half: the campaign ends up on the record where the money is. The reverse, getting deal outcomes into GA4, has no app of its own that we found and is the part people build.

Sending Pipedrive Deal Stages to GA4 with the Measurement Protocol

The Measurement Protocol is Google's server to server endpoint for GA4. Google lists offline conversions as one of its uses, and is explicit that it exists to augment the tag on your site, not to replace it. For a Pipedrive deal it works in four steps.

  1. Capture the GA4 client ID at the form. It lives in the _ga cookie, and it is the key GA4 uses to join a server event to the browser that produced the session. Pipedrive does not record it, so this is GA Connector's job or a script of your own writing it into a custom field on the person or the deal.
  2. Create an API secret in GA4 under Admin, Data Streams, Measurement Protocol. Google says it must never sit in client side code, because anyone holding it can write data into your property.
  3. Trigger on the stage change. A Pipedrive automation on deal won (or on a stage you treat as qualified) calls a webhook. Pipedrive's Automations webhook action can POST a raw JSON body; most teams put Zapier, Make or a small function in between so the secret and the payload logic live outside the CRM.
  4. Send a recommended event. GA4's lead generation events include qualify_lead and close_convert_lead, each taking currency and value, so the deal amount travels with it.
Measurement Protocol request for a won deal
POST https://www.google-analytics.com/mp/collect?measurement_id=G-XXXXXXXXXX&api_secret=YOUR_SECRET

{
  "client_id": "1234567890.1712345678",
  "events": [
    {
      "name": "close_convert_lead",
      "params": {
        "currency": "EUR",
        "value": 18000
      }
    }
  ]
}

A 2xx means received, not accepted

Google's reference says the endpoint returns a 2xx status whenever the request arrives, malformed payload or not, and validation is relaxed by default. Test against the validation endpoint before you trust the numbers, and check a few events in the property by hand afterwards.

Why GA4 Is the Wrong Place for Revenue by Campaign

The setup above works in the narrow sense: a won deal appears in GA4 with a value. The trouble is what GA4 does with it, and every reason comes back to one design decision.

  1. GA4 sees sessions, not deals. Its unit is a browser session with a traffic source. A deal is a company that took weeks of calls to close. GA4 can count the event, but it has no idea which deal it was, what stage it passed through or how long it sat there.
  2. The clock only reaches back 72 hours. Google allows a Measurement Protocol event to be backdated by up to 72 hours, and asks for events that belong with a tag event to arrive within 48 hours of it. A deal won six weeks after the click is recorded as happening today, not on the day of the campaign that started it.
  3. The client ID is a browser, not a buyer. It belongs to one cookie on one device. The buyer who clicked the ad on a phone, came back on a laptop and was closed over email is a different client ID at each step, and the won event lands on whichever one the form happened to see.
  4. Small numbers get withheld. GA4 applies data thresholds and withholds rows in reports and explorations when user or event counts are low. A B2B team closing twenty deals a month is exactly the volume where a campaign row can disappear.
  5. Silent failures look like success. The endpoint answers 2xx to a malformed request, so a field rename in Pipedrive or an expired secret can stop the revenue reaching GA4 for weeks without an error anywhere.
  6. Leads without a session vanish. Imports, phone calls, referrals typed in by a rep: none has a client ID, so none can be sent, and the revenue they bring never reaches the report that is supposed to show all of it.

None of these is a GA4 bug. GA4 is a very good tool for what happens on the website. Revenue by campaign is a question about deals, so it is answered most reliably where the deal lives, with the campaign written onto it at the click.

A Checklist If You Connect Them Anyway

There are good reasons to want deal stages in GA4, for example to build audiences of people who became customers. If you go ahead, run these before trusting a single number.

  1. Client ID coverage. Of deals created in the last 30 days, how many carry a GA4 client ID in a field. That share is the ceiling on what GA4 can ever show.
  2. Source fields on the deal. Write UTM source, medium and campaign onto the deal as custom fields at creation, not only onto the person, so Pipedrive can answer the question even when GA4 cannot.
  3. One event per stage, named once. Pick qualify_lead and close_convert_lead (or your own names) and never rename them, or the history splits in two.
  4. Validate first. Send test payloads to the validation endpoint, then check the events in the property, because production requests will never tell you they failed.
  5. Reconcile monthly. Won value in Pipedrive against close_convert_lead value in GA4 for the same month. The gap is the revenue GA4 cannot see, and it is worth knowing its size.

How LeadJourney Puts the Campaign on the Pipedrive Deal

LeadJourney dashboard: every touchpoint from the first anonymous click to the closed deal
The journey recorded on the website, joined to the Pipedrive person and carried onto the deal

The Pipedrive integration is native: a one click sign in and a field mapping screen, live in about 21 minutes, no developer. It writes source, campaign, ad, click ID, UTMs, landing page and a link to the journey onto the Person, and the attributed channel, campaign and credit onto the Deal, in dedicated LeadJourney custom fields so your existing source fields stay as they are. Stage changes and won deals are read as they happen, so there is no 72 hour window to fit a sales cycle into.

The website half is one script on your site or in your GTM container. It records every visit server-side on your own domain, first-party, at 95%+ accuracy, and captures gclid, gbraid, wbraid, fbclid, li_fat_id and msclkid at the click. The anonymous history is joined to the person at the form fill, the call or the booking, with no attribution window on the journey.

Spend is pulled from the ad platforms and joined to the deals, so revenue by campaign is a sum over won deals rather than an event in an analytics property. Won deals go back to Meta and LinkedIn through their Conversions APIs, to Google Ads as an offline conversion on gclid and to Microsoft Ads on msclkid, with the deal value. Five attribution models run on the same events.

The limits: tracking respects consent decisions, so a visitor who declines is not measured, and a lead that never touched your website still needs a source typed in by a person.

Further Reading

FAQ

Frequently Asked Questions

What Pipedrive admins ask when they try to put GA4 and their deals in one report.

Does Pipedrive have a Google Analytics integration?

We could not find one built by Pipedrive, either on the marketplace or in its knowledge base. The option most teams use is Google Analytics Connector, a marketplace app by GA Connector that runs its own tracking script and writes UTMs, first and last click, the GA4 Client ID and Session ID and GCLID into Pipedrive fields. Zapier and Make can move data between the two as well, but you design every step yourself.

How do I send Pipedrive deals to GA4?

With the GA4 Measurement Protocol. Store the visitor's GA4 client ID on the person or deal when the form is submitted, create an API secret in the data stream settings, and have a Pipedrive automation call a webhook when a deal is won. The webhook posts an event such as close_convert_lead with the currency and the deal value to Google's collect endpoint. Keep the API secret out of anything that runs in the browser.

Can I see Pipedrive revenue by campaign in Google Analytics?

Only partly. GA4 accepts Measurement Protocol events backdated by up to 72 hours, so a deal won weeks after the click is recorded as today's event, and it ties the event to a browser's client ID rather than to the buyer. Deals with no client ID, such as calls and imports, never arrive. For revenue by campaign, write the campaign onto the Pipedrive deal and sum won value there.

How do I get UTM parameters into Pipedrive?

Pipedrive's Web Forms documentation does not mention UTM parameters or hidden fields, so the usual routes are a marketplace app such as GA Connector, a form tool that passes hidden fields into Pipedrive custom fields, or an attribution tool that writes them through the API. Whatever you choose, put source, medium and campaign on the deal as well as the person, because the deal is where the revenue is reported.

Why don't GA4 conversions match my won deals in Pipedrive?

They count different things. GA4 counts events per browser session, with a client ID that changes across devices and cookie clears, and it withholds rows when counts are low. Pipedrive counts deals, including ones that came from calls, referrals and imports that GA4 never saw. The Measurement Protocol also returns success for malformed requests, so missing events fail silently. Reconcile the two monthly and expect Pipedrive to be higher.

Revenue by campaign

Ready to see which campaigns closed your Pipedrive deals?

LeadJourney records every click first-party on your own domain, joins it to the Pipedrive person and deal, and sends won revenue back to Meta, Google, LinkedIn and Microsoft. Live in 21 minutes, 14-day free trial.

LeadJourney dashboard showing lead sources, campaign performance and attributed revenue side by side