
Author Name
Emtiaz Hossain
Switch Jam, a UK marketing agency, had LinkedIn conversion tracking that had grown organically over time: a legacy base tag, a set of conversion actions built up lead magnet by lead magnet, and no recent audit of whether any of it was still firing cleanly. The job was straightforward on paper, upgrade to LinkedIn's Insight Tag 2.0, but the real work was making sure nothing duplicated and every conversion still mapped to a real trigger once the migration was done.
LinkedIn's Insight Tag 2.0 replaced the legacy base tag with improved matching and event handling. Sites still running the old base tag alongside newer event-based conversion actions risk two failure modes: conversions that silently stop firing after LinkedIn deprecates the old tag's supporting infrastructure, or worse, both tags firing simultaneously and double-counting the same conversion. Neither shows up as an obvious error, campaign reporting just quietly gets less trustworthy.
Before touching anything, the existing GTM container was pulled and every LinkedIn-related tag catalogued against LinkedIn Campaign Manager's own conversion list. This surfaced the real shape of the problem: a working set of conversion actions covering a genuinely wide range of triggers for a content-heavy agency site:
Several of these were the kind of conversions that accumulate over a site's life, added one at a time as new lead magnets launched, never revisited as a set. A few were flagged during the audit as ambiguous ("need discussion") because it wasn't clear from the container alone whether they were still connected to a live trigger on the site.
1. Upgrade the base tag. Replace the legacy LinkedIn Insight Tag with Insight Tag 2.0 in GTM, a single container-wide change rather than a per-conversion one.
2. Rebuild the conversion event map. Rather than assuming every existing conversion action was still correctly wired, each one was re-validated against its actual trigger: does "ebook_download" still fire on the current download button, does "newsletter_submit" still fire on the current form's submit event, does the Calendly-based booking conversion still fire on the current embed. Lead magnets and forms change over time without anyone updating the tracking that watches them, this is where stale conversions get caught.
3. Eliminate duplicate paths to the same conversion. Where a single real-world action (like booking a strategy call) had more than one tag capable of firing for it, across different landing page variants or different tracking mechanisms, those were consolidated so LinkedIn only ever received one signal per actual conversion.
4. Validate every conversion in Campaign Manager directly, not just in GTM preview mode. GTM preview confirms a tag fired, it doesn't confirm LinkedIn actually recorded and attributed the conversion correctly on its end. Each conversion action was checked against LinkedIn's own reporting to confirm it matched what the trigger was supposed to represent.
5. Confirm high-value conversions fire on the correct trigger specifically. The Calendly-based booking confirmation was checked end to end: does the conversion fire only once a meeting is actually scheduled, not just when someone opens the booking widget, since that distinction is the difference between tracking real pipeline and tracking page views with extra steps.
Compare the conversion count LinkedIn Campaign Manager reports for a given action against the actual number of real leads or bookings from the backend system that action is supposed to represent (a CRM, a booking calendar, form submission logs). A gap where the platform reports meaningfully more than the real event volume is the signal to check for duplicate tags or trigger conditions firing on the same action from more than one place.
Beyond eventual deprecation risk on the legacy tag, the bigger practical risk is accumulated drift, older implementations tend to have more conversion actions bolted on over time without review, which is exactly the condition that produces duplicate or stale conversions. The upgrade itself is usually the easy part, auditing what's actually still correct is where the real value is.
A form fill measures intent to book, the Calendly confirmation measures an actual scheduled meeting. Those are different funnel stages with very different value, and conflating them means an ad platform's bidding algorithm optimizes toward the wrong outcome, more form starts rather than more booked calls.
Discussed this on LinkedIn
Found this helpful?
Drop a comment on the LinkedIn post – I read every reply and love connecting with tracking folks.
Book a free 30-minute call. I will review your current tracking setup, show you where conversions are leaking, and tell you exactly what I would fix.
A full GA4/GTM/Google Ads audit on a UK Shopify store spending £18,000+/month found duplicate conversion tags inflating reported purchases 2x, a dropped GCLID at checkout, and misconfigured variables silently degrading Enhanced Conversions. Here's the audit, the fixes, and the migration off a legacy GTM setup before Shopify's deprecation deadline.
Duplicate form conversions in GA4 are usually a reload firing the same tag twice, not a real second submission. Here's the Custom JavaScript variable that catches it, plus other common causes to rule out.
WPForms has two submission modes, AJAX and non-AJAX, that need completely different GTM tracking patterns. Here's the real code for both, plus the validation logic non-AJAX forms need.