LogoLogo
Support
Product Discovery Developer Guide
Product Discovery Developer Guide
  • Product Discovery Developer Guide
  • πŸ›’Item catalog management
    • What is the Items API?
    • How to work with Items
      • Item Schema
        • Attributes
        • Nested Item Schemas
        • Using the Item Schema API
        • DefaultLocale API
        • Onboarding on/migrating to Fredhopper
        • List of Reserved Attributes
      • Category Tree
        • Using the Category Tree API
        • Onboarding on XO
      • Item Catalog
        • Using the Catalog API
      • Items
        • Using the streaming Items API
        • Using the batch Items API
    • Step by Step guide
      • Step by step guide for Fredhopper customers
    • Feedback
      • Using the Feedback API
    • Authorization to APIs
    • Troubleshooting API errors
  • 🎯XO Recommendations
    • Introduction
    • Using the Recommendations API
    • Setting up the Chrome extension
    • Micro-segmentation
    • XO Legacy APIs
  • πŸ”ŽXO Search
    • Introduction
    • Getting started
    • API Reference
      • Search API
      • Autocomplete API (Beta)
      • Product Suggest API
    • API Parameters
      • Search
      • Pagination
      • Faceting
      • Sorting
      • Grouping
      • Filtering
      • Disable features
      • Response mask
      • Context
    • Configuration limitation
  • πŸ§ͺA/B testing
    • Fredhopper A/B testing
      • Integration steps for a non-caching solution
      • Integration steps for a caching solution
        • Java SDK Integration
          • Setup
          • Retrieve running A/B tests - Java SDK
          • Filter and request variant - Java SDK
          • Extending the SDK
        • Manual A/B tests integration
          • Retrieve running A/B tests
          • Filter out irrelevant A/B tests
          • Assign variants to user
          • Request variant for page
        • Limitations and Best Practices
  • πŸ“šResources
    • Glossary
    • Best Practices
      • Tracker Best Practices
      • Items API Best Practices
      • Fredhopper Data Configuration Best Practices
      • Fredhopper Query Response Best Practices
      • Fredhopper Merchandising Studio Best Practices
    • Privacy Notice
  • Archived Pages
    • FHR Tracking plan
    • XO Tracking plan
    • The Tracking API and JS Library
      • What to Track
        • Generic Actions
          • View
          • Click
          • Add to Cart
          • Remove from Cart
          • Purchase
        • Custom Actions
      • Initializing the JavaScript Library
      • REST API Technical Documentation
Powered by GitBook

Copyright @ 2024 Crownpeak Technology, Inc. All rights reserved.

On this page
  • Display Fields
  • View Size
  • Supress Response Elements
  • Previous / Next Links
  • HTTP Response Compression (front-end integration)
  • Item Campaigns
  1. Resources
  2. Best Practices

Fredhopper Query Response Best Practices

These are best practices to follow when configuring query responses within your FAS instance.

When configuring your integration with Fredhopper it's important to optimise the query responses to maintain performance. For each query parameter listed, there is a recommend optimal setting or limit, and if applicable an acceptable upper limit. Ignoring a recommendation won't individually cause an issue, but when combined with other recommendations being exceeded, it may lead to performance issues.

Display Fields

Configure the fields returned by locale and type of view (navigation, search, detail etc.).

The number of display fields requested for search and navigation pages should be limited to only the fields that are actually used or required by your integration.

The more fields you request, the larger the response will need to be, the more time it will take to process and retrieve the attributes for that response.

Recommendations

Optimal limit: 24 display fields

Acceptable limit: 48 display fields

Avoid requesting all-variants display fields. These are more expensive to return than regular fields as each item requires interogating all variants of an item, resulting in more requests of the data and a larger response.

View Size

The view size parameter affects the number of items returned in a single response.

It’s configured per universe/locale, but can also be specified for a single query with the fh_view_size query parameter.

The system default is 20.

Recommendations

Optimal limit: 24 items per response

Acceptable limit: 48 items per response

Supress Response Elements

You can configure Fredhopper to not return data in the query response. Doing so will result in smaller and faster responses.

This is configured using the fh_suppress parameter.

The facets:url-params component in the query response is by default included on each value of each facet. Many customers do not use it, and by suppressing this component you will get smaller and faster responses.

Recommendations

Always suppress the facets:url-params response component.

Suppress the following additional components if not used:

  • items:url-params

  • campaigns:url-params

Previous / Next Links

The previous and next links are disabled by default. You should avoid enabling these as the additional calculations will impact performance.

Recommendation

Do not enable prev/next links

HTTP Response Compression (front-end integration)

Our query API supports HTTP compression of the responses. We strongly advise using HTTP compression since it reduces the network traffic by factor of 10-15%.

Compression must be enabled by your front-end integrator. The query request must include an HTTP header: Accept-Encoding: gzip

Recommendation

Enable HTTP GZIP compression for query responses.

Item Campaigns

When implementing campaigns please consider the number of campaigns returned in a query.

Recommendation

Reduce the number of item campaigns triggered for each query:

  • Optimal limit: 1 per query

  • Acceptable limit: 2 per query

PreviousFredhopper Data Configuration Best PracticesNextFredhopper Merchandising Studio Best Practices

Last updated 7 months ago

When combined with a , this will impact performance.

πŸ“š
large number of returned items per campaign