Tôi Tự Xây Một Dashboard Để Biết Chính Xác Khi Nào Ad "Mệt"
Có một nghịch lý kỳ lạ trong mobile game marketing: Cái video quảng cáo chạy tốt nhất lại là thứ sẽ giết chết campaign của bạn nhanh nhất. Vì sao? Vì thuật toán thích nó, nên nó bơm nó đi liên tục. Người dùng thấy đi thấy lại 5-7 lần trong 2 ngày. Ngày đầu họ tò mò, ngày thứ hai họ quen rồi lướt qua, ngày thứ ba họ tức lên và bắt đầu tắt quảng cáo. Đó là creative fatigue.
Trong ngành game mobile với ads chạy trên Meta, TikTok, Applovin, Unity, Google cùng lúc, một creative có thể "cháy" chỉ trong vòng 3-5 ngày. Hầu hết team tôi từng làm việc cùng đều phát hiện ra điều này theo cách tồi tệ nhất: CPI đột ngột tăng gấp đôi, ROAS rơi tự do, leader hỏi tại sao thì không ai biết. Câu trả lời thường là: "Ừ hình như ad đó chạy lâu quá rồi."
Vì không muốn tiếp tục sống trong tình trạng "phát hiện bệnh khi đã nặng", tôi tự đề xuất và xây một trang dashboard nội bộ để theo dõi chỉ số fatigue theo thời gian thực. Bài này tôi sẽ kể lại cách tôi thiết kế nó, và tại sao AI lại là mảnh ghép không thể thiếu.
Tại Sao Dashboard Riêng? Dùng Ads Manager Không Được Sao?
Ads Manager của Meta hay Google UAC đều có data tốt, nhưng chúng được thiết kế cho người mua media (Media Buyer), không phải cho người làm Creative. Khi tôi muốn biết: "Video hook nào đang fatigue ở thị trường nào, và nên refresh cái gì trước?", tôi phải click qua ít nhất 4-5 màn hình, filter thủ công, và xuất Excel ra để phân tích. Nếu chạy 5 platform cùng lúc, đây là cơn ác mộng hàng ngày.
Dashboard tôi xây có một nhiệm vụ duy nhất: Nhìn vào là biết ad nào đang cần refresh, ad nào đang ổn, ad nào vừa xác. Không cần phải là kỹ sư dữ liệu mới đọc được.
Thiết Kế 4 Vùng Của Dashboard
Vùng 1 — Alert Bar (Cảnh báo nóng): Đây là dải đầu tiên tôi nhìn khi mở dashboard mỗi sáng. Nó liệt kê tất cả creative đang kích hoạt ngưỡng cảnh báo: màu đỏ là "Cần xử lý ngay", màu vàng là "Đang có xu hướng xấu, theo dõi tiếp". Tôi đặt 5 ngưỡng cụ thể:
- CTR giảm hơn 25% so với 3 ngày đầu chạy
- IPM giảm hơn 30%
- CPI tăng hơn 40% so với baseline
- Watch Rate (3s) giảm hơn 20%
- ROAS thấp hơn target 15% trong 2 ngày liên tiếp
Vùng 2 — Creative Performance Table: Một bảng danh sách mọi creative đang chạy. Mỗi dòng là một ad, mỗi cột là một metric, và tôi dùng hệ thống màu (green/yellow/red) để trực quan hóa tình trạng. Cột quan trọng nhất: Age (số ngày đã chạy) và Fatigue Score (điểm mệt mỏi). Fatigue Score là con số tổng hợp tôi tự tính dựa trên trọng số của 5 metrics trên.
Vùng 3 — Trend Charts (Biểu đồ xu hướng): Khi tôi click vào một creative cụ thể, vùng này show biểu đồ đường theo ngày: CTR, IPM, CPI song song với nhau. Tôi có thể nhìn thấy ngay chính xác ngày nào performance bắt đầu trượt dốc.
Vùng 4 — AI Suggestion Panel (Khuyến nghị từ AI): Đây là phần tôi thích nhất. Khi một creative bị flag, AI tự động phân tích và gợi ý hành động cụ thể.
Phần AI Suggestion Hoạt Động Như Thế Nào?
Tôi kết nối dashboard với một AI model (ban đầu là GPT-4, sau tôi chuyển sang Gemini API vì rẻ hơn và context window lớn hơn). Mỗi khi một creative chạm ngưỡng cảnh báo, hệ thống sẽ tự động đẩy context gồm:
- Metadata của creative: format, hook type, character, market, platform
- Chuỗi data 7 ngày gần nhất: CTR, IPM, CPI, Watch Rate
- Thông tin các creative đang perform tốt trong cùng campaign
Rồi AI trả về gợi ý theo dạng structured output, ví dụ:
Phát hiện: Creative "TH-UGC-Hook-Drama-01" đã chạy 6 ngày. CTR giảm 32% so với baseline D1. Watch Rate (3s) giảm 18%.
Gợi ý: Hook drama đã bị overexposed ở thị trường Thailand. Đề xuất tạo 2 biến thể: (1) Giữ nguyên 27s sau, thay hook sang dạng Reward/Result; (2) Thử format ngắn hơn 15s với hook trực tiếp vào gameplay. Dừng scale creative gốc, giữ ở budget thấp để test biến thể mới.
Thay vì tôi phải mỗi sáng ngồi lọc data thủ công và tự nghĩ ra action, hệ thống làm thay. Tôi chỉ cần đọc, phán xét, và giao việc cho team.
Trực Quan Hóa: Vòng Đời Điển Hình Của Một Mobile Ad
Quy Trình Refresh Khi Fatigue Được Phát Hiện
Khi dashboard bật đèn đỏ, tôi không tắt ad ngay. Quy trình tôi đưa ra gồm 4 bước nhanh:
- 1. Triage (Đánh giá mức độ): Xem Fatigue Score là bao nhiêu. Dưới 60 thì chỉ cần theo dõi. Trên 75 thì phải hành động trong 24h.
- 2. Rapid Refresh (Làm mới nhanh): Tôi không làm video mới hoàn toàn. Tôi chỉ thay hook (3s đầu) hoặc đổi nhạc nền. Thường mất 2-4 giờ. Biến thể mới này được push lên test ngay trong ngày.
- 3. Rotate (Luân phiên): Đưa biến thể mới vào campaign, hạ budget của creative gốc xuống mức thấp nhất. Không tắt hẳn vì đôi khi sau 3-4 ngày "nghỉ ngơi", creative gốc có thể hồi phục một phần khi reach fresh audience.
- 4. Log & Learn: Ghi nhận vào Knowledge Base: creative này fatigue vào ngày thứ mấy, ở thị trường nào, hook nào thay thế thành công. Dữ liệu này nuôi lại AI để lần sau gợi ý chính xác hơn.
Kết Quả Sau 2 Tháng Vận Hành
Sau khi tôi đưa dashboard này vào vận hành, thời gian phản ứng với fatigue giảm từ trung bình 2-3 ngày (phát hiện thủ công) xuống còn dưới 6 giờ (phát hiện tự động + refresh nhanh). Không phải con số ảo, đây là thứ tôi tracking trong Notion và báo cáo lên leadership mỗi tuần.
Điều tôi học được từ cái dashboard này không chỉ là kỹ thuật. Quan trọng hơn là tư duy: Fatigue không phải là thất bại của creative, nó là thành công quá mức của distribution. Cái video tốt nhất của bạn sẽ luôn bị đốt nhanh nhất. Nhiệm vụ của Creative Lead không phải là tạo ra một siêu phẩm bất tử, mà là xây dựng hệ thống liên tục làm mới để không bao giờ hết đạn.