Skip to content

Analytics tracking plan ​

This tracking plan covers the Segment analytics events sent by every Apollos product. It is the reference for every event and property we track, so our analytics tools stay consistent and the whole team reads the data the same way.

How it works ​

Apollos sends analytics through Segment, which forwards each event to BigQuery, Amplitude, and (for some events) HubSpot. Each event page lists where that event goes, which properties it carries, and an example call.

Each event page also has a status box:

  • Sent today: the apps send this event now. Where the code differs from the spec, the status box says how.
  • Not sent yet: the event is specced but no app sends it yet.
  • Not pursued: we decided against this event. The page is kept for reference.

Church staff looking for a quick lookup table should start with the Analytics event reference.

Helpful resources ​

Event naming conventions ​

All event names use the Object Action format in Proper Case:

  • Examples: Product Viewed, Checkout Completed, User Signed Up

All event properties use snake_case:

  • Examples: church_slug, user_id, title

Poll events are an exception: they use camelCase property names (for example pollId) to match the implementation for that feature (APO-7996).

Default custom properties ​

Segment adds its own default properties (Common Fields) to every event. The properties below are not part of Segment's spec. They are unique to Apollos, and every event should include them in its properties block unless the event page says otherwise.

PropertyTypeDescription
user_idStringThe internal unique identifier of the individual performing the event.
group_idStringThe internal unique identifier of the organization the individual is associated with (the church slug).
emailStringThe email of the individual performing the event.
is_logged_inBooleanWhether the user is logged in while performing the event.

Implementation example:

javascript
analytics.track("Button Used", {
  label: "create-your-own-hero",
  action: "Tapped",
  component: "Content Card",
  component_url: "https://baymax-healthcare.com/",
  url: "https://hiro-robotics-lab.com/",
  title: "Big Hero 6 Saves the Day",
  referrer: "https://hiro-and-baymax-journey.com/",
  user_id: "2087903",
  group_id: "287",
  email: "hiro.hamada@roboticslab.com",
  is_logged_in: true,
});

Event index ​

Foundational events ​

These events cover most actions across all products. Almost all of them are Segment spec events, with small additions that make them easier to analyze downstream.

EventStatus
Identify / GroupSent today
Page / ScreensSent today
Video PlayedNot sent yet
Push NotificationPartly sent
Deep LinkPartly sent
Button UsedSent today
Form SubmittedSent today
Video PlaybackNot pursued
Video ContentNot pursued

Golden funnel events ​

These are the key metrics Apollos uses to measure success. See About golden funnels.

EventProductStatus
Signup CompletedApollos, AdminSent today
Daily Habits CompletedApollosSent today
Community JoinedApollosSent today
Prayer CompletedApollosNot sent yet
Donation CompletedApollosSent today
Comment SavedApollosSent today
Content CreatedAdminNot sent yet
Video CompletedApollosNot sent yet
Community SharedApollosNot sent yet
Community EngagedApollosNot sent yet
Content ViewedApollosSent today
Comment SubmittedApollosNot sent yet
Reaction SubmittedApollosNot sent yet
Next Step CompletedApollosNot pursued

Poll events ​

These events track poll interactions in Apollos on mobile and web.

EventStatus
Poll ViewedSent today
Poll Vote SubmittedSent today
Poll Vote FailedSent today
Poll Option SelectedSent today

Apollos Platform Documentation