How the Software Digital Board Book tracks MRR—Contracts
The Software Digital Board Book (DBB) records SaaS metric data for termed contract lines that contain items that have been indicated as MRR. Amounts post to Software DBB accounts based on MRR contract line posting events, which are:
- On create (when a MRR contract line is first saved)
- On edit (when a MRR contract line is edited to change contract line end date)
- On renewal (when a MRR contract line is renewed)
- On end (when a MRR contract line is not renewed)
- On cancellation (when a MRR contract line is canceled)
When an event occurs, the system calculates the applicable MRR amount and automatically posts it to the appropriate Software DBB account. The Software DBB account to which the amount is posted corresponds to the Change type that either the user assigns to the contract line to categorize the type of MRR (New or Add on) or that the system assigns to the contract line to indicate the type of change associated with an existing MRR amount (Renewal upgrade, Renewal downgrade, Downgrade, Churn).
Learn how the system calculates Contracts MRR.
Contract line Software DBB posting events
The following table lists the conditions that result in data posting to each Software DBB account, what event causes the posting to occur, and what date the system uses when posting the amount. The GL accounts used for the Software DBB are defined in the Configure Digital Board Book page.
| Condition | Event | Change type | DBB account | Posting date |
|---|---|---|---|---|
| New customer, first MRR contract line on first contract | On create | New MRR |
Customer count |
Contract line start date |
| New customer, all MRR contract lines on first contract with same contract start date | On create | New MRR | New MRR | Contract line start date |
| Add an MRR contract line to in-progress contract (user must select Add-on MRR change type—the system does not set this automatically) | On create | Add-on MRR | Add-on MRR | Contract line start date |
| Renew existing MRR contract line for same price. | On renewal | Renewal upgrade | Renewal upgrade | Contract line start date on child contract |
| Renew existing MRR contract line for higher price. | On renewal | Renewal upgrade | Renewal upgrade | Contract line start date on child contract |
| Renew existing MRR contract line for lower price | On renewal | Renewal downgrade | Renewal downgrade | Contract line start date on child contract |
| Don't renew existing MRR contract line where the contract line end date is before the contract end date | On create or On edit | <existing change type> |
Renewal downgrade or Churn |
Contract line end date 1 day |
| Don't renew existing MRR contract line where the contract line end date is after the contract end date | On renewal | <existing change type> |
Renewal downgrade or Churn |
Contract line end date 1 day |
| Cancel one or more MRR contract lines, but other contract lines for the customer are still in progress (in any contract) | On cancellation | Downgrade | Downgrade | Date specified as cancellation date |
| Cancel all MRR contract lines for all contracts associated with the customer | On cancellation | Churn |
Churn MRR |
Date specified as cancellation date for last canceled contract line |
| Don't renew all MRR contract lines for all contracts associated with the customer | On renewal | Churn | Churn MRR | Last not renewed contract line end date 1 day |
| Cancel last MRR contract line for all contracts associated with the customer | On cancellation |
-Customer count |
Date specified as cancellation date for last canceled contract line |
Example of contract MRR in Software DBB accounts
The following table shows an example of how the system posts data to Software DBB accounts during the course of a contract. For purposes of this example, the given contract line amounts are the per month amounts for a 12-month contract term beginning January 1.
| Date | Event | Contract line state | New MRR | Add-on | Renewal Upgrade | Renewal Down grade |
Down grade |
Churn | Cust count |
|---|---|---|---|---|---|---|---|---|---|
| 01/17 |
Book a new contract for a new customer with two contract lines: License fee: R1,000 Support: R500 |
In progress |
1000 500 |
1 | |||||
| 03/17 | Customer adds on maintenance for R300 to the contract. | In progress | 300 | ||||||
| 01/18 |
Customer renews the license contract line for R1,000. Parent contract shows: |
Renewed |
-1000 |
||||||
| Child contract shows: | In progress | 1000 | |||||||
| 01/18 |
Customer renews the support contract line for R600. Parent contract shows: |
Renewed |
-500 |
||||||
| Child contract shows: | In progress | 600 | |||||||
| 01/18 |
Customer does not renew the maintenance add on contract line. Parent contract shows: |
Not renewed | 300 | ||||||
| 02/18 |
Customer cancels the support contract line. |
Canceled | 600 | ||||||
| 05/18 | Customer cancels the license contract line (has no other MRR contract lines open in any other contracts). | Canceled | 1000 | -1 |
Example of dashboard performance card flow for the same contract
The following table shows an example of how the data from the contract used in the previous example displays in the Software DBB performance cards.
| Date | Event | New CMRR | CMRR | Revenue renewal | Revenue churn |
|---|---|---|---|---|---|
| 01/17 |
Book a new contract for a new customer with two contract lines: License fee: R1,000 Support: R500 |
R1,500 | R1.5K | 0% | 0% |
| 03/17 | Customer adds on maintenance for R300 to the contract. | R0 | R1.8K | 100% | 0% |
| 01/18 |
Customer renews the license contract line for R1,000 and the support contract line for R600. The customer does not renew the maintenance contract line. |
R0 | R1.6K | 88.89% | 0% |
| 02/18 | Customer cancels the support contract line | R0 | R1.0K | 62.5% | 37.5% |
| 05/18 | Customer cancels the license contract line (has no other contract lines open). | R0 | R0K | 0% | 100% |