> ## Documentation Index
> Fetch the complete documentation index at: https://developers.criteo.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Display Multipliers

export const EndpointBadge = ({method = "GET", children}) => {
  const METHOD_STYLES = {
    GET: {
      bg: "mint-bg-[#2AB673]"
    },
    POST: {
      bg: "mint-bg-[#3064E3]"
    },
    PUT: {
      bg: "mint-bg-[#C28C30]"
    },
    PATCH: {
      bg: "mint-bg-[#DA622B]"
    },
    DELETE: {
      bg: "mint-bg-[#CB3A32]"
    },
    API: {
      bg: "mint-bg-black"
    }
  };
  const key = method.toUpperCase();
  const styles = METHOD_STYLES[key] ?? METHOD_STYLES.API;
  return <div className="relative mt-7">
      <span className={`absolute -top-2 -left-2 z-10 ${styles.bg} text-white px-2.5 py-0.5 rounded-full text-xs font-bold tracking-wide`}>
        {key}
      </span>
      {children}
    </div>;
};

## Introduction

Criteo has historically permitted **bid customization for each category** of products associated with your Ad Set.

Previously, each product category had its own separate, absolute bid level.\
For example, an Ad Set with a bid level of `$2.00 USD` might have a bid level of `$1.00 USD` set for **Category A** and `$4.00 USD` for **Category B**.

With the Criteo API, this bidding behavior can be achieved with **display multipliers**.

With **display multipliers**, these values are now expressed as a **fraction** of the overall Ad Set bid level.

In the example above, **Category A** would have a display multiplier value of `0.5` and **Category B** would have a display multiplier value of `2`.

***

## Retrieve Display Multipliers for an Ad Set

The display multipliers associated with a specific Ad Set can be retrieved via a `GET` request to the `/ad-sets` endpoint, with the Ad Set ID as a URL parameter and `/display-multipliers` specified.

<EndpointBadge method="get">
  ```http theme={null}
  https://api.criteo.com/2026-01/marketing-solutions/ad-sets/{adSetId}/display-multipliers
  ```
</EndpointBadge>

**Sample response**

The API will return an array of categories associated with the campaign:

```json JSON theme={null}
{
    "data": [
        {
            "type": "ReadAdSetDisplayMultiplier",
            "attributes": {
                "id": "12345|1",
                "categoryName": "Shoes",
                "displayMultiplier": 1.2
            }
        },
        {
            "type": "ReadAdSetDisplayMultiplier",
            "attributes": {
                "id": "12345|2",
                "categoryName": "Scarves",
                "displayMultiplier": 0.8
            }
        }
    ],
    "errors": []
}
```

***

## Update Display Multipliers

The fields of one or more of an Ad Set's display multipliers can be updated by making a `PATCH` request to the `/ad-sets` endpoint, with the Ad Set ID as a URL parameter and `/display-multipliers` specified.

For example, the following call would update the `displayMultiplier` values for the category IDs `1` and `2`: 

<EndpointBadge method="patch">
  ```http theme={null}
  https://api.criteo.com/2026-01/marketing-solutions/ad-sets/{adSetId}/display-multipliers
  ```
</EndpointBadge>

**Sample request**

```json JSON theme={null}
{
    "data": [
        {
            "type": "WriteAdSetDisplayMultipliers",
            "attributes": {
                "id": "12345|1",
                "displayMultiplier": 2.0
            }
        }, 
        {
            "type": "WriteAdSetDisplayMultiplier",
            "attributes": {
                "id": "12345|2",
                "displayMultiplier": 1.1
            }
        }
    ]
}
```

 **Sample response**

The API will return an array of Ad Sets that have been updated successfully in the response `data`. These will contain only two parameters, `type` and `id`.

```json JSON theme={null}
{
    "data": [
        {
            "type": "ReadAdSetDisplayMultiplier",
            "id": "12345|1"
        },
        {
            "type": "ReadAdSetDisplayMultiplier",
            "id": "12345|2"
        }
    ],
    "errors": [],
    "warnings": []
}
```

<Danger>
  **Updating Multiple Display Multiplayers**

  This endpoint allows you to update several display multipliers within a single call. When updating multiple items, note that some updates may succeed while others fail.
</Danger>

***

## Validation Errors

In addition to [general API errors](/criteo-apis/docs/api-error-types), you may encounter validation errors when updating a display multiplier.

Below is a list of error codes for display multiplier validation and a more detailed description of their meaning.

**`campaign--display-multiplier-update-check--category-not-enabled`**\
The category targeted by the display multiplier is not enabled.

**`campaign--display-multiplier-update-check--invalid-display-multiplier`**\
The value provided in the display multiplier field is not valid. Expected values are between 0.5 and 2.0, inclusive.

## What's next

* [Category Bids](/marketing-solutions/docs/category-bids)
