กฎการปรับสมดุลงบประมาณโฆษณา

หากต้องการสร้างกฎการปรับสมดุลงบประมาณตาม ROI คุณก็ต้องเข้าใจองค์ประกอบแต่ละอย่างเสียก่อน ROI ย่อมาจาก Return On Investment (ผลตอบแทนการลงทุน)

ในหน้านี้ คุณจะได้รับข้อมูลเกี่ยวกับองค์ประกอบแต่ละอย่างในกฎการปรับสมดุล และได้เรียนรู้ว่าแต่ละพารามิเตอร์ส่งผลต่อการทำงานของกฎอย่างไรบ้าง

ข้อมูลจำเพาะของกำหนดเวลา

สำหรับกฎการปรับสมดุลนี้ เราขอแนะนำให้ใช้กำหนดเวลาแบบ DAILY หรือ CUSTOM เนื่องจากไม่ควรมีการดำเนินการเป็นประจำ

ข้อมูลจำเพาะของการประเมิน

เกณฑ์การประเมินจะทำงานสอดรับกับ rebalance_spec เพื่อกำหนดรายการอ็อบเจ็กต์ที่จะได้รับผลจากการปรับสมดุล

สำหรับการปรับสมดุลทุกประเภท รายการอ็อบเจ็กต์ที่ผ่านการประเมินจะเป็นแหล่งที่มาของงบประมาณ รายชื่อผู้รับจะแตกต่างกันไปตามประเภทการปรับสมดุลที่ระบุไว้ แต่ส่วนใหญ่แล้ว (ตัวอย่างเช่น EVEN) ผู้รับจะเป็นอ็อบเจ็กต์ที่ไม่ผ่านการประเมิน

ตัวอย่างเช่น หากเกณฑ์ของกฎประเภท EVEN คือ cost_per_mobile_app_install มากกว่า 2.50 แสดงว่า ชุดโฆษณาทุกชุดที่มีต้นทุนต่อการติดตั้งแอพบนมือถือมากกว่า 2.50 จะถูกหยุดแสดงชั่วคราว และงบประมาณจะถูกนำไปให้กับชุดโฆษณาทุกชุดที่มีต้นทุนต่อการติดตั้งแอพบนมือถือน้อยกว่าหรือเท่ากับ 2.50

ข้อมูลจำเพาะของการดำเนินการ

rebalance_spec จะเป็นตัวกำหนดที่แน่ชัดว่าผู้รับจะได้งบประมาณอย่างไร พารามิเตอร์มีอยู่ 5 รายการดังนี้

ช่อง คำอธิบาย

type

จำเป็นต้องระบุ

กำหนดวิธีการจัดสรรงบประมาณ หากค่าไม่ใช่ EVEN ก็จะต้องระบุ target_field ด้วยเพื่อทำการจัดอันดับ


ค่าที่รองรับ:EVEN, PROPORTIONAL, NO_PAUSE_PROPORTIONAL, MATCHED_ONLY_PROPORTIONAL

target_field

ระบุหรือไม่ก็ได้

ระบุเกณฑ์ชี้วัดข้อมูลเชิงลึกที่ใช้จัดอันดับผู้รับ จำเป็นต้องระบุพารามิเตอร์นี้หาก type ไม่ใช่ EVEN หรือหากมี target_count อยู่ในข้อมูลจำเพาะด้วย


ค่าที่รองรับ: ช่องข้อมูลเชิงลึก เช่น cpa หรือ impressions

target_count

ระบุหรือไม่ก็ได้

ระบุจำนวน (K) ของผู้รับ การใช้ type ร่วมกับ target_field จะเป็นการกำหนดผู้รับ K อันดับต้นๆ ที่จะได้รับงบประมาณ พารามิเตอร์นี้จะมีประโยชน์เมื่อคุณไม่ต้องการนำงบประมาณไปให้กับผู้รับทุกรายที่เป็นไปได้ หาก K มากกว่าจำนวนผู้รับ กฎก็จะปรับสมดุลงบประมาณให้กับผู้รับทุกราย หากระบุพารามิเตอร์นี้ ก็จำเป็นต้องระบุ target_field


ค่าที่รองรับ: จำนวนเต็มที่เป็นบวก เช่น 5

is_cross_campaign

ระบุหรือไม่ก็ได้

ระบุว่าคุณอนุญาตให้จัดสรรงบประมาณให้กับแคมเปญโฆษณาทุกแคมเปญหรือไม่ หากไม่ได้ระบุพารามิเตอร์นี้หรือมีค่าเป็น false เราจะโยกย้ายงบประมาณภายในแคมเปญโฆษณาเท่านั้น หากมีค่าเป็น true เราจะประเมินและดำเนินการกับชุดโฆษณาทุกชุดร่วมกัน ซึ่งอาจส่งผลให้เกิดการเปลี่ยนแปลงงบประมาณระหว่างแคมเปญโฆษณา


ค่าที่รองรับ: ค่าบูลีน เช่น true หรือ false

is_inverse

ระบุหรือไม่ก็ได้

ระบุว่าผู้รับควรได้รับการจัดอันดับจากสูงไปหาต่ำโดยผกผันกับค่า target_field หรือไม่ พารามิเตอร์นี้เป็นประโยชน์ในกรณีที่คุณต้องการจัดให้ค่าตามจริงที่ต่ำที่สุดอยู่ในอันดับสูงสุด


ค่าที่รองรับ: ค่าบูลีน เช่น true หรือ false

รายละเอียดปลีกย่อยแบบเฉพาะเจาะจง

การดำเนินการนี้มีรายละเอียดปลีกย่อยแบบเฉพาะเจาะจงบางประการดังนี้

งบประมาณต่อวันและตลอดอายุการใช้งาน

หากชุดโฆษณาที่ได้รับการปรับสมดุลมีทั้งงบประมาณต่อวันและตลอดอายุการใช้งาน เราจะแยกชุดโฆษณาออกเป็นสองบักเก็ต ซึ่งหมายความว่า ชุดโฆษณาจะโยกย้ายงบประมาณต่อวันไปยังชุดโฆษณาอื่นที่มีงบประมาณต่อวัน ส่วนงบประมาณตลอดอายุการใช้งานก็จะโยกย้ายไปยังชุดโฆษณาที่มีงบประมาณตลอดอายุการใช้งานเช่นกัน

ในกรณีของชุดโฆษณาที่มีงบประมาณตลอดอายุการใช้งาน เราจะใช้งบประมาณคงเหลือ (ส่วนต่างระหว่างงบประมาณตลอดอายุการใช้งานกับยอดใช้จ่ายตลอดอายุการใช้งาน) ในการหาจำนวนเงินงบประมาณที่สามารถจัดสรรได้ การทำเช่นนี้ช่วยให้มั่นใจได้ว่างบประมาณทั้งหมดในระดับแคมเปญโฆษณาจะไม่มีการเปลี่ยนแปลง

ประเภท rebalance_spec

สำหรับประเภท EVEN และ PROPORTIONAL เราจะหยุดอ็อบเจ็กต์ที่ตรงกัน (ผู้ส่งต่องบประมาณให้กับผู้รับ) ไว้ชั่วคราว เมื่อเราหยุดอ็อบเจ็กต์เหล่านี้ไว้ชั่วคราว เราจะไม่ปรับงบประมาณแต่อย่างใด เนื่องจาก

  • เราไม่ต้องกังวลเรื่องการแสดงโฆษณาเนื่องจากถูกหยุดชั่วคราวไว้แล้ว
  • การมีชุดโฆษณาที่ไม่มีงบประมาณเป็นเรื่องที่ไม่สมเหตุสมผล

ซึ่งหมายความว่า หากคุณเปิดใช้งานชุดโฆษณาอีกครั้งหลังจากนั้น ชุดโฆษณาดังกล่าวจะมีงบประมาณเท่ากับที่มีอยู่ก่อนหน้านั้น คุณสามารถดูได้เมื่อโต้ตอบกับอ็อบเจ็กต์ที่ถูกหยุดชั่วคราวและดึงข้อมูลงบประมาณของอ็อบเจ็กต์นั้นๆ

สำหรับประเภท NO_PAUSE_PROPORTIONAL เราจะไม่หยุดอ็อบเจ็กต์ที่ตรงกันไว้ชั่วคราว เรากำหนดจำนวนงบประมาณที่จะปรับโดยดูอ็อบเจ็กต์ทั้งหมด (ผู้ส่งต่อและผู้รับ) ร่วมกันและจัดอันดับประสิทธิภาพการทำงาน การทำเช่นนี้ช่วยรับรองว่าจะมีการโยกย้ายงบประมาณจากผู้ส่งต่อไปยังผู้รับเท่านั้น การตั้งค่าเช่นนี้จะช่วยป้องกันไม่ให้ระบบโยกย้ายงบประมาณออกจากชุดโฆษณาที่มีประสิทธิภาพดีแทนชุดโฆษณาที่มีประสิทธิภาพการทำงานต่ำ เนื่องจากพิจารณาเพียงจำนวนงบประมาณที่มีอยู่ โปรดดูข้อมูลเพิ่มเติมที่ตัวอย่างด้านล่าง

สำหรับประเภท MATCHED_ONLY_PROPORTIONAL เราจะดูอ็อบเจ็กต์ที่ตรงกันเพียงอย่างเดียว และเราจะไม่หยุดอ็อบเจ็กต์ไว้ชั่วคราวเช่นกัน แต่เราจะนำมาจัดอันดับและแจกจ่ายงบประมาณให้ใหม่ โดยพิจารณาจากการนำประสิทธิภาพการทำงานมาเทียบกัน ซึ่งหมายความว่า เราจะนำงบประมาณจากผู้ส่งต่องบประมาณทั้งหมดมาแบ่งให้กับผู้ส่งต่องบประมาณชุดเดียวกันนี้ตามสัดส่วน โปรดดูข้อมูลเพิ่มเติมที่ตัวอย่างด้านล่าง

สำหรับประเภทที่ลงท้ายด้วย PROPORTIONAL เราจะแจกจ่ายงบประมาณเพิ่มเติมให้กับชุดโฆษณาที่มีประสิทธิภาพการทำงานดีกว่า โดยพิจารณาจาก target_field ที่ระบุไว้ ตัวอย่างเช่น หากเกณฑ์ชี้วัดเป็น reach และฉันมีชุดโฆษณาที่เป็นผู้รับอยู่ 2 ชุด ซึ่งมี reach อยู่ที่ 10 และ 20 เราจะจัดสรรงบประมาณที่มีให้กับชุดโฆษณาเหล่านี้ 33.3% และ 66.6% ตามลำดับ หากประเภทเป็น EVEN ชุดโฆษณาก็จะได้งบประมาณชุดละ 50%

แฟล็ก is_inverse

แฟล็ก is_inverse มีประโยชน์สำหรับเกณฑ์ชี้วัดต่างๆ เช่น cost_per_mobile_app_install ซึ่งเกณฑ์ชี้วัดยิ่งมีตัวเลขน้อย ก็แสดงว่าชุดโฆษณามีประสิทธิภาพการทำงานสูงยิ่งขึ้น เราได้เน้นย้ำให้เห็นอีกครั้งในตัวอย่างด้านล่าง และแสดงให้เห็นว่าชุดโฆษณาที่มีค่าดังกล่าวน้อยกว่าได้รับการจัดสรรงบประมาณในสัดส่วนที่สูงกว่า

ตัวอย่าง

นี่คือตัวอย่างของกฎการปรับสมดุลที่มีลักษณะดังนี้

  • หยุดแสดงชุดโฆษณาทั้งหมดที่มีประสิทธิภาพการทำงานต่ำในบัญชีโฆษณาไว้ชั่วคราว
  • โยกย้ายงบประมาณไปให้กับชุดโฆษณาที่เหลือ

เรากำหนดให้ประสิทธิภาพการทำงานต่ำคือการมี cost_per_mobile_app_install ในระดับสูงอย่างต่อเนื่อง เราจะจัดสรรงบประมาณจากชุดโฆษณาทั้งหมดที่มีประสิทธิภาพการทำงานต่ำให้กับชุดโฆษณาที่ดีที่สุด 10 ชุดในบัญชีโฆษณาตามสัดส่วน กฎนี้จะทำงานในเวลา 8:00 น. ของทุกวัน โดยดูจากข้อมูลตลอดอายุการใช้งาน

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

ในที่นี้ กฎนี้จะมีลักษณะดังนี้

  • หยุดแสดงชุดโฆษณาทั้งหมดไว้ชั่วคราว และแจกจ่ายงบประมาณให้กับชุดโฆษณาทุกชุดเท่าๆ กันในทุกๆ วันที่มีเปอร์เซ็นต์ขนาดกลุ่มเป้าหมายในระดับสูง
  • แต่ไม่อนุญาตให้งบประมาณโยกย้ายไปยังทุกๆ แคมเปญโฆษณา
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

นี่คือตัวอย่างที่ใช้ประเภท NO_PAUSE_PROPORTIONAL ในกรณีนี้ ระบบจะจัดสรรงบประมาณใหม่จากชุดโฆษณาต่างๆ ในแคมเปญโฆษณาจากชุดโฆษณาที่มีจำนวนการรับชมวิดีโอน้อย แต่ในกรณีนี้ ชุดโฆษณาจะไม่ถูกหยุดแสดงชั่วคราว และจะได้รับจำนวนเงินงบประมาณตามสัดส่วน

นี่คือตัวอย่างสิ่งที่จะเกิดขึ้น โดยแสดงให้เห็นเป็นตัวเลข

  • สมมติว่าคุณมีชุดโฆษณา 1-5 โดยมี video_view อยู่ที่ 1-5 และชุดโฆษณาแต่ละชุดมีงบประมาณต่อวันอยู่ที่ 3000 และกฎด้านล่าง
  • ก่อนอื่น เราจะนำงบประมาณจำนวน 6000 จากชุดโฆษณา 1 และ 2 มาหาวิธีแจกจ่ายให้ได้สัดส่วน ในกรณีนี้ ชุดโฆษณาแต่ละชุดจะมีอัตราส่วนที่ 1/15 ถึง 5/15
  • ด้วยเหตุนี้ ชุดโฆษณาจะได้จำนวนงบประมาณอยู่ที่ 400, 800, 4200, 4600 และ 5000 ตามลำดับ ซึ่งเป็นการรับรองว่าผู้รับ (ชุดโฆษณา 1, 2 และ 3) จะมีงบประมาณเพิ่มขึ้นอยู่เสมอ
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

ในขั้นสุดท้าย นี่คือตัวอย่างที่ใช้ MATCHED_ONLY_PROPORTIONAL ในกรณีนี้ เราไม่จำเป็นต้องกังวลเรื่องอ็อบเจ็กต์ที่ไม่ตรงกัน จุดมุ่งเน้นจะอยู่ที่ชุดโฆษณาที่เป็นไปตามตัวกรองของกฎ คุณสามารถใช้ตัวอย่างเดิมข้างต้นได้ เว้นแต่ว่าในตอนนี้ คุณไม่จำเป็นต้องระบุ 2 รายการตามวิธีการกำหนดชุดโฆษณาที่มีประสิทธิภาพการทำงานต่ำ

เราจะใช้ตัวอย่างที่เป็นตัวเลขเดิมข้างต้น เราจะใช้งบประมาณทั้งหมดที่มีอยู่ (15000) และแจกจ่ายแบบเป็นสัดส่วน ด้วยเหตุนี้ ชุดโฆษณา 1-5 จะได้รับงบประมาณที่ 1000-5000

type นี้มีข้อเสียหลักๆ คือ ไม่มีการรับรองว่าชุดโฆษณาที่มีประสิทธิภาพการทำงานดีกว่าจะไม่เสียงบประมาณไป โดยเฉพาะในกรณีที่งบประมาณมีมูลค่าไม่สมดุลกัน ส่วนที่เหลือจะเหมือนกัน หากชุดโฆษณา 5 มีงบประมาณเริ่มต้นที่ 18000 เมื่อเสร็จสิ้นขั้นตอนก็จะเสียงบประมาณไป 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