Search algorithm

Prev Next

Summary

Search algorithm is a menu item under “Basic Settings” section. For default menu structure it can be reached from More settings…


The Search Algorithm allows to specify and fine-tune FactFinder search algorithm settings.

search_algorithm_setttings

Edit configuration mode should be entered to start editing settings.

Minimum score

The Minimum score setting defines the minimum score (which measures the similarity to the search term) that any product must have in order for it to be included in the search results.

The similarity of the individual products of a search result can be easily calculated by the "Search term effect" value displayed in the Cockpit:

  • The score for the product in the example screenshot is 100% + (-5.14%) = 94.86%.

  • If the minimum score was set to 94% or lower, this product with the example search term "bike lock" will appear in the search result.

  • If the minimum score was set to 95% or higher, this product with the example search term "bike lock" would not appear in the search result.

  • it should be considered that the minimum score is not compared with the overall score (which also includes the influence of ASO, of the Semantic Enhancer and of the ranking rules) but with the similarity (which only depends on the search term effect

Percent from top (Result score spread)

The Percent from top parameter can also be seen as a form of dynamic minimum score, ensuring that only the best matches are shown:

  • This is a range calculated down from the score of the best match, everything that falls below this range is discarded.

  • Typical values are approximately 10% to 12%.

  • The spread is applied to the scores resulting from the search term, and will thus not consider other effects on scores, like adjustments of ranking rules.

For example, if the best hit has a score of 98.7% and the spread is set to 8%, all hits with a score of less than 90.7% will be discarded from results.

Performance vs. Quality

Performance vs. Quality is a parameter which affects the precision that FactFinder uses to search for results:

  • In general, the search quality improves as this value increases, but, search speed decreases at the same time.

  • Default value is 4.

  • 3 or less significantly reduces the quality of the search result while it improves the overall speed

  • 5 or more will improve the quality, but reduce the speed

The Search timeout (in seconds) parameter makes it possible to set the maximum allowed time for a search.

Exact Search

Exact search is a search method that matches query terms exactly to the values in a specified field—no spelling correction, partial matching, or fuzzy logic is applied.

For example, if a product has the name "Electric Drill":

  • An exact search for "Electric" or "Electric Drill" will return it.

  • An exact search for "dril" or "ElectricDrill" will not return it, since those don’t exactly match any field values.

Exact search is useful when:

  • You want precise control over matches (e.g. article numbers, SKUs, or keywords).

  • You want to avoid false positives from fuzzy matching.

  • Performance is a concern, and strict matching reduces result size.

It's best combined with fuzzy search to balance precision and flexibility.

Exact Search Parameter is a parameter which specifies the default mode for exact search if none is provided in the request. Available modes:

  • Disabled: Exact search is off; only fuzzy search is used.

  • Only exact search: Returns results with fields exactly matching query words. May yield zero results if no exact matches.

  • Exact or fuzzy fallback: Tries exact search first; falls back to fuzzy if no matches found.

  • Exact + fuzzy on full query: Combines exact and fuzzy results. Uses query words for exact match and full query for fuzzy.

  • Exact + fuzzy on remainder: Combines results; performs fuzzy search only on unmatched parts of the query.

  • Article number search: Uses legacy ANS logic. If compatible, performs exact search on ANS fields.

Any changes will require saving the transaction.