Skip to main content

Boosting items in search results

Frosmo Search allows you to boost items so that they rank higher in search results.

You boost items by defining boosting rules for them. You can have a boosting rule apply to all searches on the site, or you can target searches that use specific keywords. For more information about how boosting works in ranking and sorting search results, see Feature: Search.

note

When you create or modify a boosting rule, the change comes into effect with a delay based on the update frequency defined in the site's basic search setup.

You can view, create, edit, and remove boosting rules in the Frosmo Control Panel.

Viewing boosting rules

To view the boosting rules defined for a site:

  1. In the Frosmo Control Panel, in the sidebar, select More > Search.

  2. Select the Boosting tab. The view lists the boosting rules defined for the site.

    Viewing boosting rules

Creating a boosting rule

To create a boosting rule:

  1. In the Frosmo Control Panel, in the sidebar, select More > Search.

  2. Select the Boosting tab.

  3. Click Create boosting rule.

  4. Define the boosting rule settings.

    Creating a boosting rule
  5. When you're done, click Save.

  6. If the boosting rule is ready for production, activate the rule.

Editing a boosting rule

To edit a boosting rule:

  1. In the Frosmo Control Panel, in the sidebar, select More > Search.

  2. Select the Boosting tab.

  3. In the boosting rules list, find the rule you want to edit, and click the rule name.

  4. Edit the boosting rule settings.

  5. When you're done, click Save.

Removing a boosting rule

To remove a boosting rule:

  1. In the Frosmo Control Panel, in the sidebar, select More > Search.

  2. Select the Boosting tab.

  3. In the boosting rules list, find the rule you want to remove, click the quick menu button for the rule, and select Remove.

    Removing a boosting rule
  4. To confirm, click Remove.

Activating and deactivating a boosting rule

Frosmo Search uses only active boosting rules. You can create and edit inactive rules, but they will not impact search result ranking until you activate them. You can freely activate and inactive rules.

Activating a boosting rule

To activate an inactive boosting rule:

  1. In the Frosmo Control Panel, in the sidebar, select More > Search.

  2. Select the Boosting tab.

  3. In the boosting rules list, find the rule you want to activate, and click the rule name.

  4. In the boosting rule settings, at the bottom, click Activate.

    Activating a boosting rule
  5. Click Save.

Deactivating a boosting rule

To deactivate an active boosting rule:

  1. In the Frosmo Control Panel, in the sidebar, select More > Search.

  2. Select the Boosting tab.

  3. In the boosting rules list, find the rule you want to deactivate, and click the rule name.

  4. In the boosting rule settings, at the bottom, click Deactivate.

    Deactivating a boosting rule
  5. Click Save.

Boosting rule settings

The following table describes the settings you can define for a boosting rule in the Frosmo Control Panel.

Boosting rule settings
SettingDescriptionRole

Name

Enter a name for the boosting rule.

Required

Target

Select whether the boosting rule targets all searches or only searches that use specific keywords:

  • All searches: The rule targets all searches that visitors perform on the site. The boosting affects the relative ranking of items that have the same text match score. For example, if a search finds an equally good match in items A and B, but item B has an All searches boosting applied to it, the search places item B above item A in the results. If the same search finds an even better match in item C, which therefore gets a higher text match score than items A and B, the search places item C above item B, no matter how much boosting item B is getting.

    How it actually works...
    For any item that matches the item filters defined for the rule, the platform increases the item's boosting score based on the selected boosting level. The platform uses the boosting score for tiebreaking search results.
  • Keywords: Enter the keywords that you want to target, separated by spaces (for example, "Frosmo shoe sneaker"). The rule only applies to searches that use one or more of these keywords. The boosting increases the overall ranking of any item that matches the keywords, including partial and fuzzy matches. For example, if a search finds a good match in item A and an even better match in item B, meaning the search assigns item B a higher text match score than to item A, but item A has a Keywords boosting applied to it, the search will place item A above item B provided the boosting is strong enough to increase item A's text match score above item B's.

    How it actually works...
    For any item that matches the item filters defined for the rule, the platform adds the keywords to a searchable metadata attribute in the item data, thereby increasing the item's text match score in search results. The ranking weight of the metadata attribute depends on the selected boosting level.

If you want to significantly boost items, use Keywords. If you're largely happy with how items get ranked in the search results and only want to tweak their relative prominence, use All searches.

For more information about how boosting works in ranking and sorting search results, see Feature: Search.


Boosting level

Select the boosting level. The higher the level, the greater the boost to an item's ranking in search results.

Required

Start date

Select the date when the boosting rule becomes active.

The default date is the rule creation date.

Required

End date

Select the date when the boosting rule becomes inactive.

To remove the selected data, click Remove end date.

If you do not select a date, the rule remains active indefinitely.

By default, there's no end date.

Optional

Item filters

Define the set of items whose ranking you want to boost. You define the set by creating one or more item filters that together produce the desired set. You must create at least one filter.

A filter defines a single comparison operation between an item attribute value and a target value defined by you. The platform uses the filter to include and exclude items from the final set of boosted items: any item for which the comparison operation evaluates to true is included, while any item for which the comparison operation evaluates to false is excluded. Only included items get boosted. The comparison is case-insensitive.

If you define multiple filters, select how to apply them:

  • AND: For an item to match the rule, the item must pass all the filters.

  • OR: For an item to match the rule, the item must pass at least one of the filters.

Combining multiple item filters
Adding an item filter

To add an item filter:

  1. Click Add item filter. The Control Panel adds an undefined filter.

  2. Select the item attribute you want to use for filtering items. The attributes available depend on the filterable attributes defined in the site's basic search setup.

    Selecting the item attribute for filtering items
  3. Select the relational operator for comparing the item attribute value to the target value. The drop-down menu only displays operators that are valid for the data type of the selected attribute. For more information about the operators, see Item filter operators.

    Selecting the relational operator for the comparison
  4. Enter or select the target value for the comparison.

    Defining the target value for the comparison

    The target value type depends on the operator. For more information about the target values, see Item filter operators.

    If the target value is an array, use the Add button or selector to individually enter or select the different values in the array. You can remove a value from the array by clicking for the value.

    Managing an array target value for the comparison
    Managing an array target value for the comparison
Editing an item filter

You can change the attribute, operator, and value of an item filter. For more information, see Adding an item filter.

Removing an item filter

To remove an item filter, click for the filter.

Removing an item filter

Required

Defining boosting rule settings
Figure: Defining boosting rule settings

Item filter operators

The following table describes the relational operators supported in item filters. The Attribute type and Target type columns list the types of item attribute values and target values, respectively, that the operators support. For example, the equals operator expects a Boolean, number, or string as the attribute value and a string as the target value.

note

The comparison is always case-insensitive.

Supported item filter operators
OperatorDescriptionAttribute typeTarget type

equals

The operation evaluates to true if the attribute value equals the target value.

Example
Filter: <type> equals "Fashion/Shoes"

type: "Fashion/Shoes" -> TRUE
type: "Fashion/Suits" -> FALSE

The platform converts the attribute value to a string for the comparison.

Boolean

Number

String

String

does not equal

The operation evaluates to true if the attribute value does not equal the target value.

Example
Filter: <type> does not equal "Fashion/Shoes"

type: "Fashion/Shoes" -> FALSE
type: "Fashion/Suits" -> TRUE

The platform converts the attribute value to a string for the comparison.

Boolean

Number

String

String

is greater than

The operation evaluates to true if the attribute value is greater than the target value.

Example
Filter: <price> is greater than 50

price: 40 -> FALSE
price: 50 -> FALSE
price: 60 -> TRUE

If the attribute is a number, the platform treats the attribute and the target value as numbers for the comparison.

Number

String

String

is less than

The operation evaluates to true if the attribute value is less than the target value.

Example
Filter: <price> is less than 50

price: 40 -> TRUE
price: 50 -> FALSE
price: 60 -> FALSE

If the attribute is a number, the platform treats the attribute and the target value as numbers for the comparison.

Number

String

String

is greater than or equal to

The operation evaluates to true if the attribute value is greater than or equal to the target value.

Example
Filter: <price> is greater than or equal to 50

price: 40 -> FALSE
price: 50 -> TRUE
price: 60 -> TRUE

If the attribute is a number, the platform treats the attribute and the target value as numbers for the comparison.

Number

String

String

is less than or equal to

The operation evaluates to true if the attribute value is less than or equal to the target value.

Example
Filter: <price> is less than or equal to 50

price: 40 -> TRUE
price: 50 -> TRUE
price: 60 -> FALSE

If the attribute is a number, the platform treats the attribute and the target value as numbers for the comparison.

Number

String

String

contains

The operation evaluates to true if the attribute value contains or equals the target value.

Example
Filter: <type> contains "shoes"

type: "Fashion/Shoes" -> TRUE
type: "Fashion/Suits" -> FALSE

String

String

does not contain

The operation evaluates to true if the attribute value does not contain or equal the target value.

Example
Filter: <type> does not contain "shoes"

type: "Fashion/Shoes" -> FALSE
type: "Fashion/Suits" -> TRUE

String

String

begins with

The operation evaluates to true if the attribute value begins with or equals the target value.

Example
Filter: <type> begins with "Fashion"

type: "Fashion/Shoes" -> TRUE
type: "Food/Seafood" -> FALSE

String

String

begins with any one of

The operation evaluates to true if the attribute value begins with or equals any one of the target values.

Example
Filter: <type> begins with any one of ["Fashion", "Food", "Toys"]

type: "Fashion/Shoes" -> TRUE
type: "Food/Seafood" -> TRUE
type: "Home/Bedroom" -> FALSE

String

Array of strings

ends with

The operation evaluates to true if the attribute value ends with or equals the target value.

Example
Filter: <type> ends with "Shoes"

type: "Fashion/Shoes" -> TRUE
type: "Food/Seafood" -> FALSE

String

String

is one of

The operation evaluates to true if the attribute value equals any one of the target values.

Example
Filter: <brand> is one of ["Cakita", "Kosch", "Wakita"]

brand: "Cakita" -> TRUE
brand: "Dawelt" -> FALSE
brand: "Wakita" -> TRUE

The platform converts the attribute value to a string for the comparison.

Number

String

Array of strings

is not one of

The operation evaluates to true if the attribute value equals none of the target values.

Example
Filter: <brand> is not one of ["Cakita", "Kosch", "Wakita"]

brand: "Cakita" -> FALSE
brand: "Dawelt" -> TRUE
brand: "Wakita" -> FALSE

The platform converts the attribute value to a string for the comparison.

Number

String

Array of strings

includes

The operation evaluates to true if any one of the attribute values equals the target value.

Example
Filter: <features> includes "respins"

features: ["respins", "scatters", "wilds"] -> TRUE
features: ["paylines", "scatters", "wilds"] -> FALSE

The platform converts the attribute values to strings for the comparison.

The platform expects the attribute values to be of the same type.

Array of Booleans

Array of numbers

Array of strings

String

does not include

The operation evaluates to true if none of the attribute values equal the target value.

Example
Filter: <features> does not include "respins"

features: ["respins", "scatters", "wilds"] -> FALSE
features: ["paylines", "scatters", "wilds"] -> TRUE

The platform converts the attribute values to strings for the comparison.

The platform expects the attribute values to be of the same type.

Array of Booleans

Array of numbers

Array of strings

String

includes any one of

The operation evaluates to true if at least one of the attribute values equals at least one of the target values.

Example
Filter: <features> includes any one of ["respins", "wilds"]

features: ["respins", "scatters", "wilds"] -> TRUE
features: ["free spins", "paylines", "scatters"] -> FALSE

The platform converts the attribute values to strings for the comparison.

The platform expects the attribute values to be of the same type.

Array of Booleans

Array of numbers

Array of strings

Array of Booleans

Array of numbers

Array of strings

does not include any one of

The operation evaluates to true if none of the attribute values equals none of the target values.

Example
Filter: <features> does not include any one of ["respins", "wilds"]

features: ["respins", "scatters", "wilds"] -> FALSE
features: ["free spins", "paylines", "scatters"] -> TRUE

The platform converts the attribute values to strings for the comparison.

The platform expects the attribute values to be of the same type.

Array of Booleans

Array of numbers

Array of strings

Array of Booleans

Array of numbers

Array of strings

any one of contains

The operation evaluates to true if any one of the attribute values contains or equals the target value.

Example
Filter: <tags> any one of contains "sale"

tags: ["shirts", "short-sleeve", "top-rated"] -> FALSE
tags: ["shirts", "long-sleeve", "summer sale"] -> TRUE
tags: ["skirts", "sale 50%", "top-reviewed"] -> TRUE

The platform converts the attribute values to strings for the comparison.

The platform expects the attribute values to be of the same type.

Array of Booleans

Array of numbers

Array of strings

String

any one of begins with

The operation evaluates to true if any one of the attribute values begins with or equals the target value.

Example
Filter: <tags> any one of begins with "top"

tags: ["shirts", "short-sleeve", "top-rated"] -> TRUE
tags: ["shirts", "long-sleeve", "summer sale"] -> FALSE
tags: ["skirts", "sale 50%", "top-reviewed"] -> TRUE

The platform converts the attribute values to strings for the comparison.

The platform expects the attribute values to be of the same type.

Array of Booleans

Array of numbers

Array of strings

String

any one of ends with

The operation evaluates to true if any one of the attribute values ends with or equals the target value.

Example
Filter: <tags> any one of ends with "sleeve"

tags: ["shirts", "short-sleeve", "top-rated"] -> TRUE
tags: ["shirts", "long-sleeve", "summer sale"] -> TRUE
tags: ["skirts", "sale 50%", "top-reviewed"] -> FALSE

The platform converts the attribute values to strings for the comparison.

The platform expects the attribute values to be of the same type.

Array of Booleans

Array of numbers

Array of strings

String

exists

The operation evaluates to true if the attribute exists.

The attribute exists if the platform has tracked at least one value for the attribute.

Do not define a target value.

Array of Booleans

Array of numbers

Array of strings

Boolean

Number

String

does not exist

The operation evaluates to true if the attribute does not exist.

The attribute does not exist if the platform has not tracked any values for the attribute.

Do not define a target value.

Array of Booleans

Array of numbers

Array of strings

Boolean

Number

String

matches regular expression

The operation evaluates to true if the attribute value matches the defined regular expression.

Example
Filter: <name> matches regular expression "^[Aa]\w+s$"

name: "Aliens" -> TRUE
name: "ALIENS" -> FALSE

Define the regular expression using the RE2 syntax.

String

String

does not match regular expression

The operation evaluates to true if the attribute value does not match the defined regular expression.

Example
Filter: <name> does not match regular expression "^[Aa]\w+s$"

name: "Aliens" -> FALSE
name: "ALIENS" -> TRUE

Define the regular expression using the RE2 syntax.

String

String

Boosting rule examples

Boosting example: Promote new products during their launch campaign

ProblemSolutionBoosting rule settings

The new Air Frosmo 23 sneaker models are coming out on May 1. The product launch campaign will run from April 1 to May 10. The sneakers will be available for preorder starting April 1.

We need to make the new sneakers stand out when visitors search for sneakers or Frosmo shoes during the campaign.

Create a high-level boosting rule that targets the keywords "Frosmo", "shoe", and "sneaker", applies to Air Frosmo 23 sneakers, and is active from April 1 to May 10.

By targeting specific keywords, we increase the text match score for Air Frosmo 23 sneakers.

Click to enlarge:

Promote new products during their launch campaign
ProblemSolutionBoosting rule settings

The Frosmo Affinity trekking trousers are very popular with customers and sell extremely well. However, when searching for "Frosmo" clothes, the trousers rank relatively low in the search results because their product descriptions do not explicitly mention "Frosmo", resulting in reduced text match scores.

Create a medium-level boosting rule that targets the keyword "Frosmo" and applies to Frosmo Affinity trekking trousers.

By targeting the "Frosmo" keyword, we add an extra "Frosmo" mention to the searchable product data of every Frosmo Affinity trekking trouser, thereby boosting its text match score for searches where the search term contains "Frosmo".

Click to enlarge:

Lift popular products higher up in the search results

Boosting example: Prefer one product line over others in closely ranked products

ProblemSolutionBoosting rule settings

When visitors search for Frosmo clothes, the different clothing lines, both new and old, perform equally well in search results, with the products typically ranking really close to one another. We want all clothing lines to perform well, but we also want the new Affinity clothing line to perform a little bit better on balance, so that when a visitor searches, for example, Frosmo hoodies, the Frosmo Affinity hoodies will rank just above the Easy and other older hoodies.

Create a high-level boosting rule that targets all searches and applies to products in the Frosmo Affinity clothing line.

By targeting all searches, we make it more likely that Frosmo Affinity products win tiebreaking between competing Frosmo products that have the same text match score.

Click to enlarge:

Prefer one product line over others in closely ranked products