廣告
在受眾看厭之前,先把素材停掉
頻次是那種發現得太遲的數字:廣告繼續花錢,同一批人已經看到第九次。上限只需要寫低一次,之後每小時自動比對,超標就停,沒有人需要打開 Ads Manager。但這個上限有多大用處,由 Meta 報告頻次的方式決定,不是由流程決定。
- 觸發
- 兩個
- 執行頻率
- 每小時
- 工具
- 3 件
- 需要 durable execution
- 不需要
流程
兩個觸發、一個判斷。上面那條讀取平台報告的數字,下面那條存放你自己定的上限,兩邊在比對那一步交匯。
每小時
n8n 排程
讀取頻次
Meta Ads Insights API
寫入頻次紀錄
Sheets · Airtable
逐個 campaign 設定上限
Sheets · Airtable
把廣告對上各自的上限
n8n
是否超過上限?
n8n IF
暫停該廣告
Meta Marketing API
維持不變
—
逐步拆解
- 01
每小時
n8n 排程每小時已經足夠。Meta 的成效數據每十五分鐘更新一次,但頻次以日計移動,不是以分鐘計。
- 02
讀取頻次
Meta Ads Insights API每一個在跑的廣告發一次請求,取 ad 層級數字,並明確指定日期範圍。整個生命週期的頻次,與過去七日的頻次,是兩個數字,會導向兩個不同的決定。
- 03
寫入頻次紀錄
Sheets · Airtable每次執行、每個廣告一行。這份紀錄的用途,是事後看清楚那條素材燒得有多快,而這正是下一次定上限的依據。
- 04
逐個 campaign 設定上限
Sheets · Airtable上限由操作者自己寫。開發新客的上限,與再行銷的上限,不會是同一個數。改動格內數字,下一輪就按新值比對。
- 05
把廣告對上各自的上限
n8n沒有設定上限的廣告直接略過,不套用預設值。靜靜套一個預設上限,正是好素材被誤殺的方式。
- 06
是否超過上限?
n8n IF比對的是你自己定的數,不是外面流傳的基準。頻次沒有正確答案,只有一個位置——你的單次成本開始不能接受的位置。
- 07
暫停該廣告
Meta Marketing API停的是廣告本身,不是整個 ad set。停了上層,會連同一組裡仍然有效的素材一併停掉。
平台不容許的事
這裡能自動化到什麼程度,由 Meta 報告頻次的方式決定。這條界線,正是大部分教學不會寫的部分。
官方對頻次的定義,是每個人平均看過廣告的次數,而 Meta 標明這是估算值。所以上限是一個架在估算值上的門檻,不是架在實數上。
Marketing API — Ad Account Insights reference按小時拆分不支援 reach 與 frequency:一旦使用小時拆分,這兩個欄位會回傳 0。流程可以每小時執行,但無法要求平台把頻次按小時拆開。
Ads Insights API — BreakdownsMeta 自家的排程規則只有三種間隔:每日(以廣告帳戶時區的午夜為準)、每小時、每半小時。半小時是原生規則引擎最密的頻率。
Marketing API — Schedule-based ad rules
什麼情況不值得做
以下三種情況,維護成本會高於浪費掉的曝光。
每個 campaign 只有三、四條素材。這個數量,停哪一條應該由你自己判斷;而且一停,剩下的素材未必接得住預算。
手上沒有備用素材。停了卻沒有東西頂上,預算只會流向剩下那條——通常就是本來已經跑得差的那條。
受眾夠大,頻次一直平穩。如果上限一個月都沒有觸發過,它就是一個沒有人在看的流程;到 API 請求開始失敗,也不會有人察覺。