Price Score
Overview
Effective negotiation of prices with customers requires contextual information about the desirability of a price on two dimensions: profitability for the vendor, and likelihood that the customer will buy at that price. Sales users need to know how profitable the current proposed pricing is in order to guide their decisions to increase, decrease, or remove the discount. Since most customers do not reveal cost or margin information to Sales users, CPQ’s Price Score metric can be used to provide this guidance in a manner that prevents users from reverse engineering cost or margin information. Both Sales users and approvers benefit from a Price Score metric that quickly depicts profitability without having to analyze detailed data.
CPQ’s Price Scoring feature enables customers to display a visual and numeric indicator of the relative quality of a Commerce Transaction or Transaction Line with simple, predefined calculations or complex customized calculations of score values. Predefined calculations support the scoring of pricing profitability to provide sales users and approvers with quick visual guidance to limit discounting and assure profitable deals. They can also be used to score deal quality based upon non-pricing factors using formulas or BML logic. Scoring can be defined at both the Transaction and Transaction Line level, with a predefined option on the Transaction to calculate an average weighted value based upon Transaction Line values.
Since customers can define as many ‘Price Scores’ as they want, transactions can display a variety of scores for different dimensions. Each Score can be given a unique name using either the attribute display label or the override label defined using the UI Editor. For example, a Transaction could have both a Price Score and a Risk Score, both of which use the Price Score feature to calculate and display the score value.
Price Score Metric
The Price Score Metric indicates relative profitability of a given price.
- Scores range from 1 (the lowest profitability) to 9 (the highest profitability).
-
Price Score numbers are highlighted with different colors to provide a quick visual indication of profitability.
Prices Scores from 1 - 3 are highlighted in red, 4 - 6 are highlighted in yellow, and 7 - 9 are highlighted in green.
Transaction Line Price Score
The Transaction Line Price Score represents the score for an individual line item. can be calculated using any of five optional calculation methods.
There are five methods to calculate Price Score for a Transaction Line:
- List-Based – Customers without cost or margin information can use the List-Based calculation to approximate pricing profitability using the relationship of Net Price to List Price, or Discount to List Price. See Transaction Line List-Based Calculation Price Score for additional information and instructions.
- Margin-Based – Determines profitability based on the current price margin and the List Price margin. See Transaction Line Margin-Based Calculation Price Score for additional information and instructions.
- Simple Margin – Divides the profit margin by a predetermined "Basis" attribute. The Basis attribute can be any current value, but typically would be List Price, Net Price, or Unit Cost. See Transaction Line Simple Margin Calculation Price Score for additional information and instructions.
Transaction Price Score
The Transaction-level Price Score represents the overall Price Score for the entire Transaction. This metric allows customers to determine if heavily discounted prices for some line items can be offset with high profitability on other line items on the Transaction.
There are two methods to calculate Price Score for a Transaction:
Price Score Administration
Administrators can add the Price Scores to relevant Commerce layouts, change the Price Score icons, and modify the Price Score calculations. Commerce Integer type attributes are used to set up Price Score metrics for Transactions and Transaction Lines. Price Scores are updated whenever a Commerce Action of type ‘Modify’ is performed by the user.
Pricing Terminology for Price Score
CPQ’s predefined Transaction Line Price Scoring options require that customers define (via selection) which attributes are used in their Commerce implementation as List Price, Net Price, and Unit Cost values. For purposes of Price Score calculations, these pricing values are defined as follows:
- List Price – The unitized starting price, MSRP, or ceiling price for the product. (see note below regarding Segmented List Prices)
- Net Price – The final, negotiated unit price that will be invoiced for the product. Net Price is the price AFTER all discounts are subtracted from the price.
- Unit Cost – The unitized cost for the product. Note that this may be based on any costing method (ex. full absorption, marginal, etc.) but the choice of method should be defined based on the intended incentives for Sales users (ex. drive volume/revenue vs. margin). As a result the costing method used in Oracle CPQ may differ from that used for financial reporting. A Unit Cost value is not required when using the ‘List-Based Calculation’ method.
Administration
Transaction Line List-Based Calculation Price Score
The List-Based Calculation for Price Score is the simplest calculation to use.
- Advantage: No cost or margin data needs to be maintained in CPQ.
- Calculation:
(Net Price/List Price)*9
- Required Inputs: Net Price and List Price
Alternatively, Discount and List Price can be used
Create a Transaction Line List-Based Calculation Price Score
Perform the following steps to create a Transaction Line Price Score using the List-Based Calculation:
- Navigate to the Admin Home Page.
- Click Process Definition in the Commerce and Documents section.
- Select Documents from the Navigation drop-down, then click List.
-
Select Attributes from the sub-document Navigation drop-down, then click List.
-
Access the Attribute Editor page for an Integer type attribute.
Use a previously created integer attribute
Click the appropriate Attribute link in the Name column.
Create a new Integer type attribute
- Click the Add button, at the bottom of the page.
Refer to Commerce Document Attributes for additional information.
- Enter a Label and a Variable Name.
- Select Integer from the Attribute Type menu.
- Click Add.
- Select Enable Price Score.
-
Select the List-Based Calculation from the Price Score Method drop-down
- Select the List Price Attribute from the drop-down.
-
Select the Net Price Attribute from the drop-down.
-
Click Apply to save the attribute settings.
Transaction Line Margin-Based Calculation Price Score
In the Margin-Based calculation, the function changes based on the margin measured at List Price. This allows the slope of the lines to change for different products that may have different margin percentages and discount allowances. The Margin-Based Calculation is based on the current margin and the margin at List.
Create a Transaction Line Margin-Based Calculation Price Score
Perform the following steps to create a Transaction Line Price Score using the Margin-Based Calculation:
- Navigate to the Admin Home Page.
- Click Process Definition in the Commerce and Documents section.
- Select Documents from the Navigation drop-down, then click List.
-
Select Attributes from the sub-document Navigation drop-down, then click List.
-
Access the Attribute Editor page for an Integer type attribute.
Use a previously created integer attribute
Click the appropriate Attribute link in the Name column.
Create a new Integer type attribute
- Click the Add button, at the bottom of the page.
Refer to Commerce Document Attributes for additional information.
- Enter a Label and a Variable Name.
- Select Integer from the Attribute Type menu.
- Click Add.
- Select Enable Price Score.
-
Select the Margin-Based Calculation from the Price Score Method drop-down.
- Select the List Price Attribute from the drop-down.
- Select the Net Price Attribute from the drop-down.
-
Select the Unit Cost Attribute from the drop-down.
-
Click Apply to save the attribute settings.
Transaction Line Simple Margin Calculation Price Score
The Simple Margin Calculation is based on Net Cost divided by a "Basis" value.
- Calculation:
(Net Price-Unit Cost)/Basis Value
- Required Inputs: Unit Cost, Net Price, and the "Basis" attribute
The "Basis" attribute can be any currency attribute (typically, Unit Cost, List Price, or Net Price)
- The calculation produces a decimal value between 0 an 1.
The Price Score is determined by which "tenth" the result is in. 0 - 0.1 = 1, 0.1 - 0.2 = 2, 0.2 - 0.3 = 3, etc.
Create a Transaction Line Simple Margin Calculation Price Score
Perform the following steps to create a Transaction Line Price Score using the Margin-Based Calculation:
- Navigate to the Admin Home Page.
- Click Process Definition in the Commerce and Documents section.
- Select Documents from the Navigation drop-down, then click List.
-
Select Attributes from the sub-document Navigation drop-down, then click List.
-
Access the Attribute Editor page for an Integer type attribute.
Use a previously created integer attribute
Click the appropriate Attribute link in the Name column.
Create a new Integer type attribute
- Click the Add button, at the bottom of the page.
Refer to Commerce Document Attributes for additional information.
- Enter a Label and a Variable Name.
- Select Integer from the Attribute Type menu.
- Click Add.
- Select Enable Price Score.
-
Select the Simple Margin Calculation from the Price Score Method drop-down.
- Select the Net Price Attribute from the drop-down.
- Select the List Price Attribute from the drop-down.
-
Select the Unit Cost Attribute from the drop-down.
-
Click Apply to save the attribute settings.
Transaction Line Advanced Calculation Price Score
The Advanced Calculation method is designed to support the majority of simple use cases for calculating profitability without having to create formulas or BML. This calculation allows selection of attributes or static values to be used in the equation: a*(b-c)/(d-e)+f
Attribute Inputs:
- Attribute drop-down menus list sub-document integer, float, and currency attributes that can be selected.
- The "Use Specified Value" option is used to specify literal values. Upon selection of this item, a text box is displayed to enter values. Only integer values are allowed.
- Attribute d is typically Price (List)
- Attribute e is typically Price (Net)
- Do NOT use Margin as the denominator!
Boundary Conditions:
-
These parameters allow administrators to define minimum and maximum values for the Price Score.
-
Administrators can also define a default value for when variables (d-e)=0
. The variables d and e typically represent the Basis or denominator used in the profitability calculation and most often use List Price and Net Price values. This Boundary condition allows administrators to specify the Price Score value to use when there is either no price or zero pricing on a Transaction Line.
Create a Transaction Line Advanced Calculation Price Score
Perform the following steps to create a Transaction Line Price Score using the Advanced Calculation:
- Navigate to the Admin Home Page.
- Click Process Definition in the Commerce and Documents section.
- Select Documents from the Navigation drop-down, then click List.
-
Select Attributes from the sub-document Navigation drop-down, then click List.
-
Access the Attribute Editor page for an Integer type attribute.
Use a previously created integer attribute
Click the appropriate Attribute link in the Name column.
Create a new Integer type attribute
- Click the Add button, at the bottom of the page.
Refer to Commerce Document Attributes for additional information.
- Enter a Label and a Variable Name.
- Select Integer from the Attribute Type menu.
- Click Add.
- Select Enable Price Score.
-
Select the Advanced Calculation from the Price Score Method drop-down.
The selections illustrated below result in the following calculation: 8 * (Net Price – 0/ List Price - 0) + 1
-
Assign values for Attributes a - f:
- Select the applicable attributes from the Transaction drop-down, or
- Select Use Specified Value from the Transaction drop-down, and enter a Specified Value.
-
Define Minimum and Maximum values for the Price Score.
-
Define a default value for when variables (d-e)=0
.
This Boundary condition allows administrators to specify the Price Score value to use when there is either no price or zero pricing on a Transaction Line.
-
Click Apply to save the attribute settings.
Transaction Line Custom Calculation Price Score
The Custom Calculation method allows customers to utilize their custom calculations that have been defined using BML or Formulas
Create a Transaction Line Custom Calculation Price Score
Perform the following steps to create a Transaction Line Price Score using the Custom Calculation:
- Navigate to the Admin Home Page.
- Click Process Definition in the Commerce and Documents section.
- Select Documents from the Navigation drop-down, then click List.
-
Select Attributes from the sub-document Navigation drop-down, then click List.
-
Access the Attribute Editor page for an Integer type attribute.
Use a previously created integer attribute
Click the appropriate Attribute link in the Name column.
Create a new Integer type attribute
- Click the Add button, at the bottom of the page.
Refer to Commerce Document Attributes for additional information.
- Enter a Label and a Variable Name.
- Select Integer from the Attribute Type menu.
- Click Add.
- Select Enable Price Score.
-
Select the Custom Calculation from the Price Score Method drop-down.
-
Enter your custom calculation using BML or a Formula.
-
Click Apply to save the attribute settings.
Hide Price Scores for Model Lines
Model Lines always show a $0 value for Net Price in the Line Item Grid. These lines will cause a low Price Score to be calculated (i.e. a Price Score of 1). To prevent this from occurring you can hide the Price Score attribute for model lines.
Perform the following steps to hide Price Scores for Model lines:
- Navigate to the Admin Home Page.
- Click Process Definition in the Commerce and Documents section.
- Select Documents from the Navigation drop-down, then click List.
- Select Attributes from the sub-document Navigation drop-down, then click List.
- Click on the "Price Score" attribute name.
- Click the Mapping tab.
-
Select the Hide For Models option.
-
Click Apply to save the attribute settings.
Transaction Weighted Average from Line Calculation Price Score
The Weighted Average from Line Calculation uses the values from the Transaction Line Price Score and calculates a weighted average based to a defined Weighting Attribute.
- Typically weighted by the Total Contract Value or total revenue for all line items.
- Built to roll up the value of Line-level Price Score values.
- Spreads across a range of 1 - 9.
Create a Transaction Weighted Average from Line Calculation Price Score
Perform the following steps to create a Transaction Price Score using the Weighted Average from Line Price method:
- Navigate to the Admin Home Page.
- Click Process Definition in the Commerce and Documents section.
- Select Documents from the Navigation drop-down, then click List.
-
Select Attributes from the main document Navigation drop-down, then click List.
-
Access the Attribute Editor page for an Integer type attribute.
Use a previously created integer attribute
Click the appropriate Attribute link in the Name column.
Create a new Integer type attribute
- Click the Add button, at the bottom of the page.
Refer to Commerce Document Attributes for additional information.
- Enter a Label and a Variable Name.
- Select Integer from the Attribute Type menu.
- Click Add.
- Select Enable Price Score.
-
Select Weighted Average From Line from the Price Score Method drop-down.
-
Select the Price Score Line Attribute from the drop-down.
-
Select the Weighting Attribute from the drop-down
-
Click Apply to save the attribute settings.
Transaction Custom Calculation Price Score
The Custom Calculation method allows customers to utilize their custom calculations that have been defined using BML or Formulas
Create a Transaction Custom Calculation Price Score
Perform the following steps to create a Transaction Price Score using the Custom Calculation:
- Navigate to the Admin Home Page.
- Click Process Definition in the Commerce and Documents section.
- Select Documents from the Navigation drop-down, then click List.
-
Select Attributes from the main document Navigation drop-down, then click List.
-
Access the Attribute Editor page for an Integer type attribute.
Use a previously created integer attribute
Click the appropriate Attribute link in the Name column.
Create a new Integer type attribute
- Click the Add button, at the bottom of the page.
Refer to Commerce Document Attributes for additional information.
- Enter a Label and a Variable Name.
- Select Integer from the Attribute Type menu.
- Click Add.
- Select Enable Price Score.
-
Select the Custom Calculation from the Price Score Method drop-down.
-
Enter your custom calculation using BML or a Formula.
-
Click Apply to save the attribute settings.
Notes
Price Score Attributes - Commerce Standard Process supports the price score line-level attribute and rollup value updates when using the Advanced Calculation price score method. Administrators can choose to keep the seeded attributes for the price score calculation, or update the attributes selection as per their requirements (see
Price Score for detailed instructions).
Custom Variable Name Conventions
In Oracle CPQ 23D, CPQ adopted Oracle CX Sales variable naming conventions for custom items. When an administrator creates a new custom Commerce item, the "_c" suffix is appended to the variable name. The new naming convention for custom variable names provides more consistency for integrations with Oracle Sales.
Beginning in Oracle CPQ 24C, customers can submit a service request to disable the "_c" suffix on variable names for custom Commerce entities (Actions, Analytics, Attributes, Data Columns, Integrations, Library Functions, Rules, Steps, etc.). The "_c" suffix is enabled by default for standard and legacy Commerce processes.
- Customers can submit a Service Request (SR) on My Oracle Support to disable the "_c" suffix on variable names for custom Commerce entities
- When the "_c" is disabled, the "_c" variable name suffix will not be required for newly created custom Commerce entities.
- Disabling the "_c" variable name suffix for custom Commerce entities will not change existing variable names.
- The "_c" suffix setting will not impact existing variable names when cloning a Commerce process or migrating Commerce items. Target variable names will be the same as the variable names from the source Commerce process.
Related Topics
See Also
For more information on setting up Price Scores, refer to the Sales - CPQ Deal Management Deep Dive Part 2 CPQ Event video on Oracle Cloud Customer Connect.