在 30 个国家/地区,购物广告和免费商品详情都必须提供运费,而最稳妥的方式是使用 Merchant Center 中的账户级设置。但商品目录迟早会出现例外情况:大件商品、地区附加费,或是低于最低订单金额的低价商品。一旦在商品级 [shipping] 属性中填入一个 price,Google 就不再读取您为该地区配置的送达时效和最低订单金额。商品可能仍然通过审核,但它的送达时效估算已不再来自您配置的设置。
本指南面向已经配置好运费设置、需要在不破坏现有设置的前提下添加商品级例外的 feed 管理人员。读完后,您将了解覆盖设置会替换哪些账户级设置、需要重新填写哪些子属性,以及如何分阶段上线,避免整个商品目录触发“运费不准确”警告。
商品级运费覆盖究竟会替换什么
Merchant Center 从两个位置读取运费:账户级运费政策,以及每个商品上的 [shipping] 属性。Google 自己的建议是优先使用账户级设置,仅在万不得已时才使用该属性。原因在于优先级。根据属性文档的说明,在 [shipping] 中提交 price 后,该地区的账户级服务设置(包括送达时效和最低订单金额)将被忽略。此时您必须在商品级重新指定这些值。
由此可得出两条规则。第一,覆盖不是叠加在账户设置之上的补丁,而是在匹配的地区完全替换账户设置。第二,该属性每个商品最多可重复 100 次,因此该商品配送到的每个国家/地区、区域和服务都需要各自完整的一行。
让这件事更简单的 2026 年 4 月更新
2026 年商品数据规范更新于 2026 年 4 月 14 日生效,新增了与账户级选项对应的商品级选项:作为 [shipping] 子属性的下单截止时间、最低订单金额和会员标签(loyalty_program_label 和 loyalty_tier_label)。4 月 28 日的另一项公告又新增了 [pickup_cost]。自 2026 年 9 月 30 日起,在英国、瑞士和欧洲经济区,启用了自提的 in_store 商品,如果您的网站设有自提费用和最低订单金额,则必须提供这些信息。
步骤 1:先判断是否真的需要覆盖
从默认答案开始:不需要。只要符合以下任一情况,就让商品继续使用账户级运费:
- 一个统一运费或一条门槛规则即可覆盖整个商品目录。
- 该例外可以通过 Merchant Center 设置中的地区或运费标签来表达。
- 唯一的差异是送达时间,这可以通过独立的
[min_handling_time]和[max_handling_time]属性按商品设置,而无需改动价格。
只有当价格本身因商品而异时,才在商品级进行覆盖,例如体积庞大的商品、超大尺寸家具,或是在包邮店铺中按固定运费发货的商品。
步骤 2:盘点账户设置目前提供了哪些内容
在写下任何一行之前,先列出账户级政策为您要覆盖的地区提供了哪些内容。这些就是您必须重新填写的值。
| 账户级设置 | 商品行设置 price 后是否失效? | 商品级替代项 |
|---|---|---|
| 处理时间(最短/最长天数) | 是 | min_handling_time、max_handling_time 子属性,或独立属性 |
| 运输时间(最短/最长天数) | 是 | min_transit_time、max_transit_time |
| 下单截止时间 | 是 | handling_cutoff_time(HHMM)、handling_cutoff_timezone(IANA) |
| 最低订单金额 | 是 | 独立的 minimum_order_value 属性 |
| 会员运费价格 | 是 | loyalty_program_label,多层级会员计划中还需 loyalty_tier_label |
如果您目前向购物者展示了送达时效估算,而又跳过这一步盘点,那么丢失的就是这项估算。Google 的文档指出,一项配送时效需要同时具备三个要素:最长处理时间、最长运输时间和价格。
步骤 3:写出完整的行,而不是部分内容
下面以一家德国店铺为例,展示修改前后的对比。账户政策中有一项 Standard 服务,处理时间为 1 至 2 天,运输时间为 3 至 5 天。这是我们为演示机制而构造的示例,并非客户数据。
修改前。商家只覆盖了一件大件商品的价格:
| id | price | shipping(country:service:price) |
|---|---|---|
| SOFA-204 | 1249.00 EUR | DE:Standard:29.90 EUR |
这一行是有效的,但它恰恰是问题的根源,因为账户政策中的送达时效不再适用于该商品在德国的配送。
修改后。同样的覆盖,重新填写了时效字段:
| id | price | shipping(country:service:price:min_handling_time:max_handling_time:min_transit_time:max_transit_time) |
|---|---|---|
| SOFA-204 | 1249.00 EUR | DE:Standard:29.90 EUR:1:2:3:5 |
再看一件低价配件,它有自己的运费,而店铺要求最低订单金额为 20 EUR。由于商品价格等于或低于最低订单金额,且该行覆盖了运费,因此最低订单金额也必须重新填写:
| id | price | shipping(表头同上) | minimum_order_value(country:price) |
|---|---|---|---|
| CAB-017 | 12.90 EUR | DE:Standard:3.90 EUR:1:2:3:5 | DE:20 EUR |
Google 的最低订单金额规范指出:仅当商品价格等于或低于最低订单金额时才需设置;币种必须与商品的 price 一致;提交的值必须与您网站上显示的一致。价格为 1249.00 EUR 的沙发则不需要 minimum_order_value。
步骤 4:审慎处理截止时间和时区
截止时间很容易出错,因为目前有两种格式在流通。Google 当前的属性页面规定 handling_cutoff_time 为四位数字的 HHMM 字符串,例如 1530,handling_cutoff_timezone 使用 IANA 格式,例如 Europe/Berlin,默认为目的地所在的时区。一些 4 月更新之前的第三方文章展示的是 UTC 偏移量,例如 +02:00。请以 Google 的页面为准,并在上线前先用少量商品验证。
当同一个截止时间适用于某商品的多个 [shipping] 行时,请使用独立的 handling_cutoff_time 属性,而不是重复填写。另请注意优先级规则:如果您同时以独立属性和 [shipping] 子属性两种方式提交处理时间,只有子属性会生效。如果截止时间留空,Google 的送达时间文档说明默认值为太平洋标准时间上午 8:00,这对大多数欧洲或中东北非地区的商店来说是错误的时间基准。
步骤 5:检查币种格式和价格上限
每种货币的 price 子属性都有上限。这些数字在 Feedance 接触最多的地区尤为重要,因为土耳其里拉、阿联酋迪拉姆和沙特里亚尔共用的上限高于欧元或美元:
| 币种 | 可接受的运费范围 |
|---|---|
| EUR、GBP、USD、CHF | 0 至 1000 |
| TRY、AED、SAR、PLN | 0 至 5000 |
| INR、JPY、RUB | 0 至 100000 |
请使用句点作为小数分隔符,且不要使用千位逗号,即写作 29.90 EUR,绝不能写成 29,90 EUR。许多土耳其和欧洲的导出文件默认使用逗号作为小数点,因此在该列提交到 Merchant Center 之前,请先检查格式。运费中不要包含政府征收的费用。
步骤 6:先在一个细分范围试点,再逐步扩大
使用补充数据源,为一个商品组推送新的行,例如单个国家/地区中的单个类目,这样主 feed 不会受到影响。补充 feed 正是为此设计的:它为商品添加列,而不会替换主数据。等待下一个处理周期,然后在 Merchant Center 中打开该商品,确认送达时效估算仍然正常显示。确认无误后,再把这一模式推广到其余的例外商品。如果您的 feed 工具可以写入您自定义的列,那么基于规则的编辑功能有助于修正逗号与句点的问题,并构建以冒号分隔的值。
步骤 7:与结算页面核对,并了解失败提示信息
Google 会将您数据中的费用与购物者在结算页面看到的费用进行比较。如果数据中的费用偏低,账户中可能会出现以下警告:
运费不准确(由于您的 feed 与您网站结算页面之间的运费不一致)
Google 给出的修复步骤是:让运费服务设置或该属性与网站保持一致,重新提交,并申请审核。Google 指出,修复生效后审核可能需要 24 至 48 小时;如果难以做到精确的运费,您可以略微高估。请把对照实际购物车抽查五个已覆盖运费的商品,作为每次发布的固定环节。
本指南未涵盖的内容
我们没有涉及遵循相关规则的 [carrier_shipping],也没有涉及除自提费用说明之外的本地库存运费,以及取决于购物篮金额而非商品的包邮门槛。复杂的运费表,例如按承运商划分的重量区间,通常在 Merchant Center 中维护,比写成成千上万行 feed 数据更容易。我们也没有对 Feedonomics、Productsup、Channable 或 DataFeedWatch 等其他 feed 平台如何写入结构化子属性做过基准测试,因此不对它们作任何论断。在确定方案之前,请先确认您的工具能够输出以冒号分隔的子属性。这里的属性名称已于 2026 年 10 月 18 日对照 Google 帮助页面核实,而 Google 经常修改这些页面。
常见问题
[shipping] 属性会覆盖 Merchant Center 的运费设置吗?
会。该属性中的值会覆盖账户级运费。设置 price 还会使该地区的账户级送达时效和最低订单金额被忽略。
一个商品最多可以有多少行运费?
该属性每个商品最多可重复 100 次。该商品配送到的每个国家/地区、区域或服务组合都需要各自的一行。
每个商品都需要 minimum_order_value 吗?
不需要。仅当商品价格等于或低于最低订单金额时才需指定。如果商品同时覆盖了运费,那么即使账户设置中已定义最低订单金额,您也必须明确提供该值。
handling_cutoff_time 使用什么格式?
Google 的属性页面规定为四位数字的 HHMM 字符串,例如 1530。相关的时区子属性使用 IANA 名称,如省略则默认为目的地所在的时区。
如果同时使用独立的处理时间属性和 shipping 子属性,会怎样?
只会使用 [shipping] 内的子属性。独立的 [min_handling_time] 和 [max_handling_time] 属性是替代关系,而不是叠加关系。
以土耳其里拉提交的运费上限是多少?
文档规定 TRY 的范围为 0 至 5000,与 AED 和 SAR 相同。请使用句点作为小数分隔符。
自提费用的要求适用于欧洲以外的地区吗?
根据 Google 的公告,2026 年 9 月 30 日起的这一要求适用于英国、瑞士和欧洲经济区国家中启用了自提的 in_store 商品。
修复运费不准确警告后,审核需要多长时间?
Google 表示,在修复内容于您的数据和设置中生效后,审核可能需要 24 至 48 小时。请不要在重新提交的数据处理完成之前申请审核。
下一步
如果您的运费覆盖是更大范围的 Merchant Center 整理工作的一部分,我们的 Google Merchant Center feed 设置指南涵盖了必填属性和常见错误的修复方法,而 阻止 Google 悄悄覆盖您 feed 中的价格和库存状态数据则解释了 Google 在不通知您的情况下修改您数据的另一种方式。关于如何在不改动主 feed 的前提下添加列,请参阅补充 feed和 Feed Rules。
在添加运费覆盖之前,请用免费商品 feed 审核工具检测您自己的 feed,查看完整性和数据质量方面的缺口在哪里。

Kardelen Yılmaz 在 Feedance 负责增长业务,帮助电商品牌和代理商从每一件投放广告的商品中获得更高回报。她撰写的内容涵盖商品 Feed 质量、Shopping 与 Performance Max 广告系列、创意自动化,以及 AI 驱动的购物如何改变商品曝光。
LinkedIn











