Troubleshooting GTM Integration

If your Kelkoo Sales Tracking installation via GTM isn't working correctly, start with the verification steps below, then check the relevant issue.

This page covers the current template-based GTM installation described in Installation via Google Tag Manager (GTM).

Verify that your GTM makes the correct call

  1. Log in to your Kelkoo Merchant Center, and use View your Kelkoo store page to reach your website via a Kelkoo Group offer link.

  2. Open your browser's developer console (F12, or right-click the page → Inspect), then open the Network tab.

  3. Complete a test purchase — ideally with a promo/coupon code applied, so you can confirm optional fields too.

  4. On the confirmation page, filter the Network tab for a call to /st on s.kelkoogroup.net (or the fallback pixel /k.gif).

  5. Open the call and check its parameters: confirm comId/country match your account, orderId/orderValue are present, and any optional fields you've configured (coupon, returning customer, etc. — see Step 3.4/3.5 of the install guide) appear as expected.

If you don't see a call to /st at all, open GTM's Preview mode (Step 1.1 of the install guide) and repeat the test purchase — check whether the Kelkoo Sales Tracking tag shows as fired for that page in the Tag Assistant summary. If it didn't fire, see Issue 1 below. If it fired but no /st call appears, check the Console tab for JavaScript errors.

Common issues

Issue 1: The tag doesn't fire at all

  • Confirm your GTM container has been published (Step 4.2 of the install guide) — changes in the workspace only take effect once published.

  • Confirm the custom event trigger created in Step 2 is attached to the Kelkoo Sales Tracking tag (Step 3.6), and that its Event name exactly matches the event pushed by your Data Layer's purchase event (case-sensitive) — re-check this in Tag Assistant's Data Layer tab (Step 1.6) if unsure.

  • Confirm your platform actually pushes a purchase event to window.dataLayer on the confirmation page. Some platforms only push it once on initial page load, so manually reloading the confirmation page may not reproduce it — repeat the full checkout flow instead.

Issue 2: Order ID / Order Value are empty or incorrect

  • If you left these fields blank on the tag (recommended when your Data Layer follows the standard GA4 or Universal Analytics format — see Step 1), confirm your purchase event actually matches one of those two shapes. A close-but-not-exact match — a different key name, or values nested one level deeper than expected — won't be picked up automatically.

  • If you mapped a custom Data Layer Variable to these fields instead, use GTM Preview mode to confirm the variable resolves to a non-empty value at the moment the tag fires — a value that only becomes available slightly later will be read as empty.

  • Order Value defaults to GA4's net value (excluding tax and shipping) when auto-detected. If the value looks lower than expected, this is expected behaviour — see the note in Step 3.4 of the install guide if you need the gross total instead.

Issue 3: Coupon, Returning Customer, or other optional fields aren't appearing

  • Confirm the field is present in your Data Layer's purchase event under the exact expected key (see the table in Step 3.4 of the install guide) — for example, ecommerce.coupon, ecommerce.customer_type.

  • Returning Customer, Payment Status, and Customer Lifetime Value are never auto-detected from a standard Data Layer — they always require either a compliant ecommerce.customer_type value (Returning Customer only) or a Custom JavaScript Variable mapped explicitly on the tag. See Step 3.5 of the install guide.

  • If you're on the legacy Universal Analytics format, remember it has no equivalent for Returning Customer at all — this will always stay empty unless you add a Custom JavaScript Variable or migrate to GA4.

Issue 4: Sales are tracked but under-reported compared to your own analytics

  • Check your Consent Management Platform (CMP) configuration — the Kelkoo Sales Tracking tag must not be gated behind consent, only the Lead Tag should be. A CMP that blocks both identically will silently drop sales from users who declined consent, since Kelkoo relies on legitimate interest — not consent — for the Conversion Tag. See Configuring Consent Management (CMP) .

  • Confirm the Kelkoo Lead Tag (Step 4 of the install guide) fires on All Pages, not just the homepage or landing pages. If it's missing on some entry pages, users arriving there won't get a tracking cookie, and their eventual purchase won't be attributed.

Issue 5: You push purchase data to the Data Layer yourself via a separate GTM tag

If your platform doesn't natively push a purchase event, and you instead use a Custom HTML tag in GTM to push one manually into window.dataLayer:

  • Make sure that tag's firing priority is set higher than the Kelkoo Sales Tracking tag's, so the Data Layer is populated before Kelkoo's tag reads it (a higher number fires first in GTM's Advanced Settings).

  • If you're unsure whether this applies to you, check Step 1.6 of the install guide — if your purchase event and its ecommerce object appear correctly in Tag Assistant's Data Layer tab, firing order is not your issue.

Issue 6: Custom Data Layer Variable set up in Advanced returns the wrong value

  • Double-check the exact path entered in Data Layer Variable Name against what actually appears in your Data Layer — a small typo or an extra/missing nesting level (e.g. checkout.total vs checkout.grandTotal) will silently resolve to an empty value rather than an error.

  • Confirm you selected the variable via the variable picker on the Kelkoo tag (the "lego" icon) rather than typing its name as plain text — a plain-text field name is never interpreted as a variable reference.

Still having issues?

Contact Kelkoo Support via your Merchant Center.