Attribute Guide

Shipping Attribute in Google Shopping: Product-Level Overrides & Free Shipping Badges

Complete guide to the shipping attribute in Google Merchant Center. Sub-attributes, product-level overrides, free shipping annotations, delivery speed badges,…

Updated 9 min readBoostora Team
Shipping — No Shipping Info vs. Complete Shipping Data

Premium Yoga Mat — 6mm — Non-Slip

€49.00yoga-shop.com
⭐ 4.5 (892)
Free shippingArrives Thu 17 Apr

Free shipping badge + delivery date shown. Clear expectation → higher CTR and conversion confidence.

Premium Yoga Mat — 6mm — Non-Slip

€49.00yoga-shop.com
⭐ 4.5 (892)

No delivery estimate shown. Shopper doesn't know if it arrives in 2 days or 2 weeks. Higher uncertainty → lower CTR and CVR.

The shipping attribute provides product-level shipping details that override your account-level shipping settings. When price is 0, Google automatically shows a "Free shipping" badge. Adding handling and transit time ranges unlocks estimated delivery dates — one of the most effective conversion signals in Shopping.

What is the shipping attribute?

The shipping attribute provides product-level shipping information that overrides the account-level shipping configuration in Google Merchant Center. It’s a complex “group” attribute containing multiple sub-attributes: the destination country, service name, shipping price, and delivery time components (handling time and transit time). Together, these sub-attributes tell Google exactly how much shipping costs for a product and how long delivery takes — information Google displays directly in Shopping ads.

When shipping price is zero, Google automatically shows a “Free shipping” badge. When handling and transit times are included, Google displays an estimated delivery date (e.g., “Arrives by Thursday, 17 April”). Both of these annotations are among the most effective CTR boosters available in Shopping and require no additional fees or approval — only accurate shipping data in your feed.

Technical specifications

Feed nameshipping
RequiredStrongly recommended. Required in some countries (US, Germany, France). Falls back to account-level shipping settings if omitted.
Attribute typeGroup attribute with multiple sub-attributes
Multiple entriesYes — submit one entry per destination country

Sub-attributes explained

Sub-attributeRequired?FormatExample
countryRequiredISO 3166-1 alpha-2DE, GB, US
serviceOptionalFree textStandard, Express, Next Day
priceRequiredNumber + ISO 4217 currency0 EUR, 4.99 GBP
min_handling_timeRecommendedInteger (business days)0 (same-day), 1
max_handling_timeRecommendedInteger (business days)1, 2
min_transit_timeRecommendedInteger (business days)1, 2
max_transit_timeRecommendedInteger (business days)3, 5

Where shipping data displays

  • Google Shopping Ads — Free shipping badge — When shipping price is 0, a prominent “Free shipping” annotation appears on the product listing tile. This badge is displayed regardless of the product category and is one of the most-noticed Shopping annotations. Studies show listings with “Free shipping” receive 10–20% higher CTR than identical listings without it, even when prices are equivalent (absorbed shipping cost vs. explicit free shipping).

  • Google Shopping Ads — Delivery estimate — When handling time and transit time sub-attributes are provided, Google calculates and displays an estimated delivery date (e.g., “Get it by Thu, Apr 17”). This leverages Google’s knowledge of the current date, business day calendar, and your time parameters to generate a specific date range that builds purchase urgency and reduces purchase-blocking uncertainty.

  • Free Product Listings — Both the free shipping badge and delivery estimate appear in free listings on the Shopping tab, providing the same CTR benefit at zero CPC cost.

  • Performance Max product cards — PMax Shopping placements inherit shipping data from your feed. Products with free shipping and delivery estimates in PMax product cards show these annotations where Google’s layout supports them.

Free shipping: product-level vs. account-level

Free shipping can be configured in two places:

  • Account level (GMC Shipping Settings) — Applies to all products without product-level overrides. Good for stores where every product ships free.

  • Product level (shipping attribute with price = 0) — Applies only to specific products. Good for stores where only some products ship free (e.g., products above a weight threshold, or specific SKUs on promotion).

Product-level shipping always overrides account-level. Use account-level for the rule, product-level for the exceptions.

Delivery speed badges

Google’s delivery speed badge programs offer additional visual signals for fast shippers:

  • “Fast Delivery” badge — Available when your typical delivery time (handling + transit) is significantly faster than category norms. Requires consistent fast handling time data in the feed and verified delivery performance.

  • “Get it by [date]” annotation — Automatically generated from min/max handling + transit times. The more accurate and tight your time ranges, the more specific and credible the date shown. Overly wide ranges (“3–10 days”) produce vague annotations that don’t build urgency.

Rules (what Google enforces)

  • Shipping price must match checkout — The shipping cost in the feed must match what the shopper is charged at checkout. Mismatches trigger “shipping price mismatch” disapproval — same severity as price mismatch.

  • Country code must be valid ISO 3166-1 — Use two-letter codes (DE, GB, US, FR, CZ) not country names (“Germany”, “United Kingdom”).

  • Price format — Number + space + ISO 4217 currency code (e.g., 0 EUR, 5.99 GBP). No currency symbols.

  • Handling and transit times must be non-negative integers — Fractions or negative values are rejected.

  • min must be ≤ max — min_handling_time cannot exceed max_handling_time; same for transit times.

  • Must match actual delivery performance — Google cross-validates shipping speed claims against actual delivery data from merchant reviews and other signals. Consistently overstated shipping speed (e.g., promising 1-day delivery when actual delivery takes 4 days) can result in shipping speed badge removal.

Best practices

  • Always include handling and transit times if you want delivery estimates — Shipping price alone (even if set to free) does not trigger delivery date estimates. You must include all four time sub-attributes: min/max handling + min/max transit.

  • Be conservative with handling time ranges — Set max_handling_time to your 95th percentile handling time, not your average. If 95% of orders ship within 2 days but occasionally take 3, set max to 3. Consistently meeting the stated time is what builds the delivery speed trust signal with Google.

  • Set handling time = 0 if you can ship same-day for orders placed before a cutoff — If orders placed before 2pm ship the same day, min_handling_time can be 0. Document your cutoff time clearly in your shipping settings to avoid inflated handling time estimates.

  • Use product-level shipping for heavy or oversize items — If you have account-level free shipping but charge extra for heavy items, use the product-level shipping attribute to override with the correct cost for those SKUs. This prevents free shipping badge display on products that aren’t actually free to ship.

  • Align shipping data across all markets — If you sell in multiple countries, submit a separate shipping entry per country with accurate local rates. Shoppers in DE should see German shipping rates, not UK rates. Currency and country code must both match the target market.

Impact on performance

  • Free shipping badge CTR uplift — “Free shipping” is one of the top conversion signals in ecommerce. In Shopping specifically, the badge adds prominent visual differentiation against competitors without free shipping. CTR improvements of 10–25% for free-shipping-badged products are well-documented across categories.

  • Delivery estimate reduces purchase anxiety — Shoppers who can see “Arrives by Thursday” before clicking know exactly what to expect. This reduces one of the major purchase blockers (uncertainty about delivery speed) and improves both CTR and post-click conversion rate. The effect is strongest for occasion-driven purchases (birthday gifts, event purchases) where delivery timing is a hard requirement.

  • Competitive differentiation at zero additional cost — Unlike ads extensions that require additional bid investment, shipping annotations appear automatically from feed data. A competitor with identical products and prices who has correct shipping data will consistently out-CTR one that doesn’t.

  • Trust signal for new-to-brand shoppers — Delivery estimates communicate operational credibility. Shoppers who haven’t bought from you before are reassured by specific, verifiable delivery commitments. This is especially valuable for smaller merchants competing against established brands in Shopping results.

Common mistakes

  • Setting shipping price to free in the feed but charging shipping at checkout (price mismatch → disapproval)

  • Omitting min/max transit and handling times — no delivery estimates shown even when shipping is free

  • Using country names instead of ISO 3166-1 codes (rejected silently or misinterpreted)

  • Setting unrealistically tight handling times to unlock the fast delivery badge — leads to delivery performance violations

  • Not updating shipping attributes when shipping rates change seasonally or during peak periods

  • Submitting a single shipping entry for one country when selling in multiple markets (shoppers in other countries see no shipping info, falling back to account settings or nothing)

  • Using shipping attribute to show free shipping on products that have order-value-based free shipping thresholds — the feed must reflect the product-specific rate, not the conditional rate

Pro tips

  • Use shipping attribute to A/B test free shipping messaging — During a free shipping promotion, apply shipping price = 0 via a supplemental feed to a subset of products and compare CTR and CVR against the control group (standard shipping price) over the same period. This gives you quantified data on the free shipping badge’s impact in your specific category and market before committing to a permanent policy change.

  • Configure carrier-based transit times accurately — If you use multiple carriers (DHL for standard, DPD for express), configure separate shipping entries in your feed with the correct transit times for each service. This gives shoppers a choice between speed and cost in the Shopping listing, and ensures Google’s delivery estimates accurately reflect each service level’s actual timing.

  • Automate shipping attribute updates during peak seasons — During Christmas, Black Friday, or other peak periods, your actual handling times often increase due to volume. Build a supplemental feed that automatically adjusts max_handling_time upward during known peak windows. This keeps delivery estimates accurate even when your warehouse is under pressure, preventing the trust damage of missed delivery promises.

  • Monitor shipping verification warnings in GMC proactively — Google periodically crawls product landing pages to verify shipping information matches the feed. These verification warnings appear in GMC Diagnostics under “Policy violations” and can escalate to disapprovals quickly. Set up GMC email alerts for new Diagnostics issues and investigate shipping warnings immediately — they’re faster to resolve before they become disapprovals than after.

Frequently asked questions

What sub-attributes does the shipping attribute have?
The shipping attribute is a group attribute with these sub-attributes: country (required — ISO 3166-1 alpha-2 code, e.g., DE, GB, US), service (optional — shipping service name, e.g., "Standard", "Express"), price (required — shipping cost, e.g., "0 EUR" for free), min_handling_time and max_handling_time (days in warehouse before handoff), min_transit_time and max_transit_time (days in transit). Handling + transit times together enable delivery date estimates in Shopping.
How does the free shipping badge work?
When you set shipping price to 0 EUR (or 0 in any currency), Google automatically applies a "Free shipping" annotation to the Shopping listing. No additional configuration is needed — the zero-price value triggers the badge. This is one of the most visible and highest-CTR annotations in Shopping. Importantly, this works at the product level via the shipping attribute or at the account level via GMC's shipping settings — the shipping attribute takes precedence for individual products.
What is the difference between handling time and transit time?
Handling time is the number of business days between when an order is placed and when the product leaves your warehouse (picked, packed, handed to the carrier). Transit time is the number of business days from carrier pickup to delivery to the customer. Together, they calculate the estimated delivery window. Example: 1-day handling + 2-3 day transit = "Estimated delivery: 3–4 business days from now" shown in Shopping.
Does the shipping attribute override account-level shipping settings?
Yes — product-level shipping attributes always override account-level shipping settings in GMC for the specific product. This makes the shipping attribute useful for exceptions: if 90% of your products ship with standard rates from account settings but certain products (heavy items, fragile goods, or special promotions with free shipping) have different rates, use the shipping attribute only for those exceptions. Products without a shipping attribute fall back to account-level settings.
Do I need to set shipping for every product?
Not necessarily — if your shipping is uniform across products (same rate, same speed), configure it once at the account level in GMC's Shipping settings and leave the product-level shipping attribute empty. The product-level shipping attribute is most valuable for: products with free shipping (€0 to trigger the badge), products with significantly different shipping costs (oversize items), and products where you want to show faster-than-default delivery estimates to boost CTR.
Can I specify different shipping for different countries?
Yes — submit multiple shipping attribute entries per product, each with a different country value. Each entry defines shipping for one country. Example: one shipping entry for DE (Germany, €0, 1-2 days) and another for AT (Austria, €4.99, 2-3 days) allows the correct shipping information to display for shoppers in each country. In XML feeds, use multiple <g:shipping> groups; in text feeds, check your feed format documentation for multi-value handling.
What happens if shipping data doesn't match the checkout?
If the shipping cost shown in Shopping (from the shipping attribute) differs from the shipping cost charged at checkout, Google may flag this as a "shipping price mismatch" — the same type of policy violation as a price mismatch. Google periodically crawls landing pages to verify shipping information. Persistent mismatches result in product disapproval and can lead to account-level warnings. Always keep shipping attribute data in sync with your actual checkout shipping rates.

Related guides