The Orbit Model is a framework for building high-gravity communities. A high gravity community excels at attracting and retaining members by providing an outstanding member experience. We recommend taking a look at our explainer if you're new to the Orbit Model.
Our two inputs into the development of the Orbit Model are practitioner feedback and real-world data. In the beginning, we had that feedback and our ideas but not a lot of data to test them. Now that the Orbit application powers over 1,500 communities, we’re able to refine the model based on what we see in the real world.
So we've begun introducing changes to key OM concepts like Love, Orbit Levels, activity weights, formalizing new concepts like Channels and Presence, and articulating the relationship between these. We're making these changes to better highlight opportunities for proactive community building. They'll first appear in the application so we can learn and tune them alongside your input, with real data. We'll then propose to update the main Orbit Model documentation based on the learnings that are validated.
Let’s look at the changes one by one.
Note: Before we continue, I want to assure you that the current Love and Orbit Levels calculations will still be available until the beginning of July, at the earliest. We understand that it is important not to break continuity with your reporting. The old values will not be shown by default in some locations from May 27, but we can change that for anyone who needs it - drop us an email to firstname.lastname@example.org.
Love is Orbit’s primary member significance metric. The formula for Love contains elements of impact (activity weight), recency (date of activity), and frequency (regularity of activity). We realized these “ingredients” are not optimal - each is great separately but not all mixed together. By intertwining these dimensions, the score becomes opaque, and there are too many reasons it can change, leading to higher volatility than a metric like this should have. In practice, Love does not (usually) change overnight.
The “new” Love removes the effect of recency while adding an important new dimension - the unique number of channels and groups a member is active in. Groups are a catch-all term for sub-communities or projects. GitHub repositories and Discord channels are examples of groups, with GitHub and Discord being the associated channels.
Channels and groups form a 2-tiered system to understand where in the community the member is active. In distributed communities (the kind that we love to see!), a member’s engagement correlates tightly with the number of channels and groups they are active in. The new Love metric accounts for this, whereas before, it only accounted for activity weights. Weights are still important, and the scale has been improved (see below).
Our goal here is to create a more accurate representation of a member’s long-term standing in the community. Love is calculated using activities from the last 365 days, factoring in the unique number of channels and groups the member was active in, adjusting for activity weights, and adding a small bonus for the raw number of activities. The outcome of which is a number between 0 (low) and 100 (high).
The Orbit Level continues to be based on Love, along with some improvements to make the Orbit Level assignment smarter, more actionable, and predictable.
We are proposing new names for the Orbit Levels to accommodate more types of communities and focus on the action, role, and impact, rather than the identity:
The -ing is intentional to reflect the quality of motion inherent in a community member’s journey. “Observers” has become “Exploring” because observation is hands-off by definition, and not all tentative community interest fits into that. It’s also way space-ier.
Orbit integrations import lightweight activities like Twitter follows and GitHub stars, which are often the starting points for community journeys. But we’ve received regular feedback that these members should be easier to separate from the main member population until they show more signs of engagement. We've now addressed this using the Orbit Levels.
Members with only 1 activity or only activities underneath a weight of 1 in the last 365 days will remain in Orbit 4. Currently, the only activities with a weight of less than 1 are GitHub stars and Twitter follows, but you can also assign a weight of less than 1 to your custom activities when you want them to place the member in Orbit 4.
Once certain members are placed in Orbit 4, the rest of the members are sorted into the Orbit 1-3 buckets based on a percentile distribution of the Love:
This is a change from the current method, which uses a step function. The percentile method guarantees that the relative size of the Orbit Levels is predictable within communities. This addresses situations we saw where aberrations led to communities with more members in O1 than O2 and O3, for example. The percentile approach isn’t perfect, but we believe it represents an improvement in clarity and predictability. It’s easier to answer questions like “why is this member in Orbit 2?”
We’ve tested the new approach on millions of data points, and we think it does a better job at assigning Orbit 1 and Orbit 2 to the members you’re most likely to want to prioritize and stay aware of, which is the primary goal.
In a future release, you will be able to tweak the percentages on a per-community basis. This makes the system more adaptable to community teams of different sizes. A big team can handle more members in Orbit 1, and so on.
Members who have been in the community less than 30 days do not go into an Orbit Level and will not be shown unless the “New members” box is ticked in the filters. After 30 days, the member will be placed into an Orbit Level based on their participation to date.
The ingredients of the former Love equation that were based on time (per-month activity in particular) have been separated into a new concept called Presence. Presence helps you understand how regularly a member is active and how present they are in your community. The calculation is simple - it’s just the number of days active in a given time range.
Activity weights continue to influence the calculation of the Love metric and, therefore, the Orbit Level. The scale is being changed, though, from 0.5-2 to 0-10 to allow for more nuance. Activities can be given a weight of 0 to prevent them from affecting the Love metric, and activities of less than 1 will only land members in Orbit 4.
The new weights for activities created by Orbit integrations look like this:
Note: Customizing the weight of activities created by Orbit integrations is coming to the app later in June, along with more general customization for activities. Customizing the weight of API-created activities is now supported.
So that's all of the changes. The benefit we can all derive from them is a clearer picture of when there are opportunities for proactive community building. We can now determine where the opportunities are by using key Orbit Model signals like Love, Orbit Level, and Presence, and how these signals are changing over time relative to each other.
When considered in aggregate, they can help you define a “happy path” for your community members to be high-Love with high-Presence. Not every member will follow this path, but when a member has typically followed it and stops following it, that can be an opportunity for action.
Visually, this is easy to see if we plot Love and Presence on 2 different axes. The further away the member is from the middle line, the more likely an intervention is required to get them back on the happy path, and the more you might consider prioritizing spending some of your time with them.
We've shipped several new features and improvements to the Orbit app, which uses these changes and enables you to be more proactive in your community building. Check out this post for full details.