Integrating Google Ads with Bitrix24

Our company is engaged in the development, support and maintenance of Bitrix and Bitrix24 solutions of any complexity. From simple one-page sites to complex online stores, CRM systems with 1C and telephony integration. The experience of developers is confirmed by certificates from the vendor.
Our competencies:
Development stages
Latest works
  • image_website-b2b-advance_0.png
    B2B ADVANCE company website development
    1175
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Website development for FIXPER company
    811
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Development based on Bitrix, Bitrix24, 1C for the company Development of an Online Appointment Booking Widget for a Medical Center
    564
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Development based on 1C Enterprise for MIRSANBEL
    747
  • image_crm_dolbimby_434_0.webp
    Website development on CRM Bitrix24 for DOLBIMBY
    655
  • image_crm_technotorgcomplex_453_0.webp
    Development based on Bitrix24 for the company TECHNOTORGKOMPLEKS
    976

Google Ads Advertising Cabinet Integration with Bitrix24

Ad budget in Google Ads — 300 thousand per month. In CRM same month — 90 leads from "internet." How many came specifically from Google Ads? Which campaigns worked? Manager answers: "Well, we asked clients, most say — found in search." That's not analytics, it's guesswork. Tying Google Ads to B24 gives precise numbers: campaign spend, lead count, deal conversion, revenue, ROI. Without manual table reconciliation.

Standard Connection via CRM Marketing

B24 supports Google Ads integration via CRM → Marketing → Ad Cabinets. Connection:

  1. Authorization via Google account linked to ad cabinet.
  2. Select Google Ads account (if manager account — select specific client).
  3. Campaign mapping — B24 pulls list of active campaigns.
  4. Expense import — automatically, daily.

After connection, CRM analytics shows Google Ads expense data alongside CRM data: leads, deals, revenue.

UTM Markup and gclid

"Google Ads click → CRM lead" connection works via two mechanisms:

UTM Tags — manual URL markup in ads:

utm_source=google
utm_medium=cpc
utm_campaign={campaignid}
utm_content={creative}
utm_term={keyword}

Google Ads supports tracking templates at account level — UTM tags added automatically to all ads.

gclid (Google Click ID) — automatic parameter Google adds to URL on click. Unique click ID, critical for offline conversions.

On lead creation in B24, both data types saved:

  • UTM fields — to standard lead fields (UTM_SOURCE, UTM_CAMPAIGN, etc.)
  • gclid — to custom field UF_CRM_GCLID

Lead and Deal Attribution

CRM analytics report groups leads and deals by UTM tags. For Google Ads detail available:

Level What's Visible
Source (utm_source=google) All leads from Google Ads — full picture
Campaign (utm_campaign) Which campaign brought leads
Ad Group (utm_content) Which ad converts better
Keyword (utm_term) Which queries bring buying customers

For correct attribution: UTM tags must reach CRM without loss. Typical loss points: site redirect, SPA without server parameter handling, forms without hidden UTM fields.

Expense Import and ROI Report

Expenses imported from Google Ads by campaign. In CRM analytics calculated:

  • CPL (Cost Per Lead) — campaign spend / lead count from this campaign
  • CPS (Cost Per Sale) — spend / number of closed deals
  • ROI — (deal revenue − ad spend) / spend × 100%
  • Lead → Deal Conversion — percent of leads reaching deal

Example: "Search — Brand" campaign spent 30,000 ₽, brought 40 leads, 12 became deals for 480,000 ₽. ROI = (480,000 − 30,000) / 30,000 × 100% = 1,500%. Campaign "КМС — Broad Interests" spent 50,000 ₽, brought 60 leads, 2 deals for 40,000 ₽. ROI = −20%. Conclusion obvious — but without integration you can't get these numbers.

Offline Conversions in Google Ads

Google Ads, like Yandex.Direct, supports offline conversion upload. Lets Smart Bidding algorithms optimize bids on real sales, not intermediate conversions (form submission).

Transmission scheme:

  1. Visitor clicks ad → Google adds gclid to URL.
  2. Site saves gclid in cookie and passes to CRM on lead creation (hidden form field).
  3. In B24 gclid saved to lead custom field, inherited by deal on conversion.
  4. Deal closes successful → script sends data to Google Ads via Conversion Upload API: gclid, conversion name, date, amount.
  5. Google Ads receives data, accounts for it in bid optimization and reporting.

Requires: configured conversion action in Google Ads (type "Import → CRM"), Google Ads API access via service account or OAuth.

Enhanced Conversions

If gclid couldn't be saved (user came from different device, cookies cleared), Google supports Enhanced Conversions — sending conversions via hashed user data (email, phone). B24 has this data in contact card — hashed (SHA-256) and sent to Google Ads API.

Extended Analytics via Google Ads API

For detail beyond standard B24 capabilities use Google Ads API:

  • Search Query Reports. search_term_view — actual user queries leading to clicks. Matching with CRM conversions shows which queries bring sales.
  • Spend by Device. Mobile vs. desktop — where's higher deal conversion.
  • Spend by Geolocation. Which regions bring paying deals.
  • Performance Max. Performance Max reporting limited in Google Ads interface, but through API data on assets and audiences available.

Data exported by script to B24 BI builder or external BI system (Google Looker Studio, Power BI).

Typical Issues

  • gclid not saving. SPA site doesn't pass GET parameters to form. Solution: JavaScript handler reading gclid from URL on load and saving to form hidden field + cookie.
  • Duplicate Conversions. One deal sent to Google Ads twice. Solution: unique order_id (B24 deal ID) in each upload — Google deduplicates.
  • Timezone Difference. Google Ads counts spend by account timezone, B24 by server. Reconciling specific date possible discrepancies. Solution: reconcile by full weeks or months.
  • API Blocking. Google Ads API requires Developer Token with minimum "Basic" access. To obtain — request through Google Ads Manager.

What We Configure

  • Connecting Google Ads to B24 via standard CRM marketing module
  • Setting up tracking templates with UTM markup at account level
  • Saving gclid on site and transmitting to CRM on lead creation
  • Importing expenses by campaigns and ad groups
  • Setting up ROI reports: by campaign, keyword, device
  • Setting up offline conversion upload from CRM to Google Ads (gclid + Enhanced Conversions)
  • Creating conversion action in Google Ads to receive data from CRM
  • Training marketer: analyzing reports, identifying unprofitable campaigns, budget optimization based on CRM data