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
  • How does FHR A/B testing work
  • Integration of A/B tests
  • Integration for a non-caching solution
  • Integration for a caching solution
  1. A/B testing

Fredhopper A/B testing

PreviousConfiguration limitationNextIntegration steps for a non-caching solution

Last updated 7 months ago

One of the features offered on the Fredhopper (FHR) platform, as part of the Insights product is A/B testing. A/B testing can be performed on multiple features available on the FHR _**_platform, such as:

  • Campaigns

  • Rankings

  • Result Modifications

  • Search Configuration

How does FHR A/B testing work

If you have the FHR platform integrated into your web shop, you need to make a query to FHR to display a given page to the shopper. This may include different types of pages, such as: navigation pages, search results pages or product detail pages. Without A/B tests, such a query would return the standard (default) version of the page. With A/B tests however, you would request a variant of that page with the A/B test applied, based on the user's session id. This way, different shoppers would receive different variants of the page, thus allowing you to compare how different variants of the same page perform.

Important! The following implementation is intended for server to server implementations. The steps in the next section are not intended to be done on client side.

Throughout this documentation you will learn the necessary steps to integrate the solution. There are separate solutions depending on whether your website supports caching or not. If you support caching, you may choose to develop your own integration by implementing each of the steps mentioned in this overview section or you can choose to use the Java SDK which will do most of the work for you. Whilst you can jump to the SDK implementation directly, it is advisable to read through the integration steps in order to get a better understanding of how things work and what the SDK does under the hood.

Integration of A/B tests

A/B tests are configured inside the Merchandising Studio of FHR**.** There are separate integration solutions for websites that support caching and for the ones that do not.

Integration for a non-caching solution

In the case your website does not support caching, there is an optional solution to integrate A/B tests into your website. The selection of the A/B tests and their variants will be performed on our server’s side, according to the user session id passed as a query parameter. Instructions on how to include this parameter can be found in the following page:

Integration for a caching solution

For the purpose of simplifying the integration we have developed an SDK for Java platforms. If your backend application runs in Java, or at least can make use of Java libraries, you can integrate using our own Java AB Testing SDK. To dive right into that check the page below.

In order to learn more about how the integration works and why it's necessary, check out the page below. If you want to integrate AB testing, but your language or framework is not covered by one of our SDKs, you can refer to the steps covered there. The platform officially supports Java, Node.js and PHP integrations. However, the algorithm is straightforward and can be done with any language or framework able to perform standard HTTP queries.

🧪
Integration steps for a non-caching solution
Java SDK Integration
Manual A/B tests integration