Quy tắc quảng cáo cân đối lại ngân sách

Để tạo quy tắc Cân đối lại ngân sách dựa trên ROI, bạn cần phải hiểu rõ từng thành phần riêng lẻ. ROI là viết tắt của Lợi nhuận trên vốn đầu tư.

Ở trang này, bạn sẽ tìm hiểu về từng thành phần trong quy tắc cân đối lại và mức độ ảnh hưởng của mỗi thông số đến cách chạy quy tắc.

Quy cách lịch chạy

Đối với quy tắc cân đối lại, bạn nên sử dụng lịch chạy DAILY hoặc CUSTOM vì hành động này không nên xảy ra thường xuyên.

Quy cách đánh giá

Tiêu chí đánh giá phối hợp hài hòa với rebalance_spec để xác định danh sách các đối tượng chịu ảnh hưởng của quá trình cân đối lại.

Đối với mọi loại cân đối lại, danh sách các đối tượng vượt qua đánh giá là nguồn ngân sách. Danh sách các đối tượng nhận sẽ khác nhau tùy theo loại cân đối lại được chỉ định, nhưng đối với hầu hết các loại này (ví dụ: EVEN), đối tượng nhận là những đối tượng không vượt qua đánh giá.

Ví dụ: nếu tiêu chí của tôi cho quy tắc loại EVENcost_per_mobile_app_install > 2.50, tức là tất cả nhóm quảng cáo có chi phí trên mỗi lượt cài đặt ứng dụng di động lớn hơn 2,50 sẽ bị tạm dừng, đồng thời ngân sách của các nhóm quảng cáo này sẽ được chuyển sang tất cả nhóm quảng cáo có chi phí trên mỗi lượt cài đặt ứng dụng di động nhỏ hơn hoặc bằng 2,50.

Quy cách thực thi

rebalance_spec xác định chính xác cách đối tượng nhận sẽ nhận được ngân sách. Có 5 thông số:

Trường Mô tả

type

Bắt buộc.

Xác định cách phân bổ ngân sách. Nếu giá trị này không phải là EVEN, bạn phải có cả target_field để xếp hạng.


Giá trị được hỗ trợ:EVEN, PROPORTIONAL, NO_PAUSE_PROPORTIONAL, MATCHED_ONLY_PROPORTIONAL

target_field

Không bắt buộc.

Chỉ định số liệu Thông tin chi tiết được dùng để xếp hạng đối tượng nhận. Đây là thông số bắt buộc nếu type không phải là EVEN hoặc nếu quy cách có cả target_count.


Giá trị được hỗ trợ: Trường Thông tin chi tiết, chẳng hạn như cpa hoặc impressions

target_count

Không bắt buộc.

Chỉ định số lượng (K) đối tượng nhận. typetarget_field cùng nhau xác định K đối tượng nhận hàng đầu sẽ nhận được ngân sách. Cách này rất hữu ích khi bạn không muốn chuyển ngân sách cho mọi đối tượng nhận có thể. Nếu K lớn hơn số lượng đối tượng nhận, quy tắc sẽ cân đối lại ngân sách cho tất cả đối tượng nhận. Nếu chỉ định thống số này, bạn cần có target_field.


Giá trị được hỗ trợ: Số nguyên dương, chẳng hạn như 5

is_cross_campaign

Không bắt buộc.

Chỉ định xem bạn có cho phép phân bổ ngân sách cho nhiều chiến dịch quảng cáo hay không. Nếu thông số này không được chỉ định hoặc có giá trị là false, chúng tôi sẽ chỉ chuyển ngân sách trong chiến dịch quảng cáo. Nếu thông số này có giá trị là true, chúng tôi sẽ đánh giá và thực thi tất cả nhóm quảng cáo cùng nhau, do đó có thể dẫn đến việc chuyển ngân sách giữa các chiến dịch quảng cáo.


Giá trị được hỗ trợ: Giá trị boolean, chẳng hạn như true hoặc false

is_inverse

Không bắt buộc.

Chỉ định xem có cần xếp hạng đối tượng nhận từ cao đến thấp theo giá trị đảo ngược của giá trị target_field hay không. Cách này rất hữu ích nếu bạn muốn xếp hạng giá trị thực tế thấp nhất ở vị trí cao nhất.


Giá trị được hỗ trợ: Giá trị boolean, chẳng hạn như true hoặc false

Vấn đề cụ thể

Có một số vấn đề cụ thể liên quan đến hành động này:

Ngân sách hàng ngày và ngân sách trọn đời

Nếu các nhóm quảng cáo cần cân đối lại có cả Ngân sách hàng ngày lẫn Ngân sách trọn đời, chúng tôi sẽ tách những nhóm quảng cáo đó thành 2 nhóm. Tức là nhóm quảng cáo chỉ chuyển Ngân sách hàng ngày cho các nhóm quảng cáo khác cũng có Ngân sách hàng ngày. Tương tự như vậy với Ngân sách trọn đời.

Đối với nhóm quảng cáo có Ngân sách trọn đời, chúng tôi sẽ lấy phần ngân sách còn lại - mức chênh lệch giữa Ngân sách trọn đời và Chi tiêu trọn đời - khi xác định lượng ngân sách có thể phân bổ. Nhờ vậy, chúng tôi có thể đảm bảo tổng ngân sách ở cấp độ chiến dịch quảng cáo sẽ không thay đổi.

Loại rebalance_spec

Đối với loại EVENPROPORTIONAL, chúng tôi sẽ tạm dừng các đối tượng trùng khớp (đối tượng quyên góp ngân sách cho đối tượng nhận). Khi tạm dừng những đối tượng này, chúng tôi sẽ không điều chỉnh ngân sách của chúng dưới mọi hình thức, vì:

  • Chúng tôi không cần lo lắng về hoạt động phân phối vì đối tượng đã bị tạm dừng
  • Không có lý do gì để một nhóm quảng cáo không có ngân sách

Tức là nếu bạn bật lại nhóm quảng cáo sau đó, nhóm quảng cáo này sẽ giữ nguyên ngân sách như trước. Bạn có thể thấy điều này khi tương tác với đối tượng đã tạm dừng và tìm nạp dữ liệu ngân sách của đối tượng đó.

Đối với loại NO_PAUSE_PROPORTIONAL, chúng tôi sẽ không tạm dừng các đối tượng trùng khớp. Chúng tôi sẽ xác định lượng ngân sách cần điều chỉnh bằng cách xem xét tất cả đối tượng (đối tượng quyên góp và đối tượng nhận) cùng nhau và xếp hạng hiệu quả của đối tượng. Nhờ vậy, chúng tôi có thể đảm bảo chỉ chuyển ngân sách từ đối tượng quyên góp sang đối tượng nhận. Cách thiết lập này ngăn chặn việc cân đối lại dẫn đến tình huống nhóm quảng cáo hoạt động hiệu quả quyên góp cho nhóm quảng cáo hoạt động kém hiệu quả chỉ vì nhóm đó có nhiều ngân sách. Vui lòng xem ví dụ bên dưới để biết thêm thông tin.

Đối với loại MATCHED_ONLY_PROPORTIONAL, chúng tôi chỉ xem xét các đối tượng trùng khớp. Một lần nữa, chúng tôi sẽ không tạm dừng những đối tượng này, mà sẽ xếp hạng đối tượng và phân bổ lại ngân sách dựa trên hiệu quả của đối tượng so với nhau. Tức là chúng tôi sẽ lấy tổng ngân sách từ tất cả đối tượng quyên góp và chia sẻ tổng ngân sách đó theo tỷ lệ với cùng một danh sách đối tượng quyên góp. Vui lòng xem ví dụ bên dưới để biết thêm thông tin.

Đối với loại kết thúc bằng PROPORTIONAL, chúng tôi sẽ phân bổ nhiều ngân sách hơn cho các nhóm quảng cáo hoạt động hiệu quả hơn dựa trên target_field đã xác định. Ví dụ: nếu số liệu là reach và tôi có 2 nhóm quảng cáo nhận với reach là 10 và 20, chúng tôi sẽ phân bổ 33,3% và 66.6% của tổng ngân sách tương ứng cho những nhóm quảng cáo này. Nếu loại là EVEN, mỗi nhóm sẽ nhận được 50%.

Cờ is_inverse

Cờ is_inverse rất hữu ích cho các số liệu như cost_per_mobile_app_install, trong đó số liệu thấp hơn có nghĩa là nhóm quảng cáo có hiệu quả cao hơn. Tức là các nhóm quảng cáo có giá trị đó thấp hơn sẽ nhận được phần phân bổ ngân sách cao hơn. Trường hợp này được nhấn mạnh lại ở ví dụ bên dưới.

Ví dụ

Sau đây là ví dụ về quy tắc cân đối lại:

  • Tạm dừng tất cả nhóm quảng cáo hoạt động kém hiệu quả trong tài khoản quảng cáo
  • Chuyển ngân sách của các nhóm này cho những nhóm còn lại

Chúng tôi định nghĩa hoạt động kém hiệu quả là có cost_per_mobile_app_install cao một cách ổn định. Chúng tôi phân bổ ngân sách theo tỷ lệ từ tất cả nhóm quảng cáo hoạt động kém hiệu quả cho 10 nhóm quảng cáo hoạt động hiệu quả nhất trong tài khoản quảng cáo. Quy tắc này chạy vào lúc 8h mỗi ngày, dựa trên dữ liệu trọn đời.

curl \
-F 'name=Test Rebalance Rule' \
-F 'schedule_spec={
     "schedule_type": "CUSTOM",
     "schedule": [
       {
          "start_minute": 480
       }
     ]
   }' \
-F 'evaluation_spec={
     "evaluation_type": "SCHEDULE",
     "filters": [
       {
         "field": "entity_type",
         "value": "ADSET",
         "operator": "EQUAL"
       },
       {
         "field": "time_preset",
         "value": "LIFETIME",
         "operator": "EQUAL"
       },
       {
         "field": "mobile_app_install",
         "value": 100,
         "operator": "GREATER_THAN"
       },
       {
         "field": "cost_per_mobile_app_install",
         "value": 3.0,
         "operator": "GREATER_THAN"
       }
     ]
   }' \
-F 'execution_spec={
     "execution_type": "REBALANCE_BUDGET",
     "execution_options": [
       {
         "field": "rebalance_spec",
         "value": {
           "type": "INVERSE_PROPORTIONAL",
           "target_field": "cost_per_mobile_app_install",
           "target_count": 10,
           "is_cross_campaign": true
         },
         "operator": "EQUAL"
       },
     ]
   }' \
-F "access_token=<ACCESS_TOKEN>" \
https://graph.facebook.com/<VERSION>/<AD_ACCOUNT_ID>/adrules_library

Quy tắc như sau:

  • Tạm dừng và cân đối lại ngân sách một cách đồng đều mỗi ngày cho tất cả nhóm quảng cáo đã tiếp cận được tỷ lệ phần trăm lớn quy mô đối tượng
  • Nhưng không cho phép chuyển ngân sách giữa các chiến dịch quảng cáo
curl \
-F 'name=Test Rebalance Rule' \
-F 'schedule_spec={
     "schedule_type": "DAILY"
   }' \
-F 'evaluation_spec={
     "evaluation_type": "SCHEDULE",
     "filters": [
       {
         "field": "entity_type",
         "value": "ADSET",
         "operator": "EQUAL"
       },
       {
         "field": "time_preset",
         "value": "LIFETIME",
         "operator": "EQUAL"
       },
       {
         "field": "impressions",
         "value": 8000,
         "operator": "GREATER_THAN"
       },
       {
         "field": "audience_reached_percentage",
         "value": 70,
         "operator": "GREATER_THAN"
       }
     ]
   }' \
-F 'execution_spec={
     "execution_type": "REBALANCE_BUDGET",
     "execution_options": [
       {
         "field": "rebalance_spec",
         "value": {
           "type": "EVEN"
         },
         "operator": "EQUAL"
       },
     ]
   }' \
-F "access_token=<ACCESS_TOKEN>" \
https://graph.facebook.com/<VERSION>/<AD_ACCOUNT_ID>/adrules_library

Sau đây là ví dụ tận dụng loại NO_PAUSE_PROPORTIONAL. Trong trường hợp này, ngân sách được phân bổ lại cho các nhóm quảng cáo trong chiến dịch quảng cáo từ những nhóm có lượng lượt xem video thấp. Tuy nhiên, các nhóm quảng cáo đó không bị tạm dừng mà vẫn nhận được một lượng ngân sách tương ứng.

Sau đây là ví dụ dạng số về điều sẽ xảy ra:

  • Giả sử bạn có các nhóm quảng cáo 1-5 với video_view1-5, mỗi nhóm có ngân sách hàng ngày là 3000 và quy tắc ở bên dưới.
  • Đầu tiên, chúng tôi lấy ngân sách là 6000 từ các nhóm quảng cáo 12, đồng thời xác định cách phân bổ ngân sách đó theo tỷ lệ. Trong trường hợp này, mỗi nhóm quảng cáo có tỷ lệ từ 1/15 lên đến 5/15.
  • Theo đó, các nhóm quảng cáo sẽ có giá trị lần lượt là 400, 800, 4200, 46005000. Nhờ vậy, đối tượng nhận (nhóm quảng cáo 1, 23) luôn tăng ngân sách.
curl \
-F 'name=Test Rebalance Rule' \
-F 'schedule_spec={
     "schedule_type": "DAILY"
   }' \
-F 'evaluation_spec={
     "evaluation_type": "SCHEDULE",
     "filters": [
       {
         "field": "entity_type",
         "value": "ADSET",
         "operator": "EQUAL"
       },
       {
         "field": "time_preset",
         "value": "LIFETIME",
         "operator": "EQUAL"
       },
       {
         "field": "video_view",
         "value": 3,
         "operator": "LESS_THAN"
       },
     ]
   }' \
-F 'execution_spec={
     "execution_type": "REBALANCE_BUDGET",
     "execution_options": [
       {
         "field": "rebalance_spec",
         "value": {
           "type": "NO_PAUSE_PROPORTIONAL",
           "target_field": "video_view"
         },
         "operator": "EQUAL"
       },
     ]
   }' \
-F "access_token=<ACCESS_TOKEN>" \
https://graph.facebook.com/<VERSION>/<AD_ACCOUNT_ID>/adrules_library

Cuối cùng, sau đây là ví dụ tận dụng MATCHED_ONLY_PROPORTIONAL. Trong trường hợp này, bạn không cần lo lắng về các đối tượng không trùng khớp. Bạn cần tập trung vào những nhóm quảng cáo thỏa mãn bộ lọc của quy tắc. Bạn có thể sử dụng chính ví dụ ở trên, nhưng bây giờ không cần xác định 2 danh sách dựa trên mức độ hoạt động kém hiệu quả của các nhóm quảng cáo.

Với chính ví dụ dạng số ở trên, chúng tôi sẽ sử dụng toàn bộ ngân sách (15000) và phân bổ theo tỷ lệ. Kết quả là các nhóm quảng cáo 1-5 sẽ có ngân sách 1000-5000.

Nhược điểm chính của type này là không có sự đảm bảo rằng nhóm quảng cáo hoạt động hiệu quả hơn sẽ không bị mất ngân sách, đặc biệt trong trường hợp giá trị ngân sách không cân đối. Mọi thứ khác đều giống nhau. Nếu nhóm quảng cáo 5 bắt đầu với ngân sách là 18000, ngân sách của nhóm này sẽ bị mất 8000.

curl \
-F 'name=Test Rebalance Rule' \
-F 'schedule_spec={
     "schedule_type": "DAILY"
   }' \
-F 'evaluation_spec={
     "evaluation_type": "SCHEDULE",
     "filters": [
       {
         "field": "entity_type",
         "value": "ADSET",
         "operator": "EQUAL"
       },
       {
         "field": "time_preset",
         "value": "LIFETIME",
         "operator": "EQUAL"
       },
     ]
   }' \
-F 'execution_spec={
     "execution_type": "REBALANCE_BUDGET",
     "execution_options": [
       {
         "field": "rebalance_spec",
         "value": {
           "type": "MATCHED_ONLY_PROPORTIONAL",
           "target_field": "video_view"
         },
         "operator": "EQUAL"
       },
     ]
   }' \
-F "access_token=<ACCESS_TOKEN>" \
https://graph.facebook.com/<VERSION>/<AD_ACCOUNT_ID>/adrules_library