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.