\n \n {% block content %}{% endblock %}\n"}]},{"@type":"HowToStep","position":3,"name":"Verify the install","text":"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)."}]}

Install guide · framework · ~2 min

Install Admaxxer on Django

Add the snippet to your base template.

Django apps extend a common base.html template. Adding the Admaxxer snippet once in the <head> block makes the pixel fire across every view.

Steps

  1. 1 Open your base template

    Edit templates/base.html (or whichever template your other templates extend).

  2. 2 Add the snippet to {% block head %}

    Paste the snippet inside the <head> block so every page rendering base.html inherits it.

    templates/base.html html
    {% load static %}
    <!DOCTYPE html>
    <html>
      <head>
        <title>{% block title %}{% endblock %}</title>
        <script defer
          data-website-id="YOUR_WEBSITE_ID"
          data-domain="yourdomain.com"
          src="https://cdn.admaxxer.com/js/script.js"></script>
      </head>
      <body>{% block content %}{% endblock %}</body>
    </html>
  3. 3 Verify the install

    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).

Verify installation

Troubleshooting

CSP blocks the script in production.
Add cdn.admaxxer.com to CSP_SCRIPT_SRC and CSP_CONNECT_SRC in your django-csp settings.
No events are showing up. What now?
Open DevTools Console and Network. Filter for script.js and /api/event. If they are blocked:csp, your Content Security Policy is blocking admaxxer.com — see /documentation/troubleshoot/csp. Also double-check that data-website-id matches the ID shown in your dashboard.
Events show up in staging but not production.
Confirm data-domain matches the production hostname exactly (no protocol, no trailing slash). Also confirm the website's Allowed Domains list in settings includes the prod domain.
My site is a single-page app — am I missing pageviews?
Use script.hash.js if you rely on location.hash routing. Otherwise the default script.js already hooks history.pushState/replaceState and tracks SPA navigations.