Installing the Uptick Tracking Pixel

Ensure that we can attribute purchases at the end of checkout we ask that you either place our client-side pixel on the thank you page or issue a postback to our server. Both are equally supported on our side, please choose what is most reliable for you.

Inserting the Pixel

If you want to use the client-side pixel, you can place this javascript on your final thank you page for the purchase.

<!-- Start Uptick Snippet -->
<script>
!function(e,p,t,n,a,s,i){e[n]||((a=e[n]=function(){a.process?a.process.apply(a,arguments):a.queue.push(arguments)}).queue=[],a.t=+new Date,(s=p.createElement(t)).async=1,s.src="https://app.uptick.com/e/pixel.js?t="+864e5*Math.ceil(new Date/864e5),(i=p.getElementsByTagName(t)[0]).parentNode.insertBefore(s,i))}(window,document,"script","ppxd"),ppxd("init","AAAAAAAA-BBBB-CCCC-DDDD-EEEEEEEEEEEE"),ppxd("event","purchase");
</script>
<!-- End Uptick Snippet -->

The script tag contains an ID (AAAAAAAA-BBBB-CCCC-DDDD-EEEEEEEEEEEE). Ensure that you replace this with the correct ID assigned to your integration. Using an incorrect or generic ID will lead to unsuccessful widget activation.

Content Security Policy

If your site sends a Content Security Policy, it must allow the pixel to load and to report the purchase:

Directive Allow Why
script-src https://app.uptick.com Loads the pixel script (/e/pixel.js).
connect-src https://app.uptick.com Sends the purchase event. The pixel reports with navigator.sendBeacon, which connect-src governs.

The snippet itself is an inline script, so your policy also needs to permit it in one of two ways:

  • Nonce: add a nonce="…" attribute to the snippet’s <script> tag and include the same value as 'nonce-…' in script-src. Generate a fresh nonce for every page response.
  • Hash: add the snippet’s hash as 'sha256-…' to script-src (the hash goes in the policy, not on the tag). The hash covers the snippet’s exact contents, including your integration ID, so recompute it whenever the snippet changes.

Allowing https://app.uptick.com under img-src alone is not enough. The pixel never loads an image, so a policy that blocks it under connect-src drops every purchase event without breaking your page, and the conversions silently go missing.