ROAS: Regeln für Werbeanzeigen

Für ROAS-bezogene Metriken ist es wichtig, eine Kombination von Filtern zu verwenden, um genau anzugeben, wie die ROAS-Metrik berechnet werden soll. Wichtige Filter sind hier attribution_window, time_preset (Rückblick-Zeitraum) und hours_since_creation. ROAS steht für Return On Advertising Spending.

Wenn du beispielsweise den 7D Click ROAS für Käufe in einer mobilen App berechnen möchtest, aber nur ausgereifte Daten für 7 Tage benötigst:

  • Lege das attribution_window für 7D_CLICK fest.
  • Lege das time_preset für LAST_ND_14_8.

Dabei werden alle Werte für Käufe in mobilen Apps innerhalb von 7 Tagen nach dem Klick auf die Anzeige im Rückblickzeitraum berücksichtigt, mit Ausnahme der letzten 7 Tage, da diese unausgereifte Daten enthalten. Wenn der*die Nutzer*in gestern auf die Anzeige geklickt hat, beziehen wir diese*n Nutzer*in nicht in die ROAS-Berechnung ein, da für ihn noch 6 Tage mit potenziellen Käufe bevorstehen.

Unter Kaufwerten versteht man die Werte von Kauf-Events in mobilen Apps und Website-Conversion-Kauf-Events (FB-Pixel) für die jeweiligen ROAS-Metriken. In der API wären dies die Kaufwerte der Metriken app_custom_event.fb_mobile_purchase bzw. offsite_conversion.fb_pixel_purchase.

Wenn das Attributionsfenster sowohl Klick- als auch Ansichtszeiträume umfasst, ist der berechnete ROAS die Summe der Werte. Wenn zum Beispiel unser attribution_window1D_VIEW_7D_CLICK ist, nehmen wir den ROAS-Wert für 1D_VIEW und für 7D_CLICK und berechnen die Summe. Dies liegt daran, dass die beiden Attributionen disjunkt sind und korrekt und ohne Überlappung addiert werden können.

Eine optimale Nutzung dieser Metrik umfasst auch einen zeitbasierten Filter, um sicherzustellen, dass genügend Tage verstrichen sind, damit ausgereifte Daten vorliegen. Wenn der Anwendungsfall ausgereifte Daten erfordert, empfehlen wir einen Filter wie z. B. hours_since_creation, um sicherzustellen, dass die Anzeigengruppe lange genug läuft.

Hier ist eine Beispielregel:

  • Das Budget wird um 20 % erhöht, wenn der 7D Click-Website-Kauf-ROAS größer als 0.50 (50 %) ist.
  • Für 7 Tage ausgereifte Daten
  • Prüfung einmal pro Tag

Da diese Regeln sehr spezifisch sind, gelten sie normalerweise für eine bestimmte Liste von Anzeigengruppen, z. B. id = 123. Wir benötigen 8*24 für die Stunden seit der Erstellung, um mindestens einen ganzen Tag an ausgereiften Daten zu erhalten.

curl \
-F 'name=Test Website ROAS Rule' \
-F 'schedule_spec={
     "schedule_type": "DAILY"
   }' \
-F 'evaluation_spec={
     "evaluation_type": "SCHEDULE",
     "filters": [
       {
         "field": "id",
         "value": [123],
         "operator": "IN"
       },
       {
         "field": "time_preset",
         "value": "LAST_ND_14_8",
         "operator": "EQUAL"
       },
       {
         "field": "attribution_window",
         "value": "7D_CLICK",
         "operator": "EQUAL"
       },
       {
         "field": "hours_since_creation",
         "value": 192,
         "operator": "GREATER_THAN"
       },
       {
         "field": "website_purchase_roas",
         "value": 0.50,
         "operator": "GREATER_THAN"
       }
     ]
   }' \
-F 'execution_spec={
     "execution_type": "CHANGE_BUDGET",
     "execution_options": [
       {
         "field": "change_spec",
         "value": {
           "amount": 20,
           "unit": "PERCENTAGE"
         },
         "operator": "EQUAL"
       },
     ]
   }' \
-F "access_token=<ACCESS_TOKEN>" \
https://graph.facebook.com/<VERSION>/<AD_ACCOUNT_ID>/adrules_library

Hier ist eine Beispielregel:

  • Das Gebot wird täglich in Richtung eines angestrebten 1D View 1D Click-ROAS-Wert von 0,80 für Käufe in mobilen Apps skaliert.
  • Mit einem Toleranzfenster von 5 %, das durch einen Bereichsfilter auf den ROAS-Wert festgelegt wird.

Auch hier gilt: Um nur ausgereifte Daten zu erhalten, verwenden Zeitvoreinstellungen, die keine aktuellen Daten enthalten, wie z. B. LAST_7D und LAST_14D.

curl \
-F 'name=Test Mobile App ROAS Rule' \
-F 'schedule_spec={
     "schedule_type": "DAILY"
   }' \
-F 'evaluation_spec={
     "evaluation_type": "SCHEDULE",
     "filters": [
       {
         "field": "id",
         "value": [123],
         "operator": "IN"
       },
       {
         "field": "time_preset",
         "value": "LAST_7D",
         "operator": "EQUAL"
       },
       {
         "field": "attribution_window",
         "value": "1D_VIEW_1D_CLICK",
         "operator": "EQUAL"
       },
       {
         "field": "hours_since_creation",
         "value": 48,
         "operator": "GREATER_THAN"
       },
       {
         "field": "mobile_app_purchase_roas",
         "value": [0.76, 0.84],
         "operator": "NOT_IN_RANGE"
       }
     ]
   }' \
-F 'execution_spec={
     "execution_type": "CHANGE_BID",
     "execution_options": [
       {
         "field": "change_spec",
         "value": {
           "amount": 0.80,
           "target_field": "mobile_app_purchase_roas"
         },
         "operator": "EQUAL"
       },
     ]
   }' \
-F "access_token=<ACCESS_TOKEN>" \
https://graph.facebook.com/<VERSION>/<AD_ACCOUNT_ID>/adrules_library