# Delta Total Contract Value

Delta Total Contract Value (DTCV) is the value change in the total contract value (TCV) amount between the latest TCV and the previous TCV after a subscription amendment. Zuora only returns the value of DTCV from the Zuora REST and SOAP APIs.

## DTCV Calculation

DTCV calculation is based on the charge segment TCVs. Zuora calculates TCV for every charge segment of the one-time and recurring rate plan charges. To get the segment TCVs in a charge:

The value of the DTCV depends on the term setting:

• If the subscription does not expire (an Evergreen subscription), DTCV is null.
• If the subscription expires after a period (a Termed subscription), follow the functions below to calculate TCV:

DTCV_of_a_Charge = Sum ( DTCV_of_Charge_Segments )

DTCV_of_a_Charge_Segment = Latest_TCV_of_the_Segment - Previous_TCV_of_the_Segment

### Examples of DTCV Calculation

The following examples introduce how to calculate DTCV for one-time and recurring charges.

#### Example of a One-time Charge

• Charge model: Flat Fee Pricing
• Price: \$100
• Charge Effective Start Date: January 1

In this example, only one charge segment in the newly created subscription.

DTCV_of_charge_segment_1Latest_TCV_of_segment_1 - 0 = 100

DTCV_of_charge = 100

Now you create a Remove Product amendment to remove the one-time charge from the subscription. The amendment effective date is on January 1.

DTCV_of_charge_segment_1 = Latest_TCV_of_segment_1 - Previous_TCV_of_segment_1 = 0 - 100 = -100

DTCV_of_charge = -100

#### Example of a Recurring Charge

• Charge Model: Flat Fee Pricing
• Price: \$100
• ListPriceBase: Month
• Billing Period: Month
• Charge Effective Start Date: January 1
• Charge Effective End Date: December 31

In this example, only one charge segment in the newly created subscription.

DTCV_of_charge_segment_1Latest_TCV_of_segment_1 - 0 = 1200

DTCV_of_charge = 1200

Now you create an Update Product amendment and make the following changes:

• Price: \$200
• Amendment Effective Date: July 1

There are two charge segments after subscription amendments.

DTCV_of_charge_segment_1Latest_TCV_of_sengment_1 - Previous_TCV_of_segment_1 = 600 - 1200 = -600

DTCV_of_charge_segment_2Latest_TCV_of_sengment_2 - Previous_TCV_of_segment_2 = 1200 - 0 = 1200

DTCV_of_chargeDTCV_of_charge_segment_1DTCV_of_charge_segment_2 = -600 + 1200 = 600