"Em set ngân sách 1tr/ngày nhưng campaign chỉ spend 200k, algorithm bảo target không khả thi" - founder hỏi. Đây là vấn đề "ROAS không phân phối" - common khi target quá cao.
Bài này giải thích why, và 4 bước fix systematically.
Tại sao algorithm 'không phân phối' khi target không khả thi
Algorithm Shopee/TikTok/Meta được train để optimize cost. Khi ROAS target quá cao:
- Algorithm tính: ROAS target 10x cần CVR 4% với CPC 1.000đ
- Lookup audience pool: chỉ 5% audience có khả năng đạt CVR đó
- Volume thực tế của 5% pool quá nhỏ → spend chỉ 200k/ngày dù budget cho phép 1tr
Algorithm không "stupid" - nó refuse spend khi không hit target. Đó là tự bảo vệ shop khỏi đốt tiền.
Check break-even ROAS thực của campaign
Trước fix, tính break-even ROAS:
Break-even ROAS = 1 / CM%
Vd CM 20% → break-even 5x. Set target 12x = không khả thi.
Realistic target = break-even × (1 + profit margin desired)
Vd CM 20%, profit target 10% → realistic ROAS = 1/(20% - 10%) = 10x. Có thể achievable nhưng tight.
Safe target = 1/(CM% - profit target - 5% buffer)
Bước 1: Giảm target xuống 70% break-even để algorithm có data
Tactical fix:
- Temporarily giảm ROAS target xuống 70% break-even (chấp nhận lỗ ngắn hạn)
- Cho algorithm 7-10 ngày thu data
- Khi đạt 50+ conversion, algorithm hiểu audience → tăng target lên dần
Vd: break-even 5x → set target 3.5x trong 7 ngày → algorithm spend đầy đủ → có data → tăng target 4x → 4.5x → 5x.
Đây là "warm-up algorithm" technique. Loss ngắn hạn đổi lấy stable performance dài hạn.
Bước 2: Thêm conversion signal
Algorithm cần "đủ data point" để optimize. Conversion signal hẹp = ít data point.
Thay vì chỉ tracking "Purchase" event:
- Thêm "Add to Cart" event
- Thêm "View Content" event
- Thêm "Initiate Checkout" event
Optimization theo "Purchase" cần ~50 conversion/tuần để stable. Optimization theo "Add to Cart" chỉ cần 200-300 ATC/tuần (dễ hit hơn).
Sample setup:
- Tuần 1: optimize "Add to Cart"
- Tuần 2: switch sang "Initiate Checkout"
- Tuần 3+: switch sang "Purchase" (data đã builds)
Mỗi switch reset learning 3-5 ngày. Trade-off worth nếu campaign từ "không phân phối" → "phân phối ổn".
Bước 3: Refine audience nếu reach quá rộng
Audience 10tr+ reach có thể có CVR variance cực lớn. Algorithm khó converge.
Refine xuống 500k-2tr reach:
- Layer interest + behavior + demographic
- Exclude buyer cũ (đã mua trong 30 ngày)
- Geo target chính xác (chỉ HCM/HN/Đà Nẵng)
- Age range hẹp lại (vd 22-35 thay vì 18-55)
Audience hẹp hơn → algorithm converge nhanh hơn → spend đầy đủ hơn.
Bước 4: Restart campaign với learning data mới
Nếu sau 7-10 ngày bước 1-3 vẫn không fix:
- Kill campaign cũ (mất learning data)
- Tạo campaign mới với:
* Target audience hẹp
* Conversion event broader
* ROAS target conservative (break-even -10%)
- Spend aggressive 5-10 ngày để build new data
- Sau đó tighten target
Restart là last resort vì mất history. Chỉ làm khi 1-3 không work.
Khi nào pause hoàn toàn và rebuild từ đầu
3 scenario phải full rebuild:
1. CM% structure broken - target ROAS feasible nhưng business unit economics không cho phép. Fix CM trước (xem Contribution Margin > ROAS)
2. Audience saturation lifetime - đã chạy audience này 6+ tháng, không còn buyer mới. Build audience mới hoàn toàn (lookalike từ buyer cũ, expand geo).
3. Creative fatigue toàn portfolio - tất cả creative đều decay. Pause 2-3 tuần, đầu tư mạnh vào creative team / outsource creative.
Avoid lỗi 'over-optimization loop'
Pattern lãng phí:
- Sửa target → không work → sửa audience → không work → sửa creative → không work → sửa target lại
- Mỗi lần sửa = reset learning
- Sau 4 tuần, campaign vẫn không phân phối, đã đốt 30-50tr
Quy tắc:
- Mỗi lần fix chỉ 1 thứ
- Đợi 7-10 ngày trước khi đánh giá
- Document từng action + kết quả
Sample timeline fix
Day 1: Identify problem - campaign spend chỉ 30%/budget
Day 2: Audit CM% và break-even ROAS. Realize target 10x với CM 18% (break-even 5.6x) là quá tham vọng
Day 3-9: Giảm target xuống 4x. Add ATC conversion event. Spend tăng từ 30% lên 80%. Có 60+ ATC/tuần.
Day 10-16: Tăng target lên 5x. Spend stable 75%. ROAS actual 5.3x.
Day 17-23: Tăng target 5.8x. Spend 70%. ROAS actual 6.1x.
Day 24+: Target 6x stable. Spend 70-80%. Profit positive.
3 tuần fix. Phải kiên nhẫn với algorithm.
FAQ
Hỏi: Bao lâu thì biết campaign 'không phân phối' khác 'chưa thu data'?
Trả lời: Sau 5-7 ngày. Nếu spend <50% budget consistent = không phân phối. <80% = đang learning.
Hỏi: Giảm target có làm hỏng "expectation" của founder không?
Trả lời: Phải communicate. Ngắn hạn lỗ là investment để algorithm hoạt động đúng. Dài hạn ROAS sẽ ổn định cao hơn.
Hỏi: Có nên dùng "Manual bid" thay vì target ROAS?
Trả lời: Manual bid khi đã hiểu audience rõ. Target ROAS dễ scale hơn nhưng phụ thuộc algorithm.
Hỏi: Restart campaign có mất history account ads không?
Trả lời: Không mất account history, chỉ mất campaign-level learning. Account history vẫn benefit campaign mới.
---
Tools liên quan:
- ROAS Calculator - tính break-even ROAS chuẩn
- Mẫu P&L Ecom - check CM% trước khi set target
Đọc tiếp:
- Khi nào tăng, khi nào giảm ROAS
- Cách đặt ROAS cho sản phẩm mới
- Đặt ngưỡng CPO theo biên lợi nhuận
- Quy tắc 3-7-3




Bình luận
Chia sẻ ý kiến của bạn - bình luận hiện ngay sau khi gửi.
Để lại bình luận
Email không bắt buộc, không hiện công khai. Bình luận đăng tức thì - hãy giữ tinh thần xây dựng.