Skip to main content

Hosting the JavaScript tracker

We recommend self-hosting the Snowplow JavaScript tracker, sp.js, as it has some definite advantages over using a third-party-hosted JavaScript:

  1. Hosting your own JavaScript allows you to use your own JavaScript minification and asset pipelining approach (e.g. bundling all JavaScripts into one minified JavaScript)
  2. As Douglas Crockford put it about third-party JavaScripts: “it is extremely unwise to load code from servers you do not control.”
  3. Renaming sp.js will ensure that Snowplow continues to function in the presence of ad/content blockers, which typically block sp.js (see e.g. EasyPrivacy)

Below are guides for hosting the minified sp.js asset on Amazon Web Services and Google Cloud Platform. This is our recommended strategy for self hosting however there are other options available to self hosting sp.js, you may choose to bundle it into your application directly or host with a different provider as two examples.

The latest minified version of the Snowplow JavaScript Tracker, called sp.js, is available from the JavaScript Tracker GitHub releases. If you don't need all the functionality included in sp.js, there is also a sp.lite.js bundle for v3 that includes fewer plugins. For more custom requirements, you can build your own v3 bundle using your own selection of plugins, which is only an option if you are self-hosting.