Nuxt Gtag Versions Save

🔸 Google Tag integration for Nuxt: Google Analytics, Google Ads and more

v2.0.5

2 months ago

   🐞 Bug Fixes

    View changes on GitHub

v2.0.4

2 months ago

   🏎 Performance

  • Resolve options raw once  -  by @johannschopplich (0e4bb)
    View changes on GitHub

v2.0.3

2 months ago

   🐞 Bug Fixes

  • Resolve raw options  -  by @johannschopplich (58507)
    View changes on GitHub

v2.0.2

2 months ago

   🐞 Bug Fixes

    View changes on GitHub

v2.0.1

2 months ago

No significant changes

    View changes on GitHub

v2.0.0

2 months ago

Migration Guide

The latest version of Nuxt Gtag improves the API and adds support for Google Tag Consent Mode v2. This migration guide will help you to upgrade your project from the previous version to the latest one.

Migrating initialConsent

This module option has been renamed to enabled. If you have set initialConsent to false in your configuration, you should rename it to enabled.

export default defineNuxtConfig({
  modules: ['nuxt-gtag'],

  gtag: {
    id: 'G-XXXXXXXXXX',
-    initialConsent: false
+    enabled: false
  }
})

Migrating grantConsent

This function has been renamed to initialize. If you have used grantConsent in your project, you should rename it to initialize.

const { 
    gtag,
-    grantConsent
+    initialize
} = useGtag()

- grantConsent()
+ initialize()

Migrating revokeConsent

Before v2, grantConsent and revokeConsent were used to enable and disable analytics. But the abstraction was not clear, because they didn't work for other Google products like Google Ads.

Now, you can use enableAnalytics and disableAnalytics to enable and disable analytics.

[!TIP] Follows the Google Consent Mode v2 specification.

Set a default value for each consent type you are using. By default, no consent mode values are set.

The following example sets multiple consent mode parameters to denied by default:

export default defineNuxtConfig({
  modules: ['nuxt-gtag'],

  gtag: {
    id: 'G-XXXXXXXXXX',
    initCommands: [
      // Setup up consent mode
      ['consent', 'default', {
        ad_user_data: 'denied',
        ad_personalization: 'denied',
        ad_storage: 'denied',
        analytics_storage: 'denied',
        wait_for_update: 500,
      }]
    ]
  }
})

After a user indicates their consent choices, update relevant parameters to granted:

function allConsentGranted() {
  const { gtag } = useGtag()
  gtag('consent', 'update', {
    ad_user_data: 'granted',
    ad_personalization: 'granted',
    ad_storage: 'granted',
    analytics_storage: 'granted'
  })
}

function consentGrantedAdStorage() {
  const { gtag } = useGtag()
  gtag('consent', 'update', {
    ad_storage: 'granted'
  })
}

// Invoke the consent function when a user interacts with your banner
consentGrantedAdStorage() // Or `allConsentGranted()`

   🚨 Breaking Changes

  • Rename initialConsent to enabled  -  by @johannschopplich (b342e)
  • Rename grantConsent to initialize  -  by @johannschopplich (3bd75)
  • disableAnalytics and enableAnalytics  -  by @johannschopplich (998fe)

   🚀 Features

  • Google tag consent mode v2  -  by @johannschopplich (903b9)
  • initCommands  -  by @johannschopplich (d9706)
    View changes on GitHub

v1.2.1

2 months ago

   🐞 Bug Fixes

    View changes on GitHub

v1.2.0

3 months ago

   🚀 Features

   🐞 Bug Fixes

  • Resolve runtime options in client  -  by @johannschopplich (49f9a)
  • Init all tags when granting consent  -  by @johannschopplich (acd0b)

   🏎 Performance

  • Load client plugin in parallel  -  by @johannschopplich (b7af8)
    View changes on GitHub

v1.1.2

4 months ago

   🚀 Features

  • Log missing Google analytics ID  -  by @johannschopplich (59a63)
    View changes on GitHub

v1.1.1

8 months ago

   🚀 Features

    View changes on GitHub