The Scale Purchased node changes the Willingness To Pay (WTP) values of individual Customers within the Input WTP Matrix according to the Product each Customer purchased.
Scaling individual Customer WTP values depending upon earlier Product purchases is helpful in a number of situations. For example, 'Learning Curves' may be simulated as Customers gain more familiarity with Products after purchase, and 'Switching Costs' may be simulated as it becomes increasingly difficult for a Customer to switch to another Product after purchasing the same Product multiple times. Firms may also experiment with the effectiveness of free trials, expecting that the WTP of Customers will increase after they have tried using the Product. And the 'Law Of Diminishing Marginal Utility' can be simulated for Customers who purchase Products multiple times.
Individual WTP values can be scaled if a Customer does purchase the Focus Product or does not purchase the Focus Product. The WTP of Products related to the purchased Focus Product may also be scaled. This is useful when, for example, a Customer's WTP for a Brand increases after purchasing just a single Product. Several Scale Purchased nodes can be cascaded one after the other to fine-tune the updated WTP values depending upon the relationship between the purchased Focus Product and other Products in the Market.
- Type: Data Input Product Array (optional): The set of Products that define the Market. Each row corresponds to a Product that competes for customers in the Market. If only the name of the Focus Product is needed then the 'Input Product Array' is optional. But if the 'Scale Product Set' of Products is more complicated (for example, if the WTP of all same-Brand Products need to be scaled) then the Input Product Array is required. The 'Input Product Array' should have the following columns:
- Product (string): The name of the Product corresponding to a column of the same name in the 'Input WTP Matrix' or the 'No Sale' Product.
- Price (double): The Price of each Product in the Market. Price is needed to calculate the degree of Competitive Rivalry when determining which Products to include in the 'Scale Product Set'.
- Brand (optional): The Brand of the Product. This is needed if the 'Scale Product Set' is to include all same-Brand Products.
- Store (optional): The Store which sells the Product. This is needed if the 'Scale Product Set' is to include all same-Store Products.
- Type: Data Input WTP Matrix (double): The set of Product-level Customer Distributions. Each row corresponds to a Virtual Customer and contains the customer's Willingness To Pay (WTP) for each Product. Each Product should have a corresponding entry in the 'Input Product Array'.
- Type: Data Output Product Array: The Output Product Array is equivalent to the Input Product Array without any changes. The Product Array is simply passed through the node as a convenience to allow several of these 'Scale Purchased' nodes to be chained together. When 'Debug Mode' is switched on the Output Product Array will contain a count of the number of changes made to each Customer Distribution. The Output Product Array will also contain the Debug Mode results if no Input Product Array has been provided. The Debug Mode output columns include:
- Distribution: The Customer Distribution found in the Input WTP Matrix.
- Updates: The number of changes that were made to the individual Customer WTP values within the Customer Distribution.
- Type: Data Output Willingness To Pay Matrix: The scaled Willingness To Pay (WTP) Customer Distribution matrix for each Product column in the Market by each Virtual Customer row. The output Willingness To Pay values for individual Customers have been scaled depending upon whether the Customer purchased the Product and whether the Product is part of the 'Scale Product Set'. This scaled WTP Matrix can be directly connected to a downstream 'Simulate Market' or 'Profit Engine' node.