Skip to content

Commercial Parameters

Commercial parameters are used to configure Ecommerce Search to use product data when doing commercial sorting of items. An item in this case could be a product or a suggestion. They are mananged via the UI.

Commercial parameters are used in conjunction with context partitions on a context to calculate the commercial boost of products.

A commercial parameter consists of:

  • Parameter id is used to uniquely identify the parameter,
  • Name assigns an easy-to-read name to the parameter.
  • Parameter type specifies the type of the parameter.
  • Partitions divide a parameter into one or more groupings, based on the parameter type.

The commercial parameters are registered in Ecommerce Search through the Ingest API.

Parameter type

To ensure that a parameter is parsed correctly, its parameter type must be specified. The following types are supported:

  • Range
  • Term
  • Rank
  • Proxy

Each parameter type is used to determine how ingested values should be normalized. See normalization, for a more detailed description of the normalization for each type.

Partitions

A parameter type defines how ingested values can be mapped and grouped into partitions. An ingested value cannot be mapped into multiple partitions.

Parameter Type How to Partition
Range Using From-To fields , eg. 10%-25%
Term Using an explicit term for each partition
Rank No partitions needed
Proxy No partitions needed

If an item has data that could not be fitted into any of a parameter's partitions, then it will be ignored for the given item, and therefore not add any commercial value.

Range

The range parameter should be used when you have data that can easily be divided into intervals or ranges. Two decimal number fields From and To field are used to define the range of a partition.

As an example consider how to model that an item is new. If you know how many days an item has been available then you could create the following partitions:

Partition Name From To
7 days 0 8
14 days 8 15
21 days 15 21

By assigning descending weights to the partitions, we are then able to boost newer items more.

Note how the From and To defines the range. The From is including and the To is not including. This means that for the first partition "7 days" the range would be 0.0 - 7.99999....

Also note that if an item has been available for 22 days, then it does not fit into any partition and is therefore ignored.

Term

The term parameter should be used when you have data that is already aggregated into some partitions or you have some business logic that is not possible to model in commercial sorting.

As an example, a webshop might have some complex business logic that determines if an item is low in stock, plenty in stock, or sold out. E.g. 2 dishwashers in stock would be plenty, however, 2 soaps in stock would be low.

A term parameter with the following partitions could therefore be created to model the webshops stock:

Partition Name Value
Few In Stock LOW
Sold out SOLDOUT
Plenty in Stock PLENTY

Note that if an item has a webshop stock term "HIGH" then it will not fit into any partition and is therefore ignored.

Rank

Ranking will do a numeric sorting of the items, such that a rank for each item can be calculated.

The rank is useful when you have event data, such as "Clicks on item". The ranking calculation will ensure that the item with the most clicks will get the highest score.

Proxy

In some cases, you might have your own first-party service or a third-party service that already has calculated a normalized value, and this value should just be mapped directly onto the item. In such a case you should use the proxy parameter.

Note that the normalized value should be between 0.0-1.0, such that it fits nicely together with how the other parameters are normalized.