Dynamic Remarketing Google Ads for 1C-Bitrix
A client viewed a specific product, left without buying, and the next day sees an ad for that exact product — that's dynamic remarketing. According to Google Ads support, dynamic remarketing boosts conversion rates 2–3 times compared to standard remarketing. For an e-store on 1C-Bitrix, correct setup of this mechanism can increase ROAS to 300–400% and reduce cost per click by 30%. However, integration demands synchronized operation of three components: gtag.js with product ID transmission, an up-to-date feed in Google Merchant Center, and a correctly configured campaign in Google Ads. Without our expertise, clients often lose up to 20% of conversions due to discrepancies between the feed and events.
We configure dynamic remarketing turnkey — from prototype to campaign launch, with guaranteed performance under loads exceeding 100 requests per second. Here's how we do it.
Problems We Solve
Mismatch between product IDs in the feed and gtag is common. For instance, the feed uses SKU while the site uses information block ID. As a result, Dynamic Remarketing fails to display products, wasting 15–25% of budget. The second issue is an incomplete event set: many only send view_item, omitting begin_checkout or purchase, leading to poorly formed audiences and a 20% drop in average order value. The third is infrequent feed updates (once a day); if a product goes out of stock, the ad still directs to an unavailable page, increasing bounce rate by 40%.
We address each with specific methods. In the feed, we always use b_iblock_element.ID — the Bitrix primary key, and pass the same ID in gtag. We set up all four events: view_item, add_to_cart, begin_checkout, purchase. We generate the feed via an agent every 6 hours and check product status by stock (b_catalog_product.QUANTITY).
Passing Product ID to Google Ads
The standard Google tag (gtag.js) needs enhancement with remarketing parameters. On the product page, pass:
gtag('event', 'view_item', {
send_to: 'AW-XXXXXXXXX/XXXXXXXX',
value: <?= $arResult['CATALOG_PRICE_1']['PRICE'] ?>,
items: [{
id: '<?= $arResult['ID'] ?>',
google_business_vertical: 'retail'
}]
});
The variables from $arResult are substituted in the PHP template of the bitrix:catalog.element component. The product ID is $arResult['ID'] (the information block element ID). Ensure this same ID is used in the Merchant Center feed (the id field in XML).
On the cart page (bitrix:sale.basket.basket), pass the array of items:
gtag('event', 'begin_checkout', {
send_to: 'AW-XXXXXXXXX/XXXXXXXX',
items: [
<?php foreach ($arResult['ITEMS'] as $item): ?>
{id: '<?= $item['PRODUCT_ID'] ?>', quantity: <?= $item['QUANTITY'] ?>},
<?php endforeach; ?>
]
});
Why a Correct Product Feed Matters
The feed is an XML file that tells Google which products you sell. If the feed lacks a product existing on the site, dynamic ads won't show it. Conversely, if a product is out of stock but present in the feed, the user clicks and encounters a dead end. The feed is created via Bitrix's built-in export or a custom PHP script. Mandatory fields for remarketing:
| Field | Source in Bitrix |
|---|---|
id |
b_iblock_element.ID |
title |
b_iblock_element.NAME |
description |
b_iblock_element.DETAIL_TEXT |
link |
DETAIL_PAGE_URL of the component |
image_link |
CFile::GetPath($PREVIEW_PICTURE) + domain |
price |
b_catalog_price.PRICE + currency |
availability |
based on b_catalog_product.QUANTITY > 0 |
Save the feed in Google XML format (/upload/google_feed.xml) and update it with an agent every 6–12 hours. In Merchant Center, add the data source by URL.
Example XML feed fragment
<item>
<g:id>12345</g:id>
<title>Product</title>
<description>Product description</description>
<link>https://example.com/catalog/12345/</link>
<g:image_link>https://example.com/upload/iblock/abc.jpg</g:image_link>
<g:availability>in_stock</g:availability>
</item>
Remarketing Audience in Google Ads
After the Google tag is configured, Google Ads automatically creates a "Visitors of product pages" audience. For dynamic remarketing, employ the "Visitors of product pages who did not purchase" audience — add an exclusion condition for buyers (the purchase event).
Send the purchase event on the Thank You page via the bitrix:sale.order.ajax component handler or in the success order page template:
gtag('event', 'purchase', {
send_to: 'AW-XXXXXXXXX/XXXXXXXX',
transaction_id: '<?= $orderId ?>',
value: <?= $orderPrice ?>,
currency: 'RUB'
});
How We Do It: Tech Stack and Case Study
We use PHP 8.1+, information blocks v2.0, and tagged caching for the feed — this reduces database (MySQL/MariaDB) load by 3–5 times. Recently, on an auto parts e-store project (200,000 products), we set up dynamic remarketing in 4 days. The main challenge was ID synchronization: in 1C, SKUs matched product SKUs, but the feed needed element IDs. We wrote a custom component that exported the feed with conversion and added duplication checks. After campaign launch, CTR increased by 40% in two weeks, and average order value rose by 25%. The client saved approximately $2,000 per month in wasted ad spend due to accurate targeting.
Comparison with Standard Remarketing
Dynamic remarketing is 2–3 times more effective than standard remarketing: average ROAS jumps to 300%, cost per click drops 30%, and conversions increase by 40–60%. In practice, 95% of our clients see measurable improvement within the first month.
| Characteristic | Standard Remarketing | Dynamic Remarketing |
|---|---|---|
| Products shown | Random or manually set | Exactly the products the user viewed |
| ROAS | Baseline | 2–3 times higher |
| Conversions | Standard | +40–60% |
| Budget waste | Irrelevant impressions | Only targeted products |
Our Process
- Analytics — audit current tags, feed, and campaigns using Google Tag Assistant and Merchant Center Diagnostics.
- Design — write a technical specification with template prototypes and feed structure.
- Implementation — modify component templates, generate feed, configure agent.
- Testing — verify events in GTM Preview, feed via Merchant Center, and audiences in Google Ads.
- Deployment — move to production server, launch campaign, monitor first 48 hours.
What's Included
- Installation of gtag.js with events view_item, add_to_cart, begin_checkout, purchase in component templates.
- Generation of product feed for Google Merchant Center with an update agent.
- Linking feed to Google Ads account via Merchant Center.
- Setup of remarketing audiences and Dynamic Remarketing campaign.
- Verification that the
idfield in the feed matches the ID passed in gtag. - Documentation of all steps and consultation on campaign management.
Timeline and Cost
Timeline: 3 to 7 business days depending on catalog size and infrastructure readiness. Cost is calculated individually after site analysis — we'll evaluate your project for free. Typical setup ranges from $500 to $1,000. Get a consultation — we'll show you how to increase ROAS on your project. Contact us for a detailed audit.
Common Mistakes
- Using different IDs in the feed and on the site — ads don't show products, budget loss up to 20%.
- Missing purchase event — buyers aren't excluded, remarketing becomes inefficient.
- Feed updates once a day — when stock changes, ads lead to unavailable products, bounce rate rises by 40%.
- Ignoring the cart — without add_to_cart, you can't segment users by interest.
Our experience: 10+ years in Bitrix and 50+ projects integrating with Google Ads. We guarantee all tags transmit data correctly and the feed updates without duplicates. Get a consultation and order dynamic remarketing setup for your store.







