Yandex.Direct Advertising Cabinet Integration with Bitrix24
Marketer launches campaigns in Yandex.Direct, leads come to CRM, managers process. Month end — report. Marketer takes expenses from Direct, lead count from B24, divides one by other. CPL came out 1,200 rubles. But which campaigns brought leads that actually bought? How much did search campaigns earn vs. display? Silence. Without tying ad spend to specific CRM deals, marketing works blind. Yandex.Direct to B24 integration solves this.
Standard Integration via CRM Marketing
Bitrix24 has built-in module for connecting ad cabinets: CRM → Marketing → Ad Cabinets → Yandex.Direct. Standard integration allows:
- Importing campaign expenses from Direct to B24
- Seeing expenses in CRM analytics reports
- Linking leads/deals with ad campaigns via UTM tags
Connection: OAuth authorization via Yandex → select ad cabinet → map campaigns. Expense data pulled automatically daily.
UTM Tags and Lead Attribution
"Ad campaign → lead" connection works via UTM tags. Each Direct ad must contain marked links:
utm_source=yandex
utm_medium=cpc
utm_campaign={campaign_id}
utm_content={ad_id}
utm_term={keyword}
On lead creation (via website form, B24 widget, or manually) UTM parameters saved to lead fields:
- UTM_SOURCE — source (yandex)
- UTM_MEDIUM — traffic type (cpc)
- UTM_CAMPAIGN — campaign ID or name
- UTM_CONTENT — ad ID
- UTM_TERM — keyword
On lead to deal conversion, UTM fields inherited. This lets you trace: keyword → ad → lead → deal → payment.
Expense Import and ROI Calculation
Standard expense import loads campaign data: spend per period, clicks, impressions. This data matched with CRM leads and deals.
"Ad Channel Effectiveness" report (CRM → Analytics) shows:
| Metric | Description |
|---|---|
| Spend | Sum from ad cabinet for period |
| Leads | Lead count with source UTM tag |
| Deals | Deals converted from these leads |
| Revenue | Sum of closed deals |
| CPL | Spend / lead count |
| ROI | (Revenue − Spend) / Spend × 100% |
Detail down to campaign level — which campaign in Direct brought paying deals, which only clicks without conversions.
Extended Analytics via Yandex.Direct API
Standard integration covers basic scenarios. For extended analytics use direct Yandex.Direct API v5 connection:
-
Keyword Report. Which search queries led to deal-turning leads. Method:
Reports→SEARCH_QUERY_PERFORMANCE_REPORT. - Ad Group Expenses. Spend detail not just by campaign but by group and ad.
- Auto Import. Daily script via cron: request report from Direct → save data to custom fields or separate table → visualize in B24 BI builder.
To access Direct API, create app in Yandex.OAuth, get token with direct:read rights.
Offline Conversions
Yandex.Direct supports offline conversion upload — real purchase data made after ad click. Lets Direct algorithms optimize show not on clicks or leads but real sales.
Scheme:
- Lead comes from Direct with
yclid(Yandex Click ID) — unique click identifier. -
yclidsaved to lead/deal custom field in CRM. - When deal closes (status "Successfully Completed"), script sends
yclid+ amount + conversion date to Yandex.Metrics via offline conversion API. - Yandex.Direct uses this data for auto strategies: "Conversion Optimization" and "ROI Optimization."
Requires: configured Yandex.Metrics, Metrics linked to Direct, offline conversion goal.
Typical Issues
- Lost UTM Tags. Site redirect strips GET parameters. Solution: check redirect chain, set up end-to-end UTM transfer.
-
Duplicate Leads. One customer leaves two requests — two CRM records with one
yclid. Solution: deduplication by phone/email on lead creation. - Data Mismatch. Expenses in Direct don't match imported to B24. Reason: timezone difference, data update delay in API. Solution: reconcile for complete closed day, not current.
What We Configure
- Connecting Yandex.Direct ad cabinet to B24 via standard CRM marketing module
- Setting up UTM markup for all Direct campaigns (markup template)
- Checking end-to-end UTM transfer: website → form → CRM (lead/deal)
- Setting up
yclidsaving in CRM for offline conversions - Importing expenses by campaigns and ad groups
- Setting up ROI reports: by campaign, group, keyword
- Setting up offline conversion transmission from CRM to Yandex.Metrics
- Training marketer: reading reports, analyzing channel ROI, handling problem campaigns







