Tracking
Ahoy.js​
For first-party analytics, we use the
ahoy.js library, which tracks visits and
events. This library works in conjunction with the ahoy_matey gem, which is
documented in our backend tracking guide.
Configuration​
The configuration for ahoy.js lives in app/assets/javascripts/base.js.erb.
Since we do not track user cookies on the backend, we have configured
ahoy.js's defaults to match that on the frontend.
Events​
In order to track an event, use the ahoy.track function:
ahoy.track(name, properties);
This function will send a POST request to the /ahoy/events endpoint on our
backend with the name and properties of the event. The backend endpoint will
also create a corresponding Ahoy::Visit for the event if one does not exist
already.