Install guide · generic · ~2 min
Paste one tag into your
.The script tag is the universal way to install Admaxxer. If your platform lets you edit the site head (or inject custom HTML), you can install in under a minute. No build step, no dependencies. Building a custom-website SaaS with signups, free trials, and recurring revenue? See the SaaS install guide for the end-to-end funnel wiring.
In the Admaxxer dashboard, open Sites and copy the website ID for the site you want to track. Note your canonical domain too (e.g. example.com, no protocol).
Add the tag below to the <head> of every page. Replace YOUR_WEBSITE_ID and yourdomain.com with your real values.
<script defer
data-website-id="YOUR_WEBSITE_ID"
data-domain="yourdomain.com"
src="https://admaxxer.com/js/script.js"></script>
Four script variants are available on the same CDN path: script.js (default, cookie-based), script.hash.js (SPA hash routing), script.cookieless.js (no cookies, GDPR-safe, honors DNT), script.plus.js (auto-captures outbound clicks, downloads, 404s, form submits, rage clicks). Self-host via script.local.js with data-proxy-origin.
The snippet above loads from admaxxer.com — which ad-blockers and tracking-prevention extensions strip, silently dropping events and skewing your numbers. To capture the ~20% of visits lost to blockers and Safari, point a subdomain like t.yourdomain.com at Admaxxer so the pixel loads first-party instead. More events captured means more accurate attribution and revenue. Set it up in /integrations (~5 minutes, included on every plan); once verified, the dashboard hands you the updated snippet with data-proxy-origin pre-filled. Full walkthrough: /documentation/first-party-cname.
For custom-website SaaS like signup → trial → paid conversion: (1) Fire a goal when the signup form posts: <button data-admx-goal="Signup"> on the submit button (zero JS), or call window.admaxxer('Signup', { plan, source }) in your form-submit handler. (2) Identify the user post-signup: window.admaxxer.identify(userId, { email, plan }) — this stitches the anonymous visitor to the now-identified account so all downstream revenue events are attributed correctly. (3) Fire trial events from your server when you create the Stripe subscription: window.admaxxer('Trial Started', { plan, trial_end }). See the full SaaS install guide for the end-to-end flow.
Load any public page on your site in a fresh browser tab. Within a few seconds, the Admaxxer dashboard realtime view should show the event. If nothing lands after 2 minutes, re-check the snippet is actually in the rendered HTML <head> (View Source, not just DevTools).