库存快不够了,广告该先降哪些?
库存吃紧时该先降的不是花得最多的,是转化最好的——正是它们在最快消耗库存。产品不预测断货日期,可售天数只作判断参照。
可售天数一天比一天短,广告还在按满库存的节奏跑
补货还在路上,到仓日期你自己都说不准。后台那个可售天数一天比一天短,但广告什么都没变——预算、竞价、活动结构全是当初按「货管够」设的,还在尽职地把单往里推。搜一圈,答案高度一致:日预算降三成上下,竞价降个 5%-10%,千万别把广告关了。听着都对,可它没回答你手上的问题——你有二十几条广告活动、上百条投放,这个百分比到底该落在哪几条身上。全体降三成是最省事的做法,也是最容易把接下来两周搞砸的做法。
为什么不好办
「先砍花得最多的」这个直觉,在这里是反的
平时优化广告,你按花费和 ACoS 排序,从最贵最差的开始砍,这套顺序对得不能再对。库存吃紧时它整个反过来:**你现在要减的不是花费,是出货速度。**花得凶但不出单的那批投放,一件库存都没吃掉;真正在消耗你库存的,恰恰是转化最好、ACoS 最低的那几条——它们每花一块钱都在把货变走。全体降三成,等于在压住高效那条的同时,也压了本来就没在出单的那条,而后者降不降对可售天数毫无影响:你付出了三成曝光,换回来的天数比你以为的少得多。这不是说效率差的投放可以不管——它们该砍,但那属于省钱,跟撑库存是两笔账。
降预算和降竞价,减掉的不是同一样东西
两个动作都能让出货变慢,减的东西却不同。降预算是让广告提前花完、后半天不再展示,减的是**在场时间**;降竞价是全天都在、位置往下掉,减的是**位置**。哪条更划算,取决于你这些词是靠头部位置吃饭,还是靠全天覆盖吃饭。这里得说清一条边界:**广告位(placement)这一维产品不做**——投放结构只按报表原始的定向类型与匹配方式两维分组,库存吃紧时常用的广告位溢价回调,得你在后台自己判断。
你要撑的是天数,广告只是分子里的一部分
「撑到几号」是个绝对量问题:可售库存 ÷ 日均出货 = 还能撑几天,要延长就得把日均出货压到一个具体数字上。而广告只贡献其中一部分订单——自然单不会因为你降了预算就跟着降。所以「降三成」这个比例天然对不上目标:广告订单占比 70% 的款和 30% 的款(示例数字),同样降三成,对可售天数的效果差出一倍不止。这里也是产品边界所在:**它不预测断货日期,也不给补货建议。**报表快照里有可售天数这一列,前置检查里有你按 ASIN 填的库存天数设定,两个数都作为参照进入判断,但没有任何一段代码替你算「照这个速度哪天断」——那个数得你自己算出来,再把结论告诉它。
「库存」那一列比你以为的窄,它不知道在途那批
报表快照里的「库存」**限定为 FBA 可售**,在途、预留、不可售是另外的列;可售天数也是拿可售那一列算的。库存吃紧的时候这个区别最要命:你心里想的是「那批货下周就到了,先别降太狠」,但屏幕上那个数字里没有下周那批。降不降、降多久,得拿你自己那份含在途和到仓时间的完整台账来定——系统这一列只说得出此刻货架上还剩多少。
该按什么顺序判断
- 01
先算出日均要压到多少单——这一步在系统外
在动任何一条广告之前,先把目标写成一个数:这批可售库存要撑到哪天,倒过来算日均最多能出多少单;再看最近几天的实际日均出货、其中广告单占几成,差额就是广告那边要让出来的量。这一步没有代码替你做——但少了它,后面所有调整都只是凭感觉拧旋钮,两周后你既说不清降够了没有,也说不清是不是降过头了。
- 02
把处境写进前置检查,否则判断会按常规节奏给
库存天数和生命周期是在前置检查里**按 ASIN 逐个填**的经营约束,销售目标和可接受亏损也跟着这一期的处境改。这些值以参考线的形式进入判断:要求参考、偏离要说明理由,但不机械套用,**也不拿去预过滤数据**——同一批报表,填了「这款只剩十来天可售」和没填,读出来不是一回事。留空的字段会被明确按未设置处理,改用上周实际做基准并写进说明,不会替你猜一个目标值。你不把处境说出来,它只能按货管够的节奏给建议,而那个建议看上去一样合理。
- 03
先看结构层:钱先从哪一类定向收回来?
别一上来就逐条调 bid。先把所有投放按报表原始的「定向类型 | 匹配方式」分组,看花费、点击、订单在各组之间怎么分,这一层的判断落成五选一:放大 / 保持 / 收缩 / 优化 / 暂停。库存吃紧时这一层特别值得先看:广泛匹配、自动投放这类探索性流量,货管够时是投资,货不够时是纯消耗——你现在既不需要新词,也不需要更多单。在这一层定完方向再往下钻,比挨条拧出价快得多。
- 04
再逐条过,但要按两个理由分开过
投放层的判断是保留 / 提价 / 降价 / 暂停 / 拆分,搜索词层是收割 / 否定 / 提价 / 观察。库存吃紧时这两层要按两个理由分别过一遍:转化好的那批,降的是出货速度,**这是临时动作,货到了要还回去**;零单高花费那批,降的是浪费,本来就该降,跟库存没关系。两类动作写下来长得一模一样——都是「bid 从 X 降到 Y」——区别只在一个有到期日一个没有。记录时把这个理由写进备注,两周后你才分得清哪些该调回来。
- 05
记下来,下周才对得上账
每次调整都记成一行:实际做了什么、哪天做的。复盘按这个操作日期把同一个对象切成前 7 天与后至多 7 天做对比,纯算术,不再问模型。暂停的对象会从报表里消失,后段按 0 计入——这正是暂停生效的样子。要留意它的边界:**它只报告操作后已经有几天数据,不替你判断够不够,也不下「有效/无效」的结论。**库存吃紧这几周你会连着动很多次,后段常常只有两三天,看结论时要自己把这一点扣掉。
产品在这件事上做了什么
- 库存天数和生命周期是你在前置检查里按 ASIN 填的经营约束,不是系统猜的。它们跟着销售目标、广告预算、可接受亏损一起作为参考线进入判断,要求参考、偏离要说明理由,但不机械套用,也不先拿去过滤数据。
- 判断的第一段是代码算好的「经营对照」:期望对上实际(近 30 天、近 7 天、前 7 天、近 14 天环比),后面挂着最新快照——日期、库存、可售天数、价格、Buy Box 占比。库存吃紧时最要紧的那两个数,和广告表现摆在同一屏里。
- 投放结构按报表原始的「定向类型 | 匹配方式」分组,给出放大 / 保持 / 收缩 / 优化 / 暂停的五选一,和活动层(继续/加预算/降预算/优化/暂停)、投放层(保留/提价/降价/暂停/拆分)、搜索词层(收割/否定/提价/观察)各自的枚举分开——这几层能做的动作本来就不是一回事。
- 窗口内的真实执行记录会作为事实进入输入,并要求先归因于该操作、再谈趋势。库存吃紧期这条格外要紧:降完预算第二天单量掉了,那是你自己降的,不是需求萎缩。没有这条,模型会把你亲手造成的下滑读成市场变差,然后建议你再降一轮。
- 你可能在诊断跑起来之前就先把预算压下去了——这类没有建议来源的操作照样能记,记成自发动作,一样进复盘的前后对比。
「全体降三成」在多产品店里会把预算错配掉
只看一个 ASIN 时,统一降个比例是个还算安全的钝器。放到全店就不是了:你从这一款收回来的钱,不会自己长脚走到该去的地方。库存吃紧那款让出来的预算,恰恰是别的款最该接住的;但这个判断在单品视角里根本不存在——在那个视角里,「少花钱」本身就算达成目标了。所以所有单 ASIN 判断跑完之后,还有独立的一次汇总调用,只回答按 ASIN 切片看不见的那个问题:预算该从哪款收回、投到哪款去。它只在成功诊断的 ASIN 多于一个时才跑。
还有一个只在全店视角才存在的坑:重叠。同一条广告活动服务多个 ASIN、同一个词在两个产品下都在跑,都很常见。你为库存吃紧的 A 降了某条活动的预算,跑在同一条活动里、货堆成山的 B 一起被降了。这类重叠会被代码按共享实体分组打上标签——只贴标签,不替你裁决,因为该牺牲哪一个是你的经营决定。
临时降下去的,怎么保证还调得回来
库存吃紧期的调整绝大多数是临时的:货一到仓,该还回去。但系统里没有「到期自动恢复」这种东西——一条执行记录记的是你实际做了什么和哪天做的,它不带生效期限,时间到了不会有人提醒你,更不会有人替你把 bid 调回去。这不是没做完的功能:自动改回一个你两周前设的值,前提是假设这两周什么都没变,而库存吃紧期恰恰什么都在变。
所以临时性只能靠你在记录里写清楚。备注这一栏在这里不是可填可不填的装饰——「为撑库存临时降,到仓后回 $1.50」(示例数字)和「零单,长期砍掉」,在报表上呈现出来一模一样,两周后能分开它们的只有你当时写的那句话。
顺带划清一条与清货的界线:如果你已经确定这批货不再补、要在某个期限前清掉,目标就从「压出货速度」翻转成「在期限内把货换成现金」,连盈亏平衡线都可以有意识地越过去——那是另一套判断(见「清库存」)。这两种处境最容易被混着处理,而它们的目标函数正好是反的。