Install on Vue.js
This guide covers a Vue application with an HTML entry document, including Vue with Vite. It does not describe a Nuxt-specific integration. Copy your token from Seean → Settings → Installation.
Add the tracker
In a Vite project, open index.html at the project root. Add this inside <head> and replace YOUR_SITE_TOKEN:
<script defer src="https://app.seean.io/k.js"
data-site="YOUR_SITE_TOKEN"
data-api="https://app.seean.io"></script>
Keep Vue’s existing entry script. For a Vue application loaded directly from HTML, use the same tag in that document’s head. Load the page through your development server, not a file:// URL. Vue setup patterns.
Use one installation. Putting this tag in App.vue, route templates or repeated onMounted callbacks can fail to execute it correctly or install it multiple times. If consent is required before analytics, use your site’s consent mechanism to control the single script load.
Vue Router
With createWebHistory, Seean observes supported pathname changes such as /products → /pricing. The tracker should remain loaded while the router navigates; do not add another pageview in router.afterEach.
With createWebHashHistory, paths after # are not separate Seean page paths by default. Add data-hash="true" to the script tag to count each hash route as a pageview reported as /#/pricing; see script options. A routing migration is not required merely to install Seean. Vue Router history modes.
Publish and verify
Use your project’s existing build command and deploy the result. Follow installation verification: match the script, POST request and path in Events, then check a router link, Back and Forward. A direct visit to a nested history route must also load your application; a host-level 404 needs a hosting configuration fix.
For localhost testing, add data-local and use a separate Seean test website. If data is absent, check the token, consent, privacy preferences, exclusions and CSP.
Events and removal
Send explicitly named custom events after the tracker is ready. Remove the tag from the HTML entry and redeploy to stop future collection. See script options for storage and token rotation behavior.
Something unclear? Contact support.