Documentation

Everything, on one page.

The tag is one line. The rest of this page is the handful of options a real site ends up wanting.

Install

One line in the <head> of every page:

<script defer src="https://rialto.example/sl.js" data-site="yoursite"></script>

Local runs tag themselves as development automatically (localhost, 192.168.*), and the dashboard shows production by default, so your own testing never pollutes the numbers. Installing on Webflow? There is a dedicated guide.

Content-Security-Policy sites

A site that sends a CSP needs the Rialto origin in two directives, and the second one is the one everybody forgets. With only script-src the tag loads and silently records nothing.

script-src  ... https://rialto.example;
connect-src ... https://rialto.example;

Custom events

From markup, with no JavaScript to write - any element can fire an event when clicked, and any block can be named so its attention is timed:

<button data-sl-event="demo_request">Book a demo</button>
<section data-sl-section="Pricing table">...</section>

From code, when a value matters - numbers get histograms, everything else gets breakdowns:

window.sl('speed_change', { context: 'player', value: 60 });

Goals

In Settings, name one event as the site's conversion. The overview then leads with the conversion rate, the weekly digest reports it against last week, and the Events view badges it.

Campaigns

Standard utm_source, utm_medium and utm_campaign parameters are recorded automatically. A Campaign breakdown appears in the overview the moment the first tagged visit arrives.

By default the tag handles consent itself: it detects a consent tool already on the page (TCF-standard popups, Cookiebot, OneTrust) and obeys its analytics choice; if none exists it shows a small banner of its own, once. Accept sets a first-party identity cookie; decline keeps the visitor fully counted but anonymous. Control it with data-consent:

data-consent="auto"      detect a CMP, else ask once   (default)
data-consent="external"  never ask; obey the CMP or your code
data-consent="assume"    set the cookie without asking
data-consent="off"       stay fully cookieless

From code, for custom consent flows: window.sl.consent('granted') or window.sl.consent('denied').

Settings mints a read-only link scoped to one site: it can see that site's data and nothing else - no other sites, no settings, nothing that spends money. Rotating the key kills the old link instantly.

Search Console and the AI panel

Connect Search Console with two clicks (add our reader address to your property) and search data joins behaviour on every page's detail view. The Answer Share panel then sources its weekly questions from your own queries.