DataSag guides · Updated 27 October 2026

Install DataSag on VitePress

Add DataSag to VitePress through the head array in .vitepress/config.ts or its configured equivalent. Create a project first, then replace the example public key with the key from your dashboard.

Where to put the tracking script

Merge a script tuple into the global VitePress head array. Include the external src, an empty-string defer attribute and the public data-datasag-key. Preserve other head entries, build the documentation and inspect its published HTML. Global config covers ordinary pages generated from that site.

// Merge into the existing .vitepress config.
export default {
  head: [["script", {
    src: "https://www.datasag.com/tracker.js",
    defer: "",
    "data-datasag-key": "YOUR_PUBLIC_KEY"
  }]]
};

The project tracking key is public and belongs in this snippet. Account credentials, provider API keys and database secrets do not. Keep your existing consent choices and only load analytics when your site's policy permits it.

Verify the published installation

  1. Publish the change to the domain visitors actually use. Open a nested page as well as the homepage.
  2. In browser developer tools, find one tracker.js script with the correct data-datasag-key value.
  3. Filter Network requests for /api/track. Confirm that a pageview payload names the path you opened and receives a successful response.
  4. Open the same DataSag project and choose a date range containing your test. Confirm the page appears before measuring campaigns or conversions.

Avoid this VitePress setup mistake

VitePress also supports page-level head entries in frontmatter and custom theme code. A global script plus page or theme insertion can execute twice. Browser APIs belong in browser interaction code, not the Node-evaluated site configuration or an SSR render.

Keep pageviews separate from scroll, click and engagement events. A page can generate several tracking requests while still representing one visit to that path.

Events and conversions

Use a browser-side Vue handler in a custom component, or a goal attribute on markup you control. Call completed-action events after confirmation, and verify that route changes do not accumulate your custom event listeners.

<a href="/signup" data-datasag-goal="signup_click">Create account</a>

This attribute measures a click. To record a completed signup, call window.datasag.track in the application's confirmed success handler. Current plan details determine which event and campaign reports are available.

Setup and troubleshooting recipes

Platform reference

Official VitePress documentation explains the platform integration point. DataSag-specific behavior here follows the current tracker and project setup.

Need a different stack? Browse every installation guide.