Структурированные данные для показа ассортимента (Product, Offer)

Пример блока знаний о товаре в результатах поиска

Если разметить на странице данные о товарах (Product), для нее может стать доступен показ ассортимента в Google Поиске, в том числе в блоке знаний о товарах, в Google Картинках, в популярных товарах и описаниях товаров. При этом также могут быть показаны такие данные о товаре, как цена, доступность, сведения о доставке и правила возврата.

В этом руководстве описаны требования к структурированным данным типа Product для показа ассортимента. Если вы не знаете, какую разметку использовать, прочитайте нашу вводную статью о разметке Product.

Как добавлять структурированные данные

Структурированные данные – стандартизированный формат, который позволяет предоставлять информацию о странице и классифицировать ее контент. О том, как это работает, рассказывается в другой статье.

Ниже в общих чертах описано, как создать, проверить и добавить на сайт структурированные данные. Пошаговые инструкции вы найдете в практической работе, посвященной добавлению структурированных данных на веб-страницу.

  1. Добавьте обязательные свойства. Узнайте, в каких частях страницы нужно размещать структурированные данные выбранного вами формата.
  2. Следуйте рекомендациям.
  3. Протестируйте свой код с помощью инструмента проверки расширенных результатов. Если будут обнаружены критические ошибки, устраните их. Мы также рекомендуем устранить некритические ошибки, отмеченные в инструменте. Это может привести к повышению качества структурированных данных, хотя страницы будут подходить для создания расширенных результатов и без этого.
  4. Опубликуйте страницу и с помощью инструмента проверки URL выясните, как она выглядит для робота Googlebot. Убедитесь, что доступ Google к странице не заблокирован файлом robots.txt или метатегом noindex и авторизация на ней не требуется. Если все в порядке, то запросите повторное сканирование ваших URL.
  5. Отправляйте нам файл Sitemap, чтобы информировать нас об изменениях на сайте. Отправку такого файла можно автоматизировать с помощью Search Console Sitemap API.

Примеры

Ниже показано, как добавить на веб-страницы структурированные данные для той или иной ситуации.

Страница товара с ценовым предложением

Вот пример страницы, где можно купить товар, с отзывами об этом товаре.

JSON-LD


 <html>
  <head>
    <title>Executive Anvil</title>
    <script type="application/ld+json">
    {
      "@context": "https://schema.org/",
      "@type": "Product",
      "name": "Executive Anvil",
      "image": [
        "https://example.com/photos/1x1/photo.jpg",
        "https://example.com/photos/4x3/photo.jpg",
        "https://example.com/photos/16x9/photo.jpg"
       ],
      "description": "Sleeker than ACME's Classic Anvil, the Executive Anvil is perfect for the business traveler looking for something to drop from a height.",
      "sku": "0446310786",
      "mpn": "925872",
      "brand": {
        "@type": "Brand",
        "name": "ACME"
      },
      "review": {
        "@type": "Review",
        "reviewRating": {
          "@type": "Rating",
          "ratingValue": 4,
          "bestRating": 5
        },
        "author": {
          "@type": "Person",
          "name": "Fred Benson"
        }
      },
      "aggregateRating": {
        "@type": "AggregateRating",
        "ratingValue": 4.4,
        "reviewCount": 89
      },
      "offers": {
        "@type": "Offer",
        "url": "https://example.com/anvil",
        "priceCurrency": "USD",
        "price": 119.99,
        "priceValidUntil": "2024-11-20",
        "itemCondition": "https://schema.org/UsedCondition",
        "availability": "https://schema.org/InStock"
      }
    }
    </script>
  </head>
  <body>
  </body>
</html>

RDFa


 <html>
  <head>
    <title>Executive Anvil</title>
  </head>
  <body>
    <div typeof="schema:Product">
        <div rel="schema:review">
          <div typeof="schema:Review">
            <div rel="schema:reviewRating">
              <div typeof="schema:Rating">
                <div property="schema:ratingValue" content="4"></div>
                <div property="schema:bestRating" content="5"></div>
              </div>
            </div>
            <div rel="schema:author">
              <div typeof="schema:Person">
                <div property="schema:name" content="Fred Benson"></div>
              </div>
            </div>
          </div>
        </div>
        <div rel="schema:image" resource="https://example.com/photos/4x3/photo.jpg"></div>
        <div property="schema:mpn" content="925872"></div>
        <div property="schema:name" content="Executive Anvil"></div>
        <div property="schema:description" content="Sleeker than ACME's Classic Anvil, the Executive Anvil is perfect for the business traveler looking for something to drop from a height."></div>
        <div rel="schema:image" resource="https://example.com/photos/1x1/photo.jpg"></div>
        <div rel="schema:brand">
          <div typeof="schema:Brand">
            <div property="schema:name" content="ACME"></div>
          </div>
        </div>
        <div rel="schema:aggregateRating">
          <div typeof="schema:AggregateRating">
            <div property="schema:reviewCount" content="89"></div>
            <div property="schema:ratingValue" content="4.4"></div>
          </div>
        </div>
        <div rel="schema:offers">
          <div typeof="schema:Offer">
            <div property="schema:price" content="119.99"></div>
            <div property="schema:availability" content="https://schema.org/InStock"></div>
            <div property="schema:priceCurrency" content="USD"></div>
            <div property="schema:priceValidUntil" datatype="xsd:date" content="2024-11-20"></div>
            <div rel="schema:url" resource="https://example.com/anvil"></div>
            <div property="schema:itemCondition" content="https://schema.org/UsedCondition"></div>
          </div>
        </div>
        <div rel="schema:image" resource="https://example.com/photos/16x9/photo.jpg"></div>
        <div property="schema:sku" content="0446310786"></div>
      </div>
  </body>
</html>

Микроданные


 <html>
  <head>
    <title>Executive Anvil</title>
  </head>
  <body>
  <div>
    <div itemtype="https://schema.org/Product" itemscope>
      <meta itemprop="mpn" content="925872" />
      <meta itemprop="name" content="Executive Anvil" />
      <link itemprop="image" href="https://example.com/photos/16x9/photo.jpg" />
      <link itemprop="image" href="https://example.com/photos/4x3/photo.jpg" />
      <link itemprop="image" href="https://example.com/photos/1x1/photo.jpg" />
      <meta itemprop="description" content="Sleeker than ACME's Classic Anvil, the Executive Anvil is perfect for the business traveler looking for something to drop from a height." />
      <div itemprop="offers" itemtype="https://schema.org/Offer" itemscope>
        <link itemprop="url" href="https://example.com/anvil" />
        <meta itemprop="availability" content="https://schema.org/InStock" />
        <meta itemprop="priceCurrency" content="USD" />
        <meta itemprop="itemCondition" content="https://schema.org/UsedCondition" />
        <meta itemprop="price" content="119.99" />
        <meta itemprop="priceValidUntil" content="2024-11-20" />
      </div>
      <div itemprop="aggregateRating" itemtype="https://schema.org/AggregateRating" itemscope>
        <meta itemprop="reviewCount" content="89" />
        <meta itemprop="ratingValue" content="4.4" />
      </div>
      <div itemprop="review" itemtype="https://schema.org/Review" itemscope>
        <div itemprop="author" itemtype="https://schema.org/Person" itemscope>
          <meta itemprop="name" content="Fred Benson" />
        </div>
        <div itemprop="reviewRating" itemtype="https://schema.org/Rating" itemscope>
          <meta itemprop="ratingValue" content="4" />
          <meta itemprop="bestRating" content="5" />
        </div>
      </div>
      <meta itemprop="sku" content="0446310786" />
      <div itemprop="brand" itemtype="https://schema.org/Brand" itemscope>
        <meta itemprop="name" content="ACME" />
      </div>
    </div>
  </div>
  </body>
</html>

Цены

Ниже приведены два примера указания цены в JSON-LD.

Цена может быть указана с помощью свойства price:

"offers": {
  "@type": "Offer",
  "price": 10.00,
  "priceCurrency": "USD",
  ...
}

Также цена может быть указана с помощью свойства priceSpecification:

"offers": {
  "@type": "Offer",
  "priceSpecification": {
    "@type": "UnitPriceSpecification",
    "price": 10.00,
    "priceCurrency": "USD"
  },
  ...
}

Как указать цену с учетом количества единицы товара

Вот пример указания стоимости 4,5 л товара, который всегда продается в таре объемом 750 мл. Этот тип цены особенно популярен в ЕС при продаже товаров на объем или вес.

При наличии количества единицы товара и его базового количества цена задается в элементе UnitPriceSpecification.

"priceSpecification": {
"@type": "UnitPriceSpecification",
"price": 81.00,
"priceCurrency": "EUR",
"referenceQuantity": {
  "@type": "QuantitativeValue",
  "value": "4.5",
  "unitCode": "LTR",
  "valueReference": {
    "@type": "QuantitativeValue",
    "value": "750",
    "unitCode": "MLT"
  }
}
}

Цена со скидкой

В следующем примере цена товара указана со скидкой. Текущая цена или цена предложения автоматически становится ценой со скидкой, как только вы вдобавок к розничной цене указываете ещё один вариант и помечаете его свойством priceType со значением https://schema.org/ListPrice. Цену предложения помечать свойством priceType не нужно.

{
  "@context": "https://schema.org/",
  "@type": "Product",
  "name": "Nice trinket",
  "offers": {
    "@type": "Offer",
    "url": "https://www.example.com/trinket_offer",
    "price": 10.00,
    "priceCurrency": "GBP",
    "priceSpecification": {
      "@type": "UnitPriceSpecification",
      "priceType": "https://schema.org/ListPrice",
      "price": 15.00,
      "priceCurrency": "GBP"
    }
  }
}

Указать цену со скидкой и розничную цену можно также, добавив две записи UnitPriceSpecification:

{
  "@context": "https://schema.org/",
  "@type": "Product",
  "name": "Nice trinket",
  "offers": {
    "@type": "Offer",
    "priceSpecification": [
      {
        "@type": "UnitPriceSpecification",
        "price": 10.00,
        "priceCurrency": "GBP"
      },
      {
        "@type": "UnitPriceSpecification",
        "priceType": "https://schema.org/ListPrice",
        "price": 15.00,
        "priceCurrency": "GBP"
      }
    ]
  }
}

Сведения о доставке

Вот пример страницы товара со сведениями о доставке. В этом примере для всех проживающих в США стоимость доставки составит $3.49. Дополнительные примеры приведены в разделе Доставка.

JSON-LD


 <html>
  <head>
    <title>Nice trinket</title>
    <script type="application/ld+json">
    {
      "@context": "https://schema.org/",
      "@type": "Product",
      "sku": "trinket-12345",
      "gtin14": "12345678901234",
      "image": [
        "https://example.com/photos/16x9/trinket.jpg",
        "https://example.com/photos/4x3/trinket.jpg",
        "https://example.com/photos/1x1/trinket.jpg"
      ],
      "name": "Nice trinket",
      "description": "Trinket with clean lines",
      "brand": {
        "@type": "Brand",
        "name": "MyBrand"
      },
      "offers": {
        "@type": "Offer",
        "url": "https://www.example.com/trinket_offer",
        "itemCondition": "https://schema.org/NewCondition",
        "availability": "https://schema.org/InStock",
        "price": 39.99,
        "priceCurrency": "USD",
        "priceValidUntil": "2024-11-20",
        "shippingDetails": {
          "@type": "OfferShippingDetails",
          "shippingRate": {
            "@type": "MonetaryAmount",
            "value": 3.49,
            "currency": "USD"
          },
          "shippingDestination": {
            "@type": "DefinedRegion",
            "addressCountry": "US"
          },
          "deliveryTime": {
            "@type": "ShippingDeliveryTime",
            "handlingTime": {
              "@type": "QuantitativeValue",
              "minValue": 0,
              "maxValue": 1,
              "unitCode": "DAY"
            },
            "transitTime": {
              "@type": "QuantitativeValue",
              "minValue": 1,
              "maxValue": 5,
              "unitCode": "DAY"
            }
          }
        }
      },
      "review": {
        "@type": "Review",
          "reviewRating": {
            "@type": "Rating",
            "ratingValue": 4,
            "bestRating": 5
          },
          "author": {
            "@type": "Person",
            "name": "Fred Benson"
          }
        },
        "aggregateRating": {
          "@type": "AggregateRating",
          "ratingValue": 4.4,
          "reviewCount": 89
        }
      }
    </script>
  </head>
  <body>
  </body>
</html>

RDFa


 <html>
  <head>
    <title>Nice trinket</title>
  </head>
  <body>
    <div typeof="schema:Product">
      <div property="schema:sku" content="trinket-12345"></div>
      <div property="schema:gtin14" content="12345678901234"></div>
      <div property="schema:name" content="Nice trinket"></div>
      <div rel="schema:image" resource="https://example.com/photos/16x9/trinket.jpg"></div>
      <div rel="schema:image" resource="https://example.com/photos/4x3/trinket.jpg"></div>
      <div rel="schema:image" resource="https://example.com/photos/1x1/trinket.jpg"></div>
      <div property="schema:description" content="Trinket with clean lines"></div>
      <div rel="schema:brand">
        <div typeof="schema:Brand">
          <div property="schema:name" content="MyBrand"></div>
        </div>
      </div>
      <div rel="schema:offers">
        <div typeof="schema:Offer">
          <div rel="schema:url" resource="https://example.com/trinket_offer"></div>
          <div property="schema:itemCondition" content="https://schema.org/NewCondition"></div>
          <div property="schema:availability" content="https://schema.org/InStock"></div>
          <div property="schema:price" content="39.99"></div>
          <div property="schema:priceCurrency" content="USD"></div>
          <div property="schema:priceValidUntil" datatype="xsd:date" content="2024-11-20"></div>
          <div rel="schema:shippingDetails">
            <div typeof="schema:OfferShippingDetails">
              <div rel="schema:shippingRate">
                <div typeof="schema:MonetaryAmount">
                  <div property="schema:value" content="3.49"></div>
                  <div property="schema:currency" content="USD"></div>
                </div>
              </div>
              <div rel="schema:shippingDestination">
                <div typeof="schema:DefinedRegion">
                  <div property="schema:addressCountry" content="US"></div>
                </div>
              </div>
              <div rel="schema:deliveryTime">
                <div typeof="schema:ShippingDeliveryTime">
                  <div rel="schema:handlingTime">
                    <div typeof="schema:QuantitativeValue">
                      <div property="schema:minValue" content="0"></div>
                      <div property="schema:maxValue" content="1"></div>
                      <div property="schema:unitCode" content="DAY"></div>
                    </div>
                  </div>
                  <div rel="schema:transitTime">
                    <div typeof="schema:QuantitativeValue">
                      <div property="schema:minValue" content="1"></div>
                      <div property="schema:maxValue" content="5"></div>
                      <div property="schema:unitCode" content="DAY"></div>
                    </div>
                  </div>
                </div>
              </div>
            </div>
          </div>
        </div>
      </div>
      <div rel="schema:review">
        <div typeof="schema:Review">
          <div rel="schema:reviewRating">
            <div typeof="schema:Rating">
              <div property="schema:ratingValue" content="4"></div>
              <div property="schema:bestRating" content="5"></div>
            </div>
          </div>
          <div rel="schema:author">
            <div typeof="schema:Person">
              <div property="schema:name" content="Fred Benson"></div>
            </div>
          </div>
        </div>
      </div>
      <div rel="schema:aggregateRating">
        <div typeof="schema:AggregateRating">
          <div property="schema:reviewCount" content="89"></div>
          <div property="schema:ratingValue" content="4.4"></div>
        </div>
      </div>
    </div>
  </body>
</html>

Микроданные


 <html>
  <head>
    <title>Nice trinket</title>
  </head>
  <body>
  <div>
    <div itemtype="https://schema.org/Product" itemscope>
      <meta itemprop="sku" content="trinket-12345" />
      <meta itemprop="gtin14" content="12345678901234" />
      <meta itemprop="name" content="Nice trinket" />
      <link itemprop="image" href="https://example.com/photos/16x9/trinket.jpg" />
      <link itemprop="image" href="https://example.com/photos/4x3/trinket.jpg" />
      <link itemprop="image" href="https://example.com/photos/1x1/trinket.jpg" />
      <meta itemprop="description" content="Trinket with clean lines" />
      <div itemprop="brand" itemtype="https://schema.org/Brand" itemscope>
        <meta itemprop="name" content="MyBrand" />
      </div>
      <div itemprop="offers" itemtype="https://schema.org/Offer" itemscope>
        <link itemprop="url" href="https://www.example.com/trinket_offer" />
        <meta itemprop="itemCondition" content="https://schema.org/NewCondition" />
        <meta itemprop="availability" content="https://schema.org/InStock" />
        <meta itemprop="price" content="39.99" />
        <meta itemprop="priceCurrency" content="USD" />
        <meta itemprop="priceValidUntil" content="2024-11-20" />
        <div itemprop="shippingDetails" itemtype="https://schema.org/OfferShippingDetails" itemscope>
          <div itemprop="shippingRate" itemtype="https://schema.org/MonetaryAmount" itemscope>
            <meta itemprop="value" content="3.49" />
            <meta itemprop="currency" content="USD" />
          </div>
          <div itemprop="shippingDestination" itemtype="https://schema.org/DefinedRegion" itemscope>
            <meta itemprop="addressCountry" content="US" />
          </div>
          <div itemprop="deliveryTime" itemtype="https://schema.org/ShippingDeliveryTime" itemscope>
            <div itemprop="handlingTime" itemtype="https://schema.org/QuantitativeValue" itemscope>
              <meta itemprop="minValue" content="0" />
              <meta itemprop="maxValue" content="1" />
              <meta itemprop="unitCode" content="DAY" />
            </div>
            <div itemprop="transitTime" itemtype="https://schema.org/QuantitativeValue" itemscope>
              <meta itemprop="minValue" content="1" />
              <meta itemprop="maxValue" content="5" />
              <meta itemprop="unitCode" content="DAY" />
            </div>
          </div>
        </div>
      </div>
      <div itemprop="review" itemtype="https://schema.org/Review" itemscope>
        <div itemprop="author" itemtype="https://schema.org/Person" itemscope>
          <meta itemprop="name" content="Fred Benson" />
        </div>
        <div itemprop="reviewRating" itemtype="https://schema.org/Rating" itemscope>
          <meta itemprop="ratingValue" content="4" />
          <meta itemprop="bestRating" content="5" />
        </div>
      </div>
      <div itemprop="aggregateRating" itemtype="https://schema.org/AggregateRating" itemscope>
        <meta itemprop="reviewCount" content="89" />
        <meta itemprop="ratingValue" content="4.4" />
      </div>
    </div>
  </div>
  </body>
</html>

Бесплатная доставка

Вот пример того, как указать бесплатную доставку для жителей штата Нью-Йорк.

"shippingDetails": {
  "@type": "OfferShippingDetails",
  "shippingRate": {
    "@type": "MonetaryAmount",
    "value": "0",
    "currency": "USD"
  },
  "shippingDestination": [
    {
      "@type": "DefinedRegion",
      "addressCountry": "US",
      "addressRegion": ["NY"]
    }
  ]
}

Сведения о возврате

Вот пример страницы товара с описанием процедуры возврата. Разметкой обозначаются правила возврата, согласно которым товар с доставкой в США можно без комиссии вернуть в течение 60 дней.

JSON-LD


 <html>
  <head>
    <title>Nice trinket</title>
    <script type="application/ld+json">
    {
      "@context": "https://schema.org/",
      "@type": "Product",
      "sku": "trinket-12345",
      "gtin14": "12345678901234",
      "image": [
        "https://example.com/photos/16x9/trinket.jpg",
        "https://example.com/photos/4x3/trinket.jpg",
        "https://example.com/photos/1x1/trinket.jpg"
      ],
      "name": "Nice trinket",
      "description": "Trinket with clean lines",
      "brand": {
        "@type": "Brand",
        "name": "MyBrand"
      },
      "offers": {
        "@type": "Offer",
        "url": "https://www.example.com/trinket_offer",
        "itemCondition": "https://schema.org/NewCondition",
        "availability": "https://schema.org/InStock",
        "priceSpecification": {
          "@type": "PriceSpecification",
          "price": 39.99,
          "priceCurrency": "CHF"
        },
        "hasMerchantReturnPolicy": {
          "@type": "MerchantReturnPolicy",
          "applicableCountry": "CH",
          "returnPolicyCategory": "https://schema.org/MerchantReturnFiniteReturnWindow",
          "merchantReturnDays": 60,
          "returnMethod": "https://schema.org/ReturnByMail",
          "returnFees": "https://schema.org/FreeReturn"
        }
      }
    }
    </script>
  </head>
  <body>
  </body>
</html>

RDFa


 <html>
  <head>
    <title>Nice trinket</title>
  </head>
  <body>
    <div typeof="schema:Product">
      <div property="schema:sku" content="trinket-12345"></div>
      <div property="schema:gtin14" content="12345678901234"></div>
      <div property="schema:name" content="Nice trinket"></div>
      <div rel="schema:image" resource="https://example.com/photos/16x9/trinket.jpg"></div>
      <div rel="schema:image" resource="https://example.com/photos/4x3/trinket.jpg"></div>
      <div rel="schema:image" resource="https://example.com/photos/1x1/trinket.jpg"></div>
      <div property="schema:description" content="Trinket with clean lines"></div>
      <div rel="schema:brand">
        <div typeof="schema:Brand">
          <div property="schema:name" content="MyBrand"></div>
        </div>
      </div>
      <div rel="schema:offers">
        <div typeof="schema:Offer">
          <div rel="schema:url" resource="https://example.com/trinket_offer"></div>
          <div property="schema:itemCondition" content="https://schema.org/NewCondition"></div>
          <div property="schema:availability" content="https://schema.org/InStock"></div>
          <div property="schema:price" content="39.99"></div>
          <div property="schema:priceCurrency" content="CHF"></div>
          <div property="schema:priceValidUntil" datatype="xsd:date" content="2024-11-20"></div>
          <div rel="schema:hasMerchantReturnPolicy">
            <div typeof="schema:MerchantReturnPolicy">
              <div property="schema:applicableCountry" content="US"></div>
              <div property="schema:returnPolicyCategory" content="https://schema.org/MerchantReturnFiniteReturnWindow"></div>
              <div property="schema:merchantReturnDays" content="60"></div>
              <div property="schema:returnMethod" content="https://schema.org/ReturnByMail"></div>
              <div property="schema:returnFees" content="https://schema.org/FreeReturn"></div>
            </div>
          </div>
        </div>
      </div>
    </div>
  </body>
</html>

Микроданные


 <html>
  <head>
    <title>Nice trinket</title>
  </head>
  <body>
  <div>
    <div itemtype="https://schema.org/Product" itemscope>
      <meta itemprop="sku" content="trinket-12345" />
      <meta itemprop="gtin14" content="12345678901234" />
      <meta itemprop="name" content="Nice trinket" />
      <link itemprop="image" href="https://example.com/photos/16x9/trinket.jpg" />
      <link itemprop="image" href="https://example.com/photos/4x3/trinket.jpg" />
      <link itemprop="image" href="https://example.com/photos/1x1/trinket.jpg" />
      <meta itemprop="description" content="Trinket with clean lines" />
      <div itemprop="brand" itemtype="https://schema.org/Brand" itemscope>
        <meta itemprop="name" content="MyBrand" />
      </div>
      <div itemprop="offers" itemtype="https://schema.org/Offer" itemscope>
        <link itemprop="url" href="https://www.example.com/trinket_offer" />
        <meta itemprop="itemCondition" content="https://schema.org/NewCondition" />
        <meta itemprop="availability" content="https://schema.org/InStock" />
        <meta itemprop="price" content="39.99" />
        <meta itemprop="priceCurrency" content="CHF" />
        <meta itemprop="priceValidUntil" content="2024-11-20" />
        <div itemprop="hasMerchantReturnPolicy" itemtype="https://schema.org/MerchantReturnPolicy" itemscope>
          <meta itemprop="applicableCountry" content="US" />
          <meta itemprop="returnPolicyCategory" content="https://schema.org/MerchantReturnFiniteReturnWindow" />
          <meta itemprop="merchantReturnDays" content="60" />
          <meta itemprop="returnMethod" content="https://schema.org/ReturnByMail" />
          <meta itemprop="returnFees" content="https://schema.org/FreeReturn" />
        </div>
      </div>
    </div>
  </div>
  </body>
</html>

Класс энергоэффективности

В примере ниже показано, как с помощью структурированных данных можно указать класс энергоэффективности. В этом примере указан европейский класс энергоэффективности "C" по шкале от "A+" до "F" для водонагревателя.

Обратите внимание, что минимальный класс энергоэффективности соответствует ее наихудшему показателю (в нашем случае это "F"), а максимальный класс энергоэффективности – наилучшему (в нашем случае это "A+").

{
  "@context": "https://schema.org/",
  "@type": "Product",
  "sku": "1234-5678",
  "image": "https://www.example.com/waterheater.jpg",
  "name": "Water heater",
  "description": "Large capacity water heater",
  "gtin14": "12345678901231",
  "mpn": "WH1234",
  "brand": {
    "@type": "Brand",
    "name": "ExampleWaterHeaterBrand"
  },
  "hasEnergyConsumptionDetails": {
    "@type": "EnergyConsumptionDetails",
    "hasEnergyEfficiencyCategory": "https://schema.org/EUEnergyEfficiencyCategoryC",
    "energyEfficiencyScaleMin": "https://schema.org/EUEnergyEfficiencyCategoryF",
    "energyEfficiencyScaleMax": "https://schema.org/EUEnergyEfficiencyCategoryA1Plus"
  },
  "offers": {
    "@type": "Offer",
    "url": "https://www.example.com/hotwaterheater",
    "itemCondition": "https://schema.org/NewCondition",
    "availability": "https://schema.org/InStock",
    "price": 1799.00,
    "priceCurrency": "EUR"
  }
}

Сертификация

Ниже показано, как с помощью структурированных данных указать сведения о сертификации. В первом примере для автомобиля обозначен объем выбросов углекислого газа "D".

{
  "@context": "https://schema.org/",
  "@type": "Product",
  "sku": "1234-5678",
  "image": "https://www.example.com/vehicle.jpg",
  "name": "Big Car",
  "description": "Passenger vehicle with combustion engine",
  "gtin14": "12345678901231",
  "mpn": "WH1234",
  "brand": {
    "@type": "Brand",
    "name": "ExampleCarBrand"
  },
  "hasCertification": {
    "@type": "Certification",
    "issuedBy": {
      "@type": "Organization",
      "name": "BMWK"
    },
    "name": "Vehicle_CO2_Class",
    "certificationRating": {
      "@type": "Rating",
      "ratingValue": "D"
    }
  },
  "offers": {
    "@type": "Offer",
    "url": "https://www.example.com/vehicle",
    "itemCondition": "https://schema.org/NewCondition",
    "availability": "https://schema.org/InStock",
    "price": 17999.00,
    "priceCurrency": "EUR"
  }
}

Во втором примере для светодиодной лампы обозначен класс энергоэффективности по классификации EPREL:

{
  "@context": "https://schema.org/",
  "@type": "Product",
  "sku": "1234-5678",
  "image": "https://www.example.com/led.jpg",
  "name": "LED",
  "description": "Dimmable LED",
  "gtin14": "12345678901231",
  "mpn": "WH1234",
  "brand": {
    "@type": "Brand",
    "name": "ExampleLightingBrand"
  },
  "hasCertification": {
    "@type": "Certification",
    "issuedBy": {
      "@type": "Organization",
      "name": "European_Commission"
    },
    "name": "EPREL",
    "certificationIdentification": "123456"
  },
  "offers": {
    "@type": "Offer",
    "url": "https://www.example.com/led",
    "itemCondition": "https://schema.org/NewCondition",
    "availability": "https://schema.org/InStock",
    "price": 2.30,
    "priceCurrency": "EUR"
  }
}

3D-модель

На этом примере показано, как связать 3D-модель с товаром с помощью свойства subjectOf и типа 3DModel.

{
  "@context": "https://schema.org/",
  "@type": "Product",
  "sku": "1234-5678",
  "image": "https://www.example.com/sofa.jpg",
  "name": "Water heater",
  "description": "White 3-Seat Sofa",
  "gtin14": "12345678901231",
  "mpn": "S1234W3",
  "brand": {
    "@type": "Brand",
    "name": "ExampleSofaBrand"
  },
  "subjectOf": {
    "@type": "3DModel",
    "encoding": {
      "@type": "MediaObject",
      "contentUrl": "https://example.com/sofa.gltf"
    }
  },
  "offers": {
    "@type": "Offer",
    "url": "https://www.example.com/whitechaiselongue",
    "itemCondition": "https://schema.org/NewCondition",
    "availability": "https://schema.org/InStock",
    "price": 1299.00,
    "priceCurrency": "USD"
  }
}

Правила

Чтобы для ваших страниц с разметкой Product стали доступны функции показа ассортимента, следуйте приведенным ниже правилам:

Технические требования

  • Функции показа ассортимента доступны только для страниц, на которых можно купить товар. Эти функции не поддерживают страницы со ссылками на другие интернет-магазины. Прежде чем показывать информацию в результатах поиска, Google может проверять данные о товаре из представленного ассортимента.
  • В расширенных результатах для товаров могут показываться только страницы, на которых размещена информация об одном товаре или нескольких вариантах одного товара. (Например, страница "Наш ассортимент" не подходит). Это условие действует и в том случае, если у каждого варианта товара есть отдельный URL. Рекомендуем добавлять разметку на страницы, на которых представлены отдельные товары, а не их списки.
  • О том, как добавить разметку для вариантов товара, читайте в документации.
  • Если цена на товар указана в нескольких валютах, для каждой валюты должен быть отдельный URL. Например, если товар можно оплатить рублями и долларами США, используйте два отдельных URL.
  • Тип Car не считается подтипом типа Product. Чтобы ваш контент об автомобилях показывался в результатах поиска и сопровождался оценками, используйте типы Car и Product одновременно. Пример в формате JSON-LD:
    {
      "@context": "https://schema.org",
      "@type": ["Product", "Car"],
      ...
    }
  • Чтобы улучшить позиции своих товаров в Google Покупках, добавьте в HTML-код структурированные данные Product.
  • Если вы используете разметку Product, сгенерированную с помощью JavaScript, учтите, что из-за динамически создаваемой разметки может снизиться частота и точность сканирования для Покупок. Это может причинять неудобства пользователям при просмотре быстро изменяющейся информации, например сведений о наличии и цене товаров. Если вы создаете разметку Product с помощью JavaScript, у вашего сервера должно быть достаточно вычислительных ресурсов для обработки повышенного трафика от Google.

Требования к контенту

  • Не допускаются материалы, в которых рекламируются запрещенные или ограниченные в обороте товары либо услуги, а также информация, позволяющая причинять людям вред в краткосрочной и долгосрочной перспективе. В частности, запрещен контент, связанный с огнестрельным и холодным оружием, рекреационными наркотиками, табачными изделиями, электронными сигаретами и азартными играми.

Типы структурированных данных

Чтобы ваш контент мог показываться в расширенных результатах, необходимо задать все обязательные свойства. Для удобства пользователей советуем задать и рекомендуемые нами свойства.

Информация о товаре

Product

Полное описание типа Product приведено на странице schema.org/Product. В разметке информации о товаре используйте следующие свойства schema.org типа Product:

Обязательные свойства
name

Text

Название товара.

image

Повторно используемые типы ImageObject или URL.

URL фотографии товара. По возможности товар должен быть хорошо различим на изображении (например, сфотографирован на белом фоне).

Дополнительные рекомендации:

  • На каждой странице (с разметкой или без нее) должно присутствовать хотя бы одно изображение. Робот Google выберет лучшее изображение для показа в результатах поиска с учетом соотношения сторон и разрешения.
  • URL изображений должны быть доступны для сканирования и индексирования. Проверить, есть ли у поискового робота Google доступ к URL вашего контента, можно с помощью инструмента проверки URL.
  • Изображения должны соответствовать размеченному контенту.
  • Допускаются только графические файлы форматов, совместимых с Google Картинками.
  • Предоставьте несколько изображений в высоком разрешении (не менее 50 000 пикселей по произведению ширины и высоты) со следующими соотношениями сторон: 16 × 9, 4 × 3 или 1 × 1.

Пример:

"image": [
  "https://example.com/photos/1x1/photo.jpg",
  "https://example.com/photos/4x3/photo.jpg",
  "https://example.com/photos/16x9/photo.jpg"
]
offers

Offer

Вложенный тип Offer, относящийся к информации о продаже товара.

Описания товаров принимают типы Offer или AggregateOffer, однако ассортимент требует использования типа Offer, поскольку функции показа ассортимента доступны только продавцу товара.

Рекомендуемые свойства
aggregateRating

AggregateRating

Вложенный тип aggregateRating, относящийся к информации о товаре. Следуйте этим рекомендациям и ознакомьтесь со списком обязательных и рекомендуемых свойств типа AggregateRating.

audience

PeopleAudience

Дополнительная информация о рекомендуемой аудитории товара, например рекомендуемый пол и возрастная группа. Поддерживается только тип PeopleAudience. Ознакомьтесь со списком свойств типа PeopleAudience, поддерживаемых Google.

brand.name

Text

Добавьте в свойство name типа Brand бренд товара, если он известен. Добавить можно не более одного бренда.

color

Text

Цвет или сочетание цветов товара (например, "красный" или "желтый/небесно-голубой"). Об атрибуте "Цвет" читайте в справке Google Merchant Center.

description

Text

Описание товара. Хотя описание товара и не является обязательным, настоятельно рекомендуем размещать его в этом свойстве.

gtin | gtin8 | gtin12 | gtin13 | gtin14 | isbn

Text

Необходимо включить все подходящие глобальные идентификаторы. Они описаны на странице schema.org/Product. Разрешается использовать общее свойство gtin для всех кодов GTIN. Однако для наиболее точного представления товара мы рекомендуем использовать самый подходящий для него код. Следите за тем, чтобы значение кода GTIN было представлено в цифровой форме. Коды в виде URL не поддерживаются.

Свойство isbn действует лишь с объектом Book. Рекомендуем использовать формат ISBN-13. Для корректного использования свойства Book указывайте его совместно с объектом Product. В этом случае вы сможете использовать в узле свойства обоих типов. Пример:

{
  "@context": "https://schema.org",
  "@type": ["Product", "Book"],
  ....
}
hasCertification

Certification

Сертификат товара, например класс энергоэффективности. Можно указать до 10 сертификатов. Это свойство особенно актуально в странах Евросоюза. Также ознакомьтесь со списком свойств типа Certification, поддерживаемых Google.

hasEnergyConsumptionDetails

EnergyConsumptionDetails

Информация об энергопотреблении товаров, например электроприборов. Это свойство особенно актуально в странах Евросоюза. Также ознакомьтесь со списком свойств типа EnergyConsumptionDetails, поддерживаемых Google.

inProductGroupWithID

Text

Идентификатор группы товаров, к которой относится этот вариант товара. О свойстве Item Group Id читайте также в справке Google Merchant Center. Укажите не более одного значения.

Как добавить разметку для вариантов товара
isVariantOf

ProductGroup

Группа товаров, к которой относится этот вариант товара, если свойство применимо. Как добавить разметку для вариантов товара

material

Text

Материал или сочетание материалов, из которых изготовлен товар, например "Кожа" или "Хлопок/полиэстер". О свойстве Material читайте также в справке Google Merchant Center.

mpn

Text

Номер по каталогу производителя. Это свойство представляет собой уникальный идентификатор товара от конкретного производителя.

pattern

Text

Узор, например "в горошек" или "в полоску". О свойстве Pattern читайте также на странице спецификации сведений о товарах в Google Merchant Center.

review

Review

Вложенный тип Review, относящийся к информации о товаре. Следуйте этим рекомендациям и ознакомьтесь со списком обязательных и рекомендуемых свойств отзыва. Также ознакомьтесь со списком дополнительных свойств Review, характерных для типа Product разметки schema.org.

При добавлении отзыва о товаре в свойстве Person или Team должно быть указано действительное имя автора отзыва.

Неправильно: "Скидка 50 % в Черную пятницу"

Правильно: "Антон Иванов" или "Обозреватели CNET"

size

Text или SizeSpecification

Размер товара, например "XL" или "средний". О свойстве size читайте также на странице спецификации сведений о товарах в Google Merchant Center. Ознакомьтесь со списком свойств типа SizeSpecification, поддерживаемых Google. Укажите не более одного значения.

sku

Text

Идентификатор товара, относящийся к определенному продавцу. Укажите не более одного значения.

  • В значении sku необходимо использовать взаимозаменяемые символы Unicode.
  • Значение sku не должно содержать пробельных символов, как описано в свойстве пробела по стандарту Unicode.
  • Рекомендуем использовать в значении sku только символы ASCII.
subjectOf

3DModel

3D-модель для товара. если применимо. Ознакомьтесь со списком свойств типа 3DModel, поддерживаемых Google. Укажите не более одного значения 3DModel.

3DModel

Полное описание типа 3DModel приведено на странице schema.org/3DModel.

Используйте перечисленные ниже свойства для установления связи с 3D-моделью. В настоящее время поддерживаются только модели формата glTF.

Обязательные свойства
encoding

MediaObject

Мультимедиа для 3D-модели.

encoding.contentUrl

URL

Связь с файлом определения 3D-модели в формате glTF. У файла должен быть суффикс .gltf или .glb.

Сведения о предложении

Offer

Полное описание типа Offer приведено на странице schema.org/Offer. В разметке типа Offer нужно использовать перечисленные ниже свойства schema.org.

Обязательные свойства
price или priceSpecification.price

Number

Цена товара. Следуйте инструкциям, приведенным на сайте schema.org.

Используя свойство price, вы можете задать цену товара:

"offers": {
  "@type": "Offer",
  "price": 39.99,
  "priceCurrency": "USD"
}

В отличие от описаний товаров, для использования функций показа ассортимента цена должна быть больше нуля.

Указывать цену предложения обязательно, однако необязательно делать это на уровне типа Offer – ее можно вложить в свойство priceSpecification.

priceCurrency или priceSpecification.priceCurrency

Text

Валюта, в которой указана цена товара. Используйте трехбуквенный формат ISO 4217.

Свойство priceCurrency требуется в том случае, если указано свойство price. И наоборот, если задано свойство priceSpecification.price, требуется свойство priceSpecification.priceCurrency.

priceSpecification

UnitPriceSpecification

Чтобы указать сложную цену, вместо свойства price можно задать свойство priceSpecification. Примеры разметки разных форм цен приведены в списке поддерживаемых свойств UnitPriceSpecification.

Цены можно указывать с помощью свойств price и priceCurrency на уровне типа Offer или внутри свойства priceSpecification.

В ценах с указанием количества единицы товара внутри типа UnitPriceSpecification может быть задано свойство referenceQuantity.

Чтобы обозначить цену со скидкой, в свойстве priceType также укажите розничную цену.

priceSpecification.priceType

PriceTypeEnumeration

Обозначает полную розничную цену товара (если применимо). Используйте это свойство, только если вы хотите, чтобы в Google показывалась цена вашего товара со скидкой. Для типа priceType нужно задать значение https://schema.org/ListPrice (никакие другие значения не поддерживаются).

Если вы используете свойство priceType для обозначения розничной цены, то нужно указать и текущую цену со скидкой с помощью свойства price или priceSpecification. Не используйте свойство priceType для обозначения текущей цены со скидкой. Пример цены со скидкой

Рекомендуемые свойства
availability

ItemAvailability

Возможные статусы наличия товара. Также поддерживаются сокращенные названия без префикса URL (например, BackOrder).

  • https://schema.org/BackOrder. Ожидается поступление товара.
  • https://schema.org/Discontinued. Товар снят с продажи.
  • https://schema.org/InStock. Товар в наличии.
  • https://schema.org/InStoreOnly. Товар продается только в обычном магазине.
  • https://schema.org/LimitedAvailability. Количество товара ограничено.
  • https://schema.org/OnlineOnly. Товар продается только в интернет-магазине.
  • https://schema.org/OutOfStock. Товара временно нет в наличии.
  • https://schema.org/PreOrder. На товар можно оформить предварительный заказ.
  • https://schema.org/PreSale. Можно до поступления товара в открытую продажу заказать его и оформить доставку.
  • https://schema.org/SoldOut. Товар распродан.

Можно указать не более одного значения.

hasMerchantReturnPolicy

MerchantReturnPolicy

Вложенная информация о правилах возврата, связанных с типом Offer. Если вы решили добавить свойство hasMerchantReturnPolicy, включите также обязательные и рекомендуемые свойства MerchantReturnPolicy.

itemCondition

OfferItemCondition

Условие продажи товара. Также поддерживаются сокращенные названия без префикса URL (например, NewCondition).

  • https://schema.org/NewCondition. Новый товар.
  • https://schema.org/RefurbishedCondition. Восстановленный товар.
  • https://schema.org/UsedCondition. Бывший в употреблении товар (не новый).

Можно указать не более одного значения.

shippingDetails

OfferShippingDetails

Вложенная информация о правилах доставки и доступных вариантах, связанных с Offer. Если вы решили добавить свойство shippingDetails, включите также обязательные и рекомендуемые свойства OfferShippingDetails.

url

URL

URL страницы, где покупатель может приобрести товар. Это может быть основной URL страницы со всеми выбранными вариантами. URL можно не указывать. Не указывайте несколько URL.

Как добавить разметку для вариантов товара

UnitPriceSpecification

Полное описание типа UnitPriceSpecification приведено на странице schema.org/UnitPriceSpecification. Для поддержки более сложных схем ценообразования воспользуйтесь свойствами, представленными ниже.

Обязательные свойства
price

Number

Цена товара. См. также свойство price типа Offer.

priceCurrency

Text

Валюта, в которой указана цена товара. Используйте трехбуквенный формат ISO 4217. См. также свойство priceCurrency типа Offer.

Рекомендуемые свойства
referenceQuantity

QuantitativeValue (для цены за единицу товара)

Исходное количество указывается для цен, где задается их базовое значение. Подробная информация о ценах за единицу товара приведена в статьях справки Google Merchant Center Ценообразование с использованием количества единицы товара и Количество единицы товара.

QuantitativeValue (для цены за единицу товара)

Этот раздел посвящен использованию типа QuantitativeValue со свойством referenceQuantity при определении цены за единицу товара. QuantitativeValue также используется для указания сроков доставки, однако в этом случае действуют другие правила. Полное описание типа QuantitativeValue приведено на странице schema.org/QuantitativeValue.

Тип QuantitativeValue может использоваться для определения цены, которая зависит от количества единицы товара, например при покупке напольного покрытия в квадратных метрах или жидкости в литрах. Подробная информация о ценах за единицу товара приведена в статье справки Google Merchant Center Количество единицы товара.

Ниже приведен пример цены продажи 4,5 л товара, который можно приобрести в таре по 750 мл.

"priceSpecification": {
  "@type": "UnitPriceSpecification",
  "price": 81.00,
  "priceCurrency": "EUR",
  "referenceQuantity": {
    "@type": "QuantitativeValue",
    "value": "4.5",
    "unitCode": "LTR",
    "valueReference": {
      "@type": "QuantitativeValue",
      "value": "750",
      "unitCode": "MLT"
    }
  }
}

Чтобы указать цену за единицу товара, воспользуйтесь приведенными ниже параметрами.

Обязательные свойства
unitCode

Text или URL

Единица измерения. Поддерживаются коды UN/CEFACT или их удобочитаемые эквиваленты, указанные в статье справки Google Merchant Center Количество единицы товара.

value

Text

Числовое значение проданной единицы товара.

Рекомендуемые свойства
valueReference

QuantitativeValue

Тип QuantitativeValue, содержащийся в свойстве referenceQuantity типа UnitPriceSpecification, также должен содержать вложенный тип QuantitativeValue в свойстве valueReference.

SizeSpecification

Тип SizeSpecification используется для указания размера товара. Полное описание этого типа доступно на странице schema.org/SizeSpecification.

Рекомендуемые свойства
name

Text

Удобочитаемое название размера, например "XL". Подробную информацию об атрибуте "размер" можно найти в справке Google Merchant Center.

sizeGroup

WearableSizeGroupEnumeration или Text

Рекомендуемая группа размеров товара (по возможности). Определение группы задается свойством sizeGroup. Задать можно не более двух групп размеров. Допустимые значения:

  • https://schema.org/WearableSizeGroupRegular. Товар размера "стандартный".
  • https://schema.org/WearableSizeGroupPetite. Товар размера "для миниатюрных".
  • https://schema.org/WearableSizeGroupPlus. Товар размера "для полных".
  • https://schema.org/WearableSizeGroupTall. Товар размера "для высоких".
  • https://schema.org/WearableSizeGroupBig. Товар размера "для крупных".
  • https://schema.org/WearableSizeGroupMaternity. Товар размера "для беременных".

Также поддерживаются сокращенные названия без префикса URL (например, WearableSizeGroupRegular).

Подробная информация о поддерживаемых системах размеров приведена в разделах справки Google Merchant Center о поддерживаемых типах структурированных данных и допустимых значениях и о свойстве size_type. Google также понимает и текстовые значения свойства size_type (например, regular, petite, plus, tall, big и maternity). Однако другие поисковые системы могут их не распознать, и поэтому рекомендуется использовать стандартные перечисляемые значения schema.org.

sizeSystem

WearableSizeSystemEnumeration или Text

Система размеров (если используется). Допустимые значения:

  • https://schema.org/WearableSizeSystemAU. Австралийская система размеров.
  • https://schema.org/WearableSizeSystemBR. Бразильская система размеров.
  • https://schema.org/WearableSizeSystemCN. Китайская система размеров.
  • https://schema.org/WearableSizeSystemDE. Немецкая система размеров.
  • https://schema.org/WearableSizeSystemEurope. Европейская система размеров.
  • https://schema.org/WearableSizeSystemFR. Французская система размеров.
  • https://schema.org/WearableSizeSystemIT. Итальянская система размеров.
  • https://schema.org/WearableSizeSystemJP. Японская система размеров.
  • https://schema.org/WearableSizeSystemMX. Мексиканская система размеров.
  • https://schema.org/WearableSizeSystemUK. Британская система размеров.
  • https://schema.org/WearableSizeSystemUS. Американская система размеров.

Также поддерживаются сокращенные названия без префикса URL (например, WearableSizeSystemAU).

О свойстве size_system читайте также в справке Google Merchant Center. Google распознает текстовые значения свойства size_system (например, UR, BR, CN, DE, EU), однако другие поисковые системы могут их не распознать. Поэтому рекомендуется использовать стандартные числовые значения schema.org.

PeopleAudience

Полное описание типа PeopleAudience приведено на странице schema.org/PeopleAudience.

Для указания рекомендуемой аудитории товара используйте приведенные ниже свойства. См. также раздел справки Google Merchant Center о поддерживаемых типах структурированных данных и допустимых значениях.

Рекомендуемые свойства
suggestedGender

Text или GenderType

Пол, на который ориентирован товар. Использовать нужно один из следующих значений:

  • https://schema.org/Male
  • https://schema.org/Female
  • Unisex: это значение, в котором не учитывается регистр, не соответствует стандарту schema.org и должно иметь префикс https://schema.org/.

Подробную информацию о свойстве Gender можно найти в справке Google Merchant Center.

Учтите, что Google будет заполнять значения GenderType без префикса schema.org, поэтому допустимы также первичные значения male и female.

suggestedMaxAge или suggestedAge.maxValue

Number

Рекомендуемый максимальный возраст для товара (в годах). В Google выполняется сопоставление рекомендуемого максимального возраста с учетом приведенного ниже стандартного набора численных значений:

  • 0.25 – для новорожденных;
  • 1.0 – для младенцев;
  • 5.0 – для маленьких детей;
  • 13.0 – для детей.
suggestedMinAge или suggestedAge.minValue

Number

Рекомендуемый минимальный возраст для товара (в годах). В Google выполняется сопоставление рекомендуемого минимального возраста с учетом приведенного ниже стандартного набора численных значений:

  • 0 – для новорожденных;
  • 0.25 – для младенцев;
  • 1.0 – для маленьких детей;
  • 5.0 – для детей;
  • 13.0 – для взрослых.

EnergyConsumptionDetails

Полное описание типа EnergyConsumptionDetails приведено на странице schema.org/EnergyConsumptionDetails.

Для обозначения энергопотребления товаров, например электроприборов, воспользуйтесь приведенными ниже свойствами. В настоящее время поддерживается только классификация энергоэффективности ЕС.

Обязательные свойства
hasEnergyEfficiencyCategory

EUEnergyEfficiencyEnumeration

Категория энергоэффективности. В настоящее время поддерживается только европейская классификация энергоэффективности:

  • https://schema.org/EUEnergyEfficiencyCategoryA3Plus. Европейский класс энергоэффективности A+++.
  • https://schema.org/EUEnergyEfficiencyCategoryA2Plus. Европейский класс энергоэффективности A++.
  • https://schema.org/EUEnergyEfficiencyCategoryA1Plus. Европейский класс энергоэффективности A+.
  • https://schema.org/EUEnergyEfficiencyCategoryA. Европейский класс энергоэффективности A.
  • https://schema.org/EUEnergyEfficiencyCategoryB. Европейский класс энергоэффективности B.
  • https://schema.org/EUEnergyEfficiencyCategoryC. Европейский класс энергоэффективности C.
  • https://schema.org/EUEnergyEfficiencyCategoryD. Европейский класс энергоэффективности D.
  • https://schema.org/EUEnergyEfficiencyCategoryE. Европейский класс энергоэффективности E.
  • https://schema.org/EUEnergyEfficiencyCategoryF. Европейский класс энергоэффективности F.
  • https://schema.org/EUEnergyEfficiencyCategoryG. Европейский класс энергоэффективности G.

Также поддерживаются сокращенные названия без префикса URL (например, EUEnergyEfficiencyCategoryA).

Рекомендуемые свойства
energyEfficiencyScaleMin и energyEfficiencyScaleMax

EUEnergyEfficiencyEnumeration

Низший и высший класс энергоэффективности по шкале энергопотребления ЕС для категории, к которой относится товар.

См. hasEnergyEfficiencyCategory, чтобы ознакомиться со списком допустимых значений.

Свойство energyEfficiencyScaleMin обозначает наименее эффективный класс на шкале энергопотребления, а energyEfficiencyScaleMax – наиболее эффективный. Например, для товара с классом энергоэффективности "C" по шкале от "A+++" до "D" используйте следующий код:

{
  "@type": "EnergyConsumptionDetails",
  "hasEnergyEfficiencyCategory":  "https://schema.org/EUEnergyEfficiencyCategoryC",
  "energyEfficiencyScaleMin": "https://schema.org/EUEnergyEfficiencyCategoryD",
  "energyEfficiencyScaleMax": "https://schema.org/EUEnergyEfficiencyCategoryA3Plus"
}

Если свойство energyEfficiencyScaleMin не задано, для него условно устанавливается значение "G" (https://schema.org/EUEnergyEfficiencyCategoryG). Если свойство energyEfficiencyScaleMax не задано, для него условно устанавливается значение "A+++" (https://schema.org/EUEnergyEfficiencyCategoryA3Plus).

Certification

Полное описание типа Certification приведено на странице schema.org/Certification.

Для обозначения сертификации используйте свойства, перечисленные ниже.

Обязательные свойства
issuedBy

Organization

Организация или центр сертификации, ответственные за сертификацию. Чтобы указать организацию, используйте свойство name. В настоящее время поддерживаются следующие названия:

  • EC и European_Commission – для маркировки энергоэффективности в ЕС.
  • ADEME – для используемых во Франции классов выбросов углекислого газа автомобилями.
  • BMWK – для используемых в Германии классов выбросов углекислого газа автомобилями
name

Text

Название вида сертификации. В настоящее время поддерживаются следующие значения:

  • EPREL – обозначает сертификат энергоэффективности в Европейском реестре продукции для маркировки энергоэффективности.
  • Vehicle_CO2_Class – обозначает общий класс выбросов углекислого газа автомобилем.
  • Vehicle_CO2_Class_Discharged_Battery – обозначает класс выбросов углекислого газа автомобилем с разряженной батареей.
Рекомендуемые свойства
certificationIdentification

Text

Код сертификации. Например, для сертификата EPREL со ссылкой https://example.com/product/dishwashers2019/123456 код имеет вид 123456.. Этот код требуется для маркировки энергоэффективности в Европе.

certificationRating

Rating

Значение сертификации. Это свойство игнорируется в отношении сертификатов, для которых требуется код сертификации, однако может использоваться с сертификатами, где код не нужен. Например, значение класса выбросов углекислого газа обязательно при рекламе автомобилей в некоторых странах. В свойство certificationRating можно вложить следующие свойства:

  • ratingValue
  • bestRating
  • worstRating

При использовании свойства certificationRating необходимо указывать свойство ratingValue.

Доставка

OfferShippingDetails

Свойство OfferShippingDetails позволяет показывать пользователям стоимость доставки, ее предполагаемые сроки в зависимости от адреса, а также правила вашей компании. Чтобы для ваших товаров поддерживались улучшенные сведения о доставке, добавьте перечисленные ниже свойства OfferShippingDetails на страницы товаров вместе со структурированными данными Product.

Иногда продавцы предлагают пользователям разные варианты доставки, например срочную (за сутки), быструю (за двое суток) и стандартную. В таком случае вы можете добавить несколько свойств shippingDetails, каждое со своей комбинацией свойств shippingRate и deliveryTime.

Добавлять свойства OfferShippingDetails необязательно, однако это необходимо, если вы хотите, чтобы пользователи видели улучшенные сведения о доставке.

Полное описание типа OfferShippingDetails приведено на странице schema.org/OfferShippingDetails.

Обязательные свойства
deliveryTime

ShippingDeliveryTime

Общее время от получения заказа до прибытия товара к покупателю. В свойство deliveryTime можно вложить следующие свойства:

  • handlingTime
  • transitTime

Указывайте не более одного свойства deliveryTime. Также ознакомьтесь со списком свойств типа ShippingDeliveryTime, поддерживаемых Google.

shippingDestination

DefinedRegion

Определяет пункты назначения для доставки. Укажите свойства shippingDestination.addressCountry. Также ознакомьтесь со списком свойств типа DefinedRegion, поддерживаемых Google.

shippingRate

MonetaryAmount

Сведения о стоимости доставки по определенному адресу. Помимо shippingRate.currency, необходимо также задать как минимум одно значение shippingRate.value или shippingRate.maxValue.

Для каждого свойства OfferShippingDetails можно указать только одно значение shippingRate. Чтобы задать разные варианты стоимости доставки для товара, добавьте несколько свойств OfferShippingDetail.

shippingRate.currency

Text

Валюта, в которой указана стоимость доставки, в 3-буквенном формате ISO 4217. Валюта должна совпадать с указанной в предложении.

shippingRate.value или shippingRate.maxValue

Number

Стоимость доставки до места shippingDestination. Если значение указывается в виде строки, не используйте символы валют, разделители тысяч или пробелы.

Если доставка бесплатная, укажите значение 0.

DefinedRegion

С помощью свойства DefinedRegion можно создавать собственные регионы, чтобы точно рассчитывать стоимость и время транспортировки для разных служб доставки. В настоящее время эта функция поддерживается только в отдельных странах, как указано в разделе справки Google Merchant Center, посвященном настройке регионов.

Обязательные свойства
addressCountry

Text

Двухбуквенный код страны в формате ISO 3166-1 alpha-2.

Рекомендуемые свойства
Выберите одно из свойств: addressRegion или postalCode

Это свойство определяет регион зоны доставки. Если его не задать, регионом доставки будет считаться вся страна. Можно указать несколько регионов, однако в одном экземпляре типа DefinedRegion нельзя использовать разные способы обозначения региона.

addressRegion

Text

Если вы добавили это свойство, регион должен быть обозначен двух- или трехзначным кодом подразделения ISO 3166-2 без префикса страны. В настоящее время Google Поиск поддерживает только регионы США, Австралии и Японии. Примеры: "NY" (США, штат Нью-Йорк), "NSW" (Австралия, штат Новый Южный Уэльс) или "03" (Япония, префектура Ивате).

Не указывайте одновременно регион и почтовый индекс.

postalCode

Text

Почтовый индекс. Например, 94043. В настоящее время поддерживаются только почтовые индексы Австралии, Канады и США.

ShippingDeliveryTime

С помощью типа ShippingDeliveryTime можно обозначать общее время от получения заказа до прибытия товара к покупателю.

Рекомендуемые свойства
handlingTime

QuantitativeValue (для сроков доставки)

Типичный промежуток времени между получением заказа и отгрузкой товара со склада.

transitTime

QuantitativeValue (для сроков доставки)

Типичный промежуток времени между отгрузкой товара со склада и его доставкой покупателю.

QuantitativeValue (для сроков доставки)

С помощью типа QuantitativeValue можно обозначать сроки доставки. Должно быть указано минимальное и максимальное количество дней. Тип QuantitativeValue также используется для обозначения стоимости единицы товара, однако в этом случае для свойств действуют другие правила проверки.

Обязательные свойства
maxValue

Number

Максимальное количество дней. Значение должно быть целым неотрицательным числом.

minValue

Number

Минимальное количество дней. Значение должно быть целым неотрицательным числом.

unitCode

Text

Единицы, для которых указывается минимальные/максимальные значения. Возможное значение: DAY или d.

Возврат товара

MerchantReturnPolicy

Используйте следующие свойства, чтобы при показе ассортимента отображались сведения о правилах возврата товара, в том числе комиссия и сроки возврата.

Обязательные свойства
applicableCountry

Text

Двухбуквенный код страны, на которую распространяются правила возврата, в формате ISO 3166-1 alpha-2. Можно указать до 50 стран.

returnPolicyCategory

MerchantReturnEnumeration

Тип правила возврата. Используйте одно из следующих значений:

  • https://schema.org/MerchantReturnFiniteReturnWindow: возврат товара возможен в течение определенного количества дней.
  • https://schema.org/MerchantReturnNotPermitted: возврат невозможен.
  • https://schema.org/MerchantReturnUnlimitedWindow: возврат товара возможен в любое время.

При использовании типа MerchantReturnFiniteReturnWindow необходимо указать свойство merchantReturnDays.

Рекомендуемые свойства
merchantReturnDays

Integer

Количество дней с даты доставки, в течение которых можно вернуть товар. Это свойство является обязательным, если для типа MerchantReturnFiniteReturnWindow выбран вариант returnPolicyCategory.

returnFees

ReturnFeesEnumeration

Тип платы за возврат. Используйте одно из следующих поддерживаемых значений:

  • https://schema.org/FreeReturn: покупатель не платит за возврат товара. В этом случае не нужно включать свойство returnShippingFeesAmount.
  • https://schema.org/ReturnFeesCustomerResponsibility: покупатель самостоятельно оплачивает и осуществляет обратную доставку товара. В этом случае не нужно включать свойство returnShippingFeesAmount.
  • https://schema.org/ReturnShippingFees: продавец взимает плату с покупателя за возврат товара. Укажите размер платы с помощью свойства returnShippingFeesAmount. Его значение должно быть больше нуля.
returnMethod

ReturnMethodEnumeration

Тип предложенного способа возврата. Рекомендуется только в том случае, если для типа правила returnPolicyCategory выбран вариант MerchantReturnFiniteReturnWindow или MerchantReturnUnlimitedWindow. Используйте одно или несколько из следующих значений:

  • https://schema.org/ReturnAtKiosk: товар можно вернуть через киоск.
  • https://schema.org/ReturnByMail: товар можно вернуть по почте.
  • https://schema.org/ReturnInStore: товар можно вернуть в магазине.
returnShippingFeesAmount

MonetaryAmount

Стоимость доставки при возврате товара. Это свойство требуется только в том случае, если покупатель должен заплатить продавцу за обратную доставку товара. Стоимость доставки должна быть больше нуля, при этом необходимо указать следующее значение свойства returnFees: https://schema.org/ReturnShippingFees). Если возврат осуществляется бесплатно, то необходимо указать следующее значение свойства returnFees: https://schema.org/FreeReturn. Если покупатель обязан оплатить и осуществить обратную доставку товара самостоятельно, то необходимо указать следующее значение свойства returnFees: https://schema.org/ReturnFeesCustomerResponsibility.

Как ещё можно отправить в Google информацию о доставке и возврате

Правила, по которым работают продавцы, могут усложняться и часто меняться. Если вам трудно поддерживать разметку, которая отражала бы актуальную информацию о доставке и возврате, вы можете задать сведения о доставке и правила возврата в Google Merchant Center. Также можно задать правила доставки и возврата на уровне аккаунта в Search Console. Они будут автоматически добавлены в Merchant Center.

Как объединить несколько правил доставки и возврата

Если вам нужно объединить несколько разных правил доставки и возврата, не забывайте о том, как такие правила переопределяются в соответствии с их приоритетом. Например, если указать как разметку на уровне организации на сайте, так и правила возврата в Search Console, в Google будут использоваться только последние. А если добавить фид товаров в Merchant Center и настроить правила доставки в Search Console, то приоритет будет иметь фид товаров.

Ниже приведен приоритет разных правил доставки и возврата в порядке убывания.

Сбор статистики по расширенным результатам в Search Console

С помощью Search Console вы можете собирать данные об эффективности страниц вашего ресурса в Google Поиске. Вам не обязательно регистрироваться в этом сервисе, чтобы ваши страницы попали в результаты поиска. Однако это позволит узнать, как роботы Google воспринимают сайт, и упростить им его обработку. Рекомендуем проверять информацию в Search Console в следующих случаях:

  1. После первого размещения структурированных данных
  2. После выпуска новых шаблонов или обновления кода
  3. При регулярном анализе трафика

После первого размещения структурированных данных

Когда ваши страницы будут проиндексированы, проверьте их на наличие ошибок с помощью отчета о статусе расширенных результатов. Желательно, чтобы количество объектов с правильной разметкой выросло, а число объектов с ошибками – нет. Если в структурированных данных будут обнаружены ошибки, примите следующие меры:

  1. Устраните проблемы в объектах.
  2. Проверьте исправленную страницу, чтобы узнать, обнаруживаются ли ошибки.
  3. Запросите проверку ресурса, используя отчет о статусе расширенных результатов.

После выпуска новых шаблонов или обновления кода

Если вы внесли значительные изменения на сайт, проверьте, не увеличилось ли число недействительных объектов, связанных со структурированными данными.
  • Увеличилось число недействительных объектов? Возможно, вы создали шаблон, с которым что-то не так, или имеющийся шаблон используется некорректно.
  • Уменьшилось число действительных элементов, но не увеличилось количество недействительных? Возможно, на ваших страницах не размещены структурированные данные. Выяснить, с чем связаны ошибки, можно при помощи инструмента проверки URL.

При регулярном анализе трафика

Анализировать трафик сайта из Google Поиска можно с помощью отчета об эффективности. Из этого отчета вы узнаете, как часто страница появляется в Поиске в виде расширенного результата, с какой регулярностью пользователи нажимают на нее и какова ее средняя позиция в результатах поиска. Эти сведения также можно автоматически получать с помощью Search Console API.

В Search Console доступно два отчета, связанных со структурированными данными Product:

В обоих отчетах содержится информация об ошибках и предупреждениях, связанных со структурированными данными для товаров (Product). Тем не менее это два отдельных отчета, поскольку они предназначены для получения сведений о разных функциях, имеющих свои особенности. Например, в отчет об ассортименте входят результаты проверки описаний товаров, в которых используются структурированные данные типа Offer. В то же время отчет об описаниях товаров можно использовать только при анализе страниц, где не демонстрируется ассортимент.

Устранение неполадок

Если у вас возникли трудности с добавлением или отладкой структурированных данных, вам помогут ресурсы и сведения, доступные по приведенным ниже ссылкам.