Radar is designed with privacy in mind and includes features to help your customers comply with regulations like GDPR and CCPA. By default, Radar uses session storage. You can configure it to require active consent from your customer’s users before using persistent storage (cookies and localStorage).

How It Works

When you enable consent management, Radar operates in two stages on your customer’s website:
  1. Before Consent: The tracker is fully functional but stores all data (like the device ID and user traits) in the end user’s sessionStorage. This data is cleared when the user closes their tab.
  2. After Consent: Once the end user gives consent, a specific Radar function must be called. The tracker then migrates all data from sessionStorage to localStorage and will use persistent storage from that point forward, allowing it to remember users across multiple sessions.
To enable consent management, set the waitForConsent option to true in your Radar loader script configuration.
HTML
<script>
  !function(e){ /* ...loader script... */ }({
    // ... other settings
    "namespace": "YourAppName",
    "waitForConsent": true
  });
</script>
When this setting is active, Radar will not use cookies or localStorage on your customer’s site until you explicitly tell it to via the giveCookieConsent method. Your customer will need to implement logic to call the giveCookieConsent() method on the tracker’s namespace object when one of their users provides consent (for example, by clicking “Accept” on a cookie banner).
// Your customer calls this when their user accepts the cookie policy
YourAppName.giveCookieConsent();
Calling this function does two things:
  • It signals to Radar that it now has permission to use persistent storage for that end user.
  • It migrates any existing anonymous ID and user traits from that user’s session storage to localStorage, so their identity is maintained.
The giveCookieConsent function only needs to be called once per user. Radar will remember that consent has been granted for all future sessions from that device.
Here is a simple example of how your customer could integrate Radar with a common cookie consent banner on their website. You can provide this snippet to them as a guide.
HTML
<!-- A cookie banner on your customer's website -->
<div id="cookie-banner">
  <p>We use cookies to improve your experience. Do you accept?</p>
  <button id="accept-cookies">Accept</button>
</div>

<script>
  // The Radar loader script you provide to your customer
  !function(e){ /* ...loader script... */ }({
    "namespace": "YourAppName",
    "waitForConsent": true
  });

  // Logic for the cookie banner
  const banner = document.getElementById('cookie-banner');
  const acceptBtn = document.getElementById('accept-cookies');

  acceptBtn.addEventListener('click', () => {
    // 1. Grant consent in Radar
    window.YourAppName.giveCookieConsent();

    // 2. Hide the cookie banner
    banner.style.display = 'none';

    // 3. (Optional) Store consent preference in a separate cookie
    //    so the banner isn't shown again to this user.
    document.cookie = "cookie_consent=true; path=/; max-age=31536000";
  });
</script>