DataSag guides · Updated 27 October 2026

Install DataSag on Ruby on Rails

Add DataSag to Ruby on Rails through the head of the applicable ERB application layout. Create a project first, then replace the example public key with the key from your dashboard.

Where to put the tracking script

Add the deferred external script once inside the head of the layout your public Rails views use, commonly app/views/layouts/application.html.erb. Preserve yield, asset tags, CSRF metadata and policy helpers. Inspect controller-specific layouts before assuming the application layout covers every route.

<script defer src="https://www.datasag.com/tracker.js" data-datasag-key="YOUR_PUBLIC_KEY"></script>

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 Ruby on Rails setup mistake

Turbo Drive, Turbo Frames and a full document visit have different lifecycles. The current tracker is a browser script with History API handling, not a native Turbo adapter. Test full-page and Turbo navigation before claiming coverage, and avoid placing the loader in each frame response.

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 goal attribute for click intent. For confirmed actions, use the actual browser success result or a deliberately designed confirmation page. An Active Record callback does not run in the visitor browser.

<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 Ruby on Rails 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.