Dynamic Markups
Overview
Dynamic Markups provide the ideal solution for achieving optimal results by enabling you to sell at maximum profit while maintaining competitiveness through lower prices compared to your leading competitors.
For instance, consider a specific hotel package offered by a supplier at a public rate of $500, while your net rate is $300. By leveraging dynamic markups, you can configure the system to set the sale price slightly below the market rate at $490.
The markup system is highly customizable and offers a wide array of options and settings. You have the flexibility to determine how much lower than the "market price" you want to price a particular room. Furthermore, in scenarios where your default markup is 15%, but the market price falls below your offering, Dynamic Markups allow you to adjust your selling price within preset parameters, ensuring competitiveness and facilitating successful sales.
NoteThe system's Dynamic Markup feature is advanced, and the configuration process is complex and sensitive. We highly recommend thoroughly familiarizing yourself with the system before proceeding with configuration. This will enable you to use the feature effectively and avoid potential issues.
Offer Categories
The system utilizes three distinct offer type categories (to be defined for each account in the contracts section):
- Not Participating (NP): Offers in this category will not be considered by the Dynamic Markup logic. Only standard static markups will be applied to these offers.
- Market Price Source (MPS): Rate offers categorized as MPS serve as the price reference for target offers. These offers act as the baseline for determining pricing.
- Dynamic Markup Target (DMT): Rate offers in the DMT category will have the Dynamic Markup logic applied to them. Prices for these offers will be referenced to MPS offers, enabling dynamic adjustments to maximize competitiveness and profitability.
Understanding Parity
Parity in the context of hotels refers to a situation where the price of a specific hotel is directly linked to another price, typically determined by instructions provided by gross-type contracts regarding allowed pricing. This is often done to establish minimum prices for the hotel.
When parity exists for a hotel, the system must consider it when determining the Goal Price. The Goal Price must not be set lower than the Market Price in such cases.
- For MPS (Market Price Source) and DMT (Dynamic Markup Target) offers, you can define whether parity should be taken into account.
- MPS without parity: Dynamic Markup will not consider these offers for determining parity. Parity is not a factor in calculating the Goal Price for such offers.
- DMT without parity: Dynamic Markup will be calculated for these price offers without any parity limitations. The Dynamic Markup logic will be applied to these offers without considering parity requirements.
Example: Suppose Dynamic Markup is considering 3 MPS offers with parity for $100, $105, and $109. The delta between the two lowest prices ($100 and $105) is $5.
Now, assume the 'Parity price delta' was defined as $4. The resulting delta of $5 does not fulfill the requirement. In this scenario, Dynamic Markup will attempt to group the next two cheapest packages, which are $105 and $109. The resulting delta between these two prices is $4, which fulfills the delta requirement set by the user. Thus, the parity price, in this case, is $105.
By understanding and effectively configuring parity considerations for MPS and DMT offers, you can ensure that the Goal Price is accurately determined while respecting parity requirements and market dynamics.
Finding Suppliers
To enable Dynamic Markups, you need to configure the contracts appropriately at the contract level. A valid configuration should include at least one MPS account (Market Price Source) and at least one DMT account (Dynamic Markup Target).
Follow these steps to set up contracts:
-
Access the Backoffice Website: Navigate to the Back-Office website for your Dynamic Markup system.
-
Navigate to the Contracts Screen: In the top-right corner of the page, click the top-right icon. From the dropdown menu, select "Contracts screen."
-
Choose Hotels Service: Once on the Contracts screen, select the "Hotels" service from the available options.
-
Select a Supplier: Find the supplier name you want to configure contracts for and click on it. All contracts associated with the selected supplier will be displayed on the right-hand side.
-
Configure Contracts: Review the contracts associated with the supplier and ensure that you have at least one MPS account and at least one DMT account defined for the Dynamic Markup logic to work correctly.
Configuring a Market Price Source Account
Market Price Source (MPS) accounts are normally gross-type contracts that are essential for the dynamic markups logic.
Dynamic Markup Target (DMT) accounts are net-type contracts that are essential for the dynamic markups logic.
Dynamic Markup Types
- Not Participating (NP): Packages related to the account will not be considered in the Dynamic Markup logic. Standard static markups will apply to these offers.
- Market Price Source, considering parity: Packages related to the account will serve as Market Price Sources (MPS). These offers act as the baseline for determining pricing.
- Target, affected by parity: Packages related to the account will serve as Dynamic Markup Targets (DMT). The Dynamic Markup logic will be applied to these rate offers, and prices will be referenced to MPS offers for dynamic adjustments.
- Market Price Source, ignoring parity: Packages related to the account will serve as Market Price Sources (MPS); however, the system will not consider them for determining parity. Parity considerations will not apply to these offers.
- Target, unaffected by parity: Packages related to the account will serve as Dynamic Markup Targets (DMT). However, they will not be influenced by parity, meaning that dynamic markups will be calculated for them as if no parity was identified.
These offer categories help customize the pricing strategy for each account and enable you to maximize competitiveness while maintaining flexibility and control over the pricing of different packages.
Practical Example
Example Calculation:
Package Price: $90
Market Price for Related Package Group: $210
Min Markup (set on contract): $5
Package Delta from Market Price: $210 - $90 = $120
Amount Below Market Price Percentage: ~42% (0.42 as a decimal)Formula:
Goal Price = Market Price - [(Min Markup + Package Delta from Market Price) × Amount Below Market Price %]Calculation:
Goal Price = $210 - [($5 + $120) × 0.42]
Goal Price = $210 - [($125) × 0.42]
Goal Price = $210 - $52.5
Goal Price = $157.5In this example, the calculated Goal Price is $157.5. The Dynamic Markup logic will aim to set the final price for this package at $157.5 to remain competitive while taking into account the Min Markup and the Package Delta from Market Price, as well as the configured Amount Below Market Price Percentage.
Note that the Dynamic Markup calculation takes place after the static markup calculations, which means the system will first apply any standard static markups and then use the Dynamic Markup logic to further adjust prices for optimal competitiveness and profitability.
Using the Dynamic Markups Feature
To utilize the Dynamic Markup feature, you must enable the corresponding setting at the client level. Follow these steps:
-
Enable 'Can use Dynamic Markup' feature: Under the 'Client Settings' tab, ensure that the 'Can use Dynamic Markup' option is enabled. If you need assistance with enabling this feature, please reach out to the support team.
-
Configure Dynamic Markup Settings: Once the feature is enabled, configure the dynamic markup settings by following these steps:
- Navigate to a node or user: Identify the relevant node or user account where you wish to apply the dynamic markup settings.
- Click on the 'Operational Settings' tab: Within the node or user account, locate the 'Operational Settings' tab and click on it.
By completing these steps, you will have successfully enabled and configured the Dynamic Markup feature for the specified client account. This will allow you to dynamically adjust markups and optimize pricing for enhanced competitiveness and profitability.
To configure the Dynamic Markup feature effectively, follow these guidelines for each parameter:
- Markup Type: Set the markup type to "Group by price key" for the default recommended settings. This setting allows for advanced grouping of prices, which is beneficial for optimizing pricing strategies.
- Parity Price Delta: Define the desired price delta (in the default user currency) to determine parity among the two lowest-priced Market Price Source (MPS) offers with parity offers. This helps ensure price competitiveness and alignment with the market.
- Amount Below/Above Market Price: Specify the desired percentage price decrease allowed for non-parity offers. This setting allows you to adjust prices for non-parity offers, enabling you to remain competitive even when not at parity with the market.
- Results Output: Choose the desired offer type to output based on the Dynamic Markup logic.
Markup Limits - Min & Max
The Dynamic Markups logic takes into account the Min-Max Markup Limits configured for the node (Manage Company → Node → Node Markups → Account Markups & Commissions screen).
The Min Markup Limit sets a threshold for Dynamic Markup Target (DMT) packages. The system will attempt to lower the price of all DMT packages, provided that it remains higher than the Goal Price while adhering to the Min Markup value. In other words, the system will strive to decrease the price as close as possible to the Goal Price while considering the specified Min Markup value.
If no Min Markup Limit is defined, the system will reduce the price up to the node's minimum static markup. This ensures that the final price stays within the acceptable range and maintains consistency with the node's pricing policies.
The Max Markup Limit determines the upper threshold for Dynamic Markup Target (DMT) packages. The system will attempt to increase the price of all DMT packages up to the Goal Price while ensuring that the total markup does not exceed the specified Max Markup Limit.
If no Max Markup Limit value is defined, the system has the flexibility to apply markup without any upper limit on the DMT package. This means that the markup can be adjusted freely until the Goal Price is reached without constraints.
How Dynamic Markups Are Reflected
Once Dynamic Markup is enabled, it operates behind the scenes, grouping identical rooms from various suppliers using sophisticated business logic. It applies markups according to predefined settings and configurations, then incorporates these markups into the GetPackages Response, which includes the package details.
To view markups for different rooms, refer to the session logs, which provide two options:
- DynMarkupDumpWithPrices.csv
- HotelPackagesMarkups
DynMarkupDumpWithPrices.csv
The DynMarkupDumpWithPrices is a CSV file generated once the dynamic markup logic is initiated.
The file will contain a row for each room returned in the GetPackages step, along with monetary information, room information, markups, profits, and much more.
| Column | Field Name | Field Description |
|---|---|---|
| A | PriceKey | Price key - used to group packages by pricing. *Separate explanation required. |
| B | RoomName | Room names as returned in GetPackages. |
| C | Refundability | Refundable / Non-refundable. |
| D | Availability | Available / Unavailable. |
| E | RoomsCount | Number of rooms. |
| F | RoomBasis | Room basis as returned in GetPackages. |
| G | BucketKeyForPricing | Bucket key for grouping by prices. *Separate explanation required. |
| H | SupplierName | Supplier short name. |
| I | ContractId | The used contract's ID. |
| J | DynMarkupType | Dynamic markup type: Source / Target. |
| K | NodeMarkups | Markups breakdown by nodes. |
| L | CommissionFromParent | Commission of the packages from parent node (when applicable). |
| M | NodeProfit | Profits of the package by nodes. |
| N | DynamicMarkupFee | Dynamic markup added fee. |
| O | FinalConvertedPriceAllNodes | Final converted price of all nodes. |
| P | OriginalConvertedNet | Original converted package net price. |
| Q | FinalConvertedPrice | Final converted package price. |
| R | SumOfAllNodesProfit | Sum of all nodes' profit. |
| S | BiasPrice | Biased price (when applicable). |
| T | DisplayKey | A key for displaying. *Separate explanation required. |
| U | BucketKeyForDisplay | Bucket key for displaying. *Separate explanation required. |
| V | WinningRate | True / False. In each "BucketKeyForDisplay" there's only 1 winning rate (the cheapest while profit is the highest). |
| W | HiddenPostDynMarkupRulesV2 | True / False. True - when the package was hidden before the markup logic is applied. False - when not. |
| X | WinningRateHiddenByRule | True / False. True - when the package is hidden by "Hotel Rules". |
| Y | PackageId | PackageID as returned in GetPackages. |
NoteAfter downloading the "DynMarkupDumpWithPrices.csv" file, you must change the file extension from ".txt" to ".csv".
HotelPackagesMarkups
The "HotelPackagesMarkups" log is also generated once the dynamic markup logic is initiated.
The "HotelPackagesMarkups" log includes details such as room descriptions, node markups, commissions, profits, and a detailed breakdown of markups by nodes, including financial data.
To find specific information, use "Ctrl + F" to search for the PackageID from GetPackages.
Additional Parameter in GetPackages Response
NoteTo obtain additional information about Dynamic Markups Fee in the GetPackages response, please raise a ticket with the support team, as configuration is required.
Additional Parameter:
- DynamicMarkupFee - The dynamic markup fee that was added to the net price (in the requested currency).
Updated 7 days ago