How can shipping rules depend on parcel weight or item count?

The Citead team, updated

In short. ShippingConditions can use QuantitativeValue ranges for package weight and item count.

Definition: ShippingConditions.weight and ShippingConditions.numItems are Google-supported QuantitativeValue ranges inside a ShippingService policy. They select a shipping cost or transit time for orders whose package weight or product count falls within the stated bounds.

Key facts

  • Google's ShippingService documentation defines numItems as the range of products in the order and weight as the package's weight range for a ShippingConditions object. It also sets an omitted minimum to 0, an omitted maximum to infinity, and accepts LBR or KGM for weight plus an omitted unit or H87 for item counts.
  • Schema.org's ShippingConditions definition describes the type as a set of shipping constraints, with all specified conditions required for that object to apply.
  • Schema.org's QuantitativeValue definition describes the type as a point value or interval and defines lower and upper value properties.

How does a weight or item-count band select a rule?

Google places these ranges in the shippingConditions array of a ShippingService. A service can contain multiple condition objects. Each object can combine a weight range, an item-count range, an order-value range, and a destination with a shippingRate and transit time. Google's condition-selection documentation says that when several ShippingConditions objects apply, Google uses the lowest shipping cost and, when costs are equal, the fastest shipping speed.

Schema.org's definition of ShippingConditions states that all specified conditions must be met. Therefore, a condition with both weight and numItems narrows the rule to orders that satisfy both ranges. A condition with only one of the properties leaves the other dimension unspecified.

How are the ranges encoded?

Google uses QuantitativeValue for both properties. Its shipping documentation requires either minValue or maxValue. minValue defaults to 0, maxValue defaults to infinity, and a supplied minValue must be less than maxValue. For weight, unitCode uses the UN/CEFACT codes LBR or KGM. For item count, the unit can be omitted or represented by H87.

The Schema.org QuantitativeValue definition describes the type as a point value or interval and defines minValue as the lower value and maxValue as the upper value. This fragment shows open-ended lower bounds for both dimensions, using the codes and omission rule documented by Google:

{
  "@type": "ShippingConditions",
  "weight": {
    "@type": "QuantitativeValue",
    "minValue": 0,
    "unitCode": "KGM"
  },
  "numItems": {
    "@type": "QuantitativeValue",
    "minValue": 0
  }
}

Add maxValue to either object when the rule has an upper bound. The shippingRate property belongs on the same ShippingConditions object and describes the cost for the specified combination of conditions.

Where does this markup belong?

Google documents a standard business shipping policy as ShippingService nested under Organization with hasShippingService. The shippingConditions property is the required property of that service, and each condition describes the associated cost or transit time. Google's implementation guidance also recommends placing the shipping policy information on a single page that describes the business's shipping policy.

Google's page says to validate the structured data with the Rich Results Test, then use URL Inspection to test how Google sees deployed pages. Those checks can confirm whether the page is accessible and whether the markup contains the intended bounds and unit codes.

FAQ

Can you use weight and item count in one condition?

Yes. Google's documentation describes the shipping cost and transit time for a specified combination of weight, numItems, and orderValue conditions. Schema.org requires all conditions specified on that ShippingConditions object to be met.

What happens when you omit maxValue?

For these shipping dimensions, Google's documentation sets an omitted maxValue to infinity. An omitted minValue defaults to 0.

Which unit code can you use for item count?

Google permits omitting unitCode for numItems or using the UN/CEFACT Common Code H87. Weight uses LBR or KGM.

Sources

  1. Google Search Central, "Merchant shipping policy (ShippingService) structured data", 8 September 2026
  2. Schema.org, "ShippingConditions", accessed 17 October 2026
  3. Schema.org, "QuantitativeValue", accessed 17 October 2026

Check how a page reads to answer engines. Open the GEO score analyzer

Test a page and see what to fix first

The analysis usually takes less than 10 seconds and needs no account.

400,000+ pages scored in the public benchmark