> For the complete documentation index, see [llms.txt](https://compassly.gitbook.io/compassly-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://compassly.gitbook.io/compassly-docs/core-modules/clients/programs/understand-program-mastery.md).

# Understand Program Mastery

**Page type:** Reference\
**Status:** Draft (Noah Edit)\
**Owner:** Compassly Documentation Team\
**Last verified:** 2026-04-06 (Noah Edit: 2026-06-29)\
**Audience:** Super Admin, Admin, Supervisor, Clinician

## What This Section Covers

This material covers What Program Mastery is and how it works in Compassly.

## Explanation Of Mastery Process

Program mastery establishes a permanent record of a Client's complete grasp of a new skill, backed by definitive goals and observations of those goals being achieved. The process by which it is calculated is partly automatic and partly manual. After filling out the fields for Program data and DCM information the user has the option to chose between two different data sets for Baseline information: "Automatic" and "Manual". For "Automatic", a user can set the number of days that the baseline should be calculated over, and all initial observations during that period of time will be used to calculate the *Baseline Value* before moving on to calculate mastery. For "Manual", a user can input already established baseline data and skip over the preliminary system calculations. The final component of the Program is the Mastery criteria, which can be input during or after creation of the Program. Once established, observations logged on the Program will automatically be compared to it's criteria to determine whether the Program is "Ready for mastery". At that point, a user can review all the data and confirm that mastery of the Program has been achieved. After a Program is confirmed as mastered and moved to the "Mastered" Status, it can viewed by selecting "Mastered" in the *Mastery Status* filter located on either Client Program List. A "Mastered" Program cannot be deleted or altered in any way.

## Types Of Mastery Status

* "In progress" — the Program is active and still participating in mastery tracking.
* "Ready for mastery" — the system determined that the Program met the required Mastery criteria and is waiting for user confirmation.
* "Mastered" — the Program has been confirmed as mastered.

## Mastery Criteria

A program becomes ready for mastery only when all configured mastery criteria are reached together:

1. *Target* (A comparitive operator >,<, ==, etc)
2. *Target value* (The value to be exceeded, met, or kept below, dependent on the DCM type selected)
3. *Team members* (The number of team members that need to have progressive observations)
4. *Number of days* (A specific number of days that progressive observations need to take place over)

## Baseline Information

There are two different data sets for Baseline Information:

**Automatic**

* *Baseline period* — The number of days allotted for baseline observation. Only days in which observations have occurred will be considered towards this value. For example, if you input '5' and the Client engages in the skill/behavior for 4 days, doesn't engage in the skill/behavior for 2 days, and then engages in the skill/behavior on the 7th day, than the first 4 days and the 7th day will all be counted towards the *Baseline period*.
* *Baseline value* — The calculated value representing the initial degree of a skill/behavior based on *Baseline period* and observational data. The data type of this value can vary depending on the DCM type. For example, if your DCM type is Latency, then the baseline value will be a time (00h:00m:00s).

**Manual**

* *Baseline date range* — The exact range of days over which baseline data was observed.
* *Baseline period* — The number of days allotted for baseline observation. Only days in which observations have occurred will be considered towards this value. For example, if you input '5' and the Client engages in the skill/behavior for 4 days, doesn't engage in the skill/behavior for 2 days, and then engages in the skill/behavior on the 7th day, than the first 4 days and the 7th day will all be counted towards the *Baseline period*.
* *Baseline value* — The calculated value representing the initial degree of a skill/behavior based on *Baseline period* and observational data. The data type of this value can vary depending on the DCM type. For example, if your DCM type is Latency, then the baseline value will be a time (00h:00m:00s).

**Depending on what baseline data set is used, and when baseline and mastery criteria are entered:**

* If "Automatic" baseline and mastery criteria are entered together, obervations will be used to calculate *baseline value* first, followed by mastery.
* If "Manual" baseline and mastery criteria are entered together , observations will count towards mastery from the start.
* If "Automatic" baseline is entered but mastery criteria is not, observations will be used to calculate *baseline value* until *Baseline period* is met, but further observations will simply be logged since there is no criteria to be used to evaluate mastery. Observations will not contribute to mastery while criteria is not established, nor will past observations logged prior to the establishment of criteria.
* If "Manual" baseline is entered but mastery criteria is not, observations will simply be logged since there is no criteria to be used to evaluate mastery. Observations will not contribute to mastery while criteria is not established, nor will past observations logged prior to the establishment of criteria.

## How Compassly Evaluates Readiness

The system reviews tracked attempts day by day and team member by team member.

* Each day with observations of the Program Target Skill contributes to the assessment of mastery readiness.
* Each team member's observations are evaluated distinctly from other team members. One team member's observations will be averaged soley with that same member's past observations to create an individual average. Only then is that team's member's average compared to the other averages to create a complete mean (This method will likely be altered in the future).
* The same team members do not need to appear every day. What matters is that enough team members meet the target on each qualifying day.
* The Program becomes "Ready for mastery" when the required number of days that met master criteria is achieved without a reset in the cycle.
* If a day with observations fails to meet mastery criteria before the cycle finishes, the mastery cycle resets.
* If a day passes in the middle of a mastery cycle without any observations, that day is not considered towards mastery readiness. It does not count as a pass or a fail, and the cycle resumes on the next day with tracked data.

## What Can Reset Mastery Progress

The current mastery cycle resets if any of the following happens before mastery is confirmed:

* Any mastery criterion is not reached on a required day.
* The mastery criteria are changed.

![](/files/q1pypt6P0h7jBkl0wajx)\
*Figure 1: Dialog box that appears for confirmation when you change Mastery criteria.*

* The Program is archived.
* A qualified user chose to "Continue tracking" a Program that had achieved "Ready for mastery" status.

![](/files/IpFyXS9cdeQrPhORctHu)\
*Figure 2: Dialog box that appears for confirmation when you chose to "Continue tracking" on a Program with a "Ready for mastery" status.*

If any of these situations occurs, the current cycle will stop and a new cycle will start with the next observation logged.

## Example Mastery Cycle

### Program

**Program data**

* *Domain*: Functional Communication
* *Subdomain*: Communication
* *Target skill name*: Request help appropriately

**DCM information**

* *DCM type*: Percent correct

**Baseline information**

***Manual data set***

* *Baseline date range*: 06/01/2026 - 06/05/2026
* *Baseline period*: 5
* *Baseline value*: 10%

**Mastery criteria**

* *Target*: >=
  * *Target value*: 80%
  * *Team members*: 1
  * *Number of days*: 5

![](/files/PVQHBzuOEQIvdKd94LHQ)\
*Figure 3: Program details overview.*

### Observations

*06/08/2026*

* **Day 1:** *OBSERVATION 1-1* Number of correct attempts = 17, Number of incorrect attempts = 2, Number of neutral attempts = 1, Percent Correct = 85%, criteria met, streak = 1

*06/09/2026*

* **Day 2:** *OBSERVATION 2-1* Number of correct attempts = 14, Number of incorrect attempts = 4, Number of neutral attempts = 2, Percent Correct = 70%, criteria NOT met, cycle reset

*06/10/2026*

* **Day 3:** *OBSERVATION 3-1* Number of correct attempts = 18, Number of incorrect attempts = 1, Number of neutral attempts = 1, Percent Correct = 90%, criteria met, streak = 1

*06/11/2026*

* **Day 4:** *OBSERVATION 4-1* Number of correct attempts = 16, Number of incorrect attempts = 1, Number of neutral attempts = 3, Percent Correct = 80%, criteria met, streak = 2

*06/12/2026*

* **Day 5:** *OBSERVATION 5-1* Number of correct attempts = 17, Number of incorrect attempts = 0, Number of neutral attempts = 3, Percent Correct = 85%, criteria met, streak = 3

*06/13/2026*

* **Day 6:** *OBSERVATION 6-1* Number of correct attempts = 19, Number of incorrect attempts = 0, Number of neutral attempts = 1, Percent Correct = 95%, criteria met, streak = 4

*06/14/2026*

* **Day 7:** *NO OBSERVATIONS LOGGED*

*06/15/2026*

* **Day 8:** *OBSERVATION 7-1* Number of correct attempts = 20, Number of incorrect attempts = 0, Number of neutral attempts = 0, Percent Correct = 100%, criteria met, streak = 5, all mastery criteria have been met, Program will switch to "Ready for mastery" status

![](/files/YunEBngCLaRdjzPzpcmG)\
*Figure 4: The data tracking and graph page showing observations.*

### Confirmation

Once you program switches to the "Ready for mastery" status, a qualified user will review the Program and confirm mastery if the observations are satisfactory. See the Guide page [Master Program](/compassly-docs/core-modules/clients/programs/master-program.md) for details.

## Summary Of Section

**Upon reviewing this material, you should be able to:**

* Understand what Program mastery is and how it works

## Related Guides

* [Master Program](/compassly-docs/core-modules/clients/programs/master-program.md)
* [Master Programs in Batch](/compassly-docs/core-modules/clients/programs/master-programs-in-batch.md)
* [Why Isn't a Program Ready for Mastery?](/compassly-docs/core-modules/clients/programs/why-isnt-a-program-ready-for-mastery.md)
* [Track Data and View Graph for Program](/compassly-docs/core-modules/clients/programs/track-data-and-view-graph-for-program.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://compassly.gitbook.io/compassly-docs/core-modules/clients/programs/understand-program-mastery.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
