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

# Google comparison shopping sites schema

> Schema for Google's comparison shopping sites block returned by the Google Search endpoint in the EEA: the products of every comparison site, with title, price and link, each with its site as supplier.

The [Google Search endpoint](https://cloro.dev/docs/api-reference/endpoint/monitor-google.md) returns Google's comparison shopping sites block as `result.comparisonShoppingSites`, on desktop and mobile, with no flag and at no extra cost. In the EEA, Google shows this block on product queries ("fiets kopen", "pračka") under the EU Digital Markets Act: a list of comparison shopping sites (Google Shopping, idealo, Kelkoo, beslist.nl, …), each with a carousel of products. `comparisonShoppingSites` is omitted when the SERP has no such block.

![Comparison shopping sites in Google Search](https://mintcdn.com/cloro/RN7RIx2ISJ6tP4Ur/images/google/search-comparison-shopping-sites.webp?fit=max\&auto=format\&n=RN7RIx2ISJ6tP4Ur\&q=85\&s=f15353b6ab87c63d1104bca09247e0f6)

Comparison shopping sites in Google Search: Shoppingbird open, Google and beslist.nl collapsed

The products of every site come in one list, in page order, each with its site as `supplier`, as in the [EU places unit](https://cloro.dev/docs/api-reference/endpoint/google/local-pack.md#eu-places-unit). The page opens the first site only: the products of the other sites, and of the sites behind "More products", come with `expanded: false`. Values are text as Google shows them, in the language of the SERP.

## Comparison shopping sites structure

| Field | Type | Description |
| - | - | - |
| `title` | string | Heading of the block as shown ("Vergelijkingssites", "Comparison sites"), sometimes a category ("Air Fryers") |
| `products` | array | The products of every site, in page order. See below |

### Product

`position`, `title`, `expanded` and `supplier` are always present.

| Field | Type | Description |
| - | - | - |
| `position` | number | Position in page order (1-indexed), across the sites |
| `title` | string | Product name as shown |
| `link` | string | The product's page on the comparison site. Omitted for Google Shopping, whose cards open Google's product viewer |
| `redirectLink` | string | The Google redirect the link came from |
| `price` | object | Price as shown. See [Price](#price) |
| `expanded` | boolean | `true` if the product's site is open on the page |
| `supplier` | object | The comparison site. See below |

### Supplier

The same object as the `supplier` of the [EU places unit](https://cloro.dev/docs/api-reference/endpoint/google/local-pack.md#eu-places-unit).

| Field | Type | Description |
| - | - | - |
| `name` | string | Comparison site (`"beslist.nl"`, `"Google"`) |
| `expanded` | boolean | `true` if this site is open on the page |
| `domain` | string | Site's domain as shown (`"www.beslist.nl"`) |
| `link` | string | The site's home or search page; for Google, the Shopping results on Google |
| `redirectLink` | string | The Google redirect the link came from |

### Price

| Field | Type | Description |
| - | - | - |
| `value` | number | Numeric price. Omitted when the number doesn't parse |
| `currency` | string | Currency symbol or code (`€`, `Kč`, `RON`) |
| `raw` | string | Price as shown (`"€ 239,00"`). A phone on a monthly plan shows the monthly amount (`"54,99 €/Monat x 24"`) |

## Response example

A response to `fiets kopen` in the Netherlands, on desktop: 4 sites with 8 products each.

```json theme={null}
{
  "success": true,
  "result": {
    "comparisonShoppingSites": {
      "title": "Vergelijkingssites",
      "products": [
        {
          "position": 1,
          "title": "Altec Classic 28 inch Heren Transportfiets Mat Zwart 53cm",
          "link": "https://www.shoppingbird.com/…",
          "redirectLink": "https://www.google.com/goto?url=…",
          "price": { "value": 239, "currency": "€", "raw": "€ 239,00" },
          "expanded": true,
          "supplier": {
            "name": "Shoppingbird",
            "expanded": true,
            "domain": "www.shoppingbird.com",
            "link": "https://www.shoppingbird.com/…",
            "redirectLink": "https://www.google.com/goto?url=…"
          }
        },
        // …
        {
          "position": 9,
          "title": "Btwin Stadsfiets 520 laag frame amandelgroen",
          "price": { "value": 349.99, "currency": "€", "raw": "€ 349,99" },
          "expanded": false,
          "supplier": {
            "name": "Google",
            "expanded": false,
            "domain": "www.google.com/shopping",
            "link": "https://www.google.com/search?…"
          }
        },
        // …
        {
          "position": 18,
          "title": "Cortina Tide ND7",
          "link": "https://www.beslist.nl/p/cortina-tide-stadsfiets-zwart-aluminium-frame-7-versnellingen/…",
          "redirectLink": "https://www.google.com/goto?url=…",
          "price": { "value": 729, "currency": "€", "raw": "€ 729,00" },
          "expanded": false,
          "supplier": {
            "name": "beslist.nl",
            "expanded": false,
            "domain": "www.beslist.nl",
            "link": "https://www.beslist.nl/…",
            "redirectLink": "https://www.google.com/goto?url=…"
          }
        }
        // …
      ]
    }
  }
}
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.