Show Menu
ARGOMENTI×

Test A/B

Se disponete di diversi contenuti per la consegna di un'e-mail e desiderate scoprire quale versione avrà il maggiore impatto sulla popolazione di destinazione, potete inviare le diverse versioni ad alcuni dei vostri destinatari, quindi selezionare quello con il tasso di successo più alto e inviarlo agli altri destinatari.
In questo caso di utilizzo, confronteremo due contenuti di distribuzione delle e-mail tramite un flusso di lavoro di targeting. Il messaggio e il testo sono identici in entrambe le consegne: cambia solo il layout.
La popolazione interessata è divisa in tre parti: due gruppi di test e la popolazione rimanente. A ogni gruppo di test viene inviata una versione diversa della consegna. Dopo la consegna, viene configurato un periodo di attesa di 5 giorni prima di raccogliere i risultati delle migliori tariffe aperte. Il contenuto della distribuzione con il punteggio più alto viene quindi recuperato da uno script e inviato alla popolazione che non è stata utilizzata come gruppo di test.
Si prega di notare che i criteri che decideranno quale consegna è migliore possono essere modificati per soddisfare le vostre esigenze. Può trattarsi del tasso di apertura, del tasso di click-through, del tasso di sottoscrizione, della reattività, ecc.
Inoltre, il test dettagliato in questo caso d'uso riguarda solo due consegne, ma potete testare tutte le versioni necessarie. È sufficiente aggiungere attività al flusso di lavoro.
Per creare il test A/B, eseguite i seguenti passaggi:

Step 1: Creating a targeting workflow

È necessario creare il flusso di lavoro nella Targeting and Workflows scheda di una campagna. È composta da un' Query attività, un' Split attività collegata a due Email delivery attività, un' Wait attività, un' JavaScript code attività e un' Delivery attività.
  1. Se non lo avete ancora fatto, create una campagna (per ulteriori informazioni, consultate questa sezione ).
  2. Vai alla scheda Targeting and Workflows .
  3. Modificate l’etichetta del flusso di lavoro esistente o fate clic Add per crearne uno nuovo (per ulteriori informazioni, consultate questa sezione ).
  4. Utilizzate il mouse per trascinare e rilasciare attività nel diagramma del flusso di lavoro, incluse Query ( Target scheda), una Split ( Target scheda), due Email deliveries ( Deliveries scheda), un' Wait attività ( Flow Control scheda), un'attività ( JavaScript code Actions Delivery Actions scheda) e un'attività (scheda) ).

Passaggio 2: Configurazione dei campioni di popolazione

Configurazione dell'attività Query

  • Double-click the Query activity.
  • Fai clic sul Edit query collegamento e seleziona i destinatari a cui vuoi indirizzare.
  • Collegate l' Query attività all' Split attività.

Configurazione dell'attività Split

Questa attività consente di creare diverse popolazioni: quella che riceve la consegna A, quella che riceve la consegna B, e la popolazione rimanente. Utilizzando la selezione casuale è possibile eseguire il targeting di una parte della popolazione di ciascuna consegna.
  1. Creazione popolazione A:
    • Double-click the Split activity.
    • Nella scheda esistente, modificare l'etichetta nella popolazione A.
    • Selezionate l’ Limit the selected records opzione.
    • Fate clic sul Edit collegamento, selezionate Activate random sampling , quindi fate clic su Next .
    • Imposta la soglia su 10%, quindi fai clic su Finish .
  2. Creazione popolazione B:
    • Fate clic Add per creare una nuova scheda per la popolazione B.
    • Limitare la popolazione al 10% come in precedenza.
  3. Creazione della popolazione rimanente:
    • Vai alla scheda General .
    • Seleziona Generate complement .
    • Modificate l'etichetta per specificare che la popolazione non include né A né B, quindi fate clic OK per chiudere l'attività.

Passaggio 3: Creazione di due modelli di consegna

Ora vogliamo creare due modelli di consegna. A ogni modello verrà fatto riferimento in un' Email delivery attività collegata all' Split attività. Per ulteriori informazioni, consulta questa sezione .
  1. Go to the Resources > Delivery template folder.
  2. Duplica il modello di Email consegna.
  3. Create il contenuto da utilizzare per la consegna A.
  4. Ripetete questa procedura per creare un modello per la consegna B.

Passaggio 4: Configurazione delle consegne nel flusso di lavoro

Il passo successivo consiste nel configurare le consegne. Sono destinati alle tre popolazioni create nella fase precedente: Passaggio 2: Configurazione dei campioni di popolazione. Le prime due consegne consentono di inviare contenuti diversi alla popolazione A e B. La terza consegna è destinata alla popolazione che non ha ricevuto né A né B. Il contenuto verrà calcolato da uno script e sarà identico a A o B, a seconda di quale dei due avrà ottenuto il punteggio più alto. Dobbiamo configurare un periodo di attesa per la terza consegna, per conoscere il risultato delle consegne A e B. Per questo motivo la terza consegna include un' Wait attività.
  1. Andate all' Split attività e collegate la transizione per la popolazione A a una delle consegne di e-mail già presenti nel flusso di lavoro.
  2. Fate doppio clic sulla consegna per aprirla.
  3. Utilizzando l'elenco a discesa, selezionate il modello per la consegna A.
  4. Fate clic Continue per visualizzare la consegna, quindi salvatela.
  5. Collegate la transizione dell' Split attività destinata alla popolazione B alla seconda consegna tramite e-mail.
  6. Aprite la consegna e selezionate il modello nella consegna B, quindi salvate la consegna.
  7. Collegare la transizione destinata alla popolazione rimanente all' Wait attività.
  8. Aprite l' Wait attività e configurate un periodo di attesa di 5 giorni.
  9. Collegate l' Wait attività all' JavaScript code attività.

Passaggio 5: Creazione dello script

La scelta del contenuto di distribuzione destinato alla popolazione rimanente viene calcolata da uno script. Questo script recupera le informazioni relative alla distribuzione con la frequenza più elevata di aperture e copia il contenuto nella distribuzione finale.

Esempio di script

Lo script seguente può essere utilizzato come nel flusso di lavoro di targeting. For more on this, refer to Implementation .
 // query the database to find the winner (best open rate)
   var winner = xtk.queryDef.create(
     <queryDef schema="nms:delivery" operation="get">
       <select>
         <node expr="@id"/>
         <node expr="@label"/>
         <node expr="[@operation-id]"/>
         <node expr="[@workflow-id]"/>
       </select>
       <where>
         <condition expr={"@FCP=0 and [@workflow-id]= " + instance.id}/>
       </where>
       <orderBy>
         <node expr="[indicators/@estimatedRecipientOpenRatio]" sortDesc="true"/>
       </orderBy>
     </queryDef>).ExecuteQuery()
   
   // create a new delivery object and initialize it by doing a copy of
   // the winner delivery
   var delivery = nms.delivery.create()
   delivery.Duplicate("nms:delivery|" + winner.@id)

   // append 'final' to the delivery label
   delivery.label = winner.@label + " final"

   // link the delivery to the operation to make sure it will be displayed in
   // the campaign dashboard. This attribute needs to be set manually here since 
   // the Duplicate() method has reset it to its default value => 0
   delivery.operation_id = winner.@["operation-id"]
   delivery.workflow_id = winner.@["workflow-id"]

   // adjust some delivery parameters to make it compatible with the 
   // "Prepare and start" option selected in the Delivery tab of this activity
   delivery.scheduling.validationMode = "manual"
   delivery.scheduling.delayed = 0
 
   // save the delivery in database
   delivery.save()
 
   // store the new delivery Id in event variables
   vars.deliveryId = delivery.id

Per una spiegazione dettagliata dello script, fare riferimento a Dettagli dello script .

Implementazione

  1. Aprite l' JavaScript code attività.
  2. Copiare lo script offerto in Esempio di script nella JavaScript code finestra.
  3. Nel Label campo, immettere il nome dello script, ovvero
    <%= vars.deliveryId %>
    
    
  4. Chiudete l' JavaScript code attività.
  5. Salva il flusso di lavoro.

Dettagli dello script

In questa sezione vengono descritte le varie parti dello script e la relativa modalità operativa.
  • La prima parte dello script è una query. Il comando queryDef consente di recuperare dalla tabella NmsDelivery le consegne create eseguendo il flusso di lavoro di targeting e di ordinarle in base al tasso stimato di apertura, quindi le informazioni dalla consegna con il tasso più alto di aperture vengono recuperate.
    // query the database to find the winner (best open rate)
       var winner = xtk.queryDef.create(
         <queryDef schema="nms:delivery" operation="get">
           <select>
             <node expr="@id"/>
             <node expr="@label"/>
             <node expr="[@operation-id]"/>
           </select>
           <where>
             <condition expr={"@FCP=0 and [@workflow-id]= " + instance.id}/>
           </where>
           <orderBy>
             <node expr="[indicators/@estimatedRecipientOpenRatio]" sortDesc="true"/>
           </orderBy>
         </queryDef>).ExecuteQuery()
    
    
  • La distribuzione con la frequenza più elevata di aperture viene duplicata.
     // create a new delivery object and initialize it by doing a copy of
     // the winner delivery
    var delivery = nms.delivery.create()
    delivery.Duplicate("nms:delivery|" + winner.@id)
    
    
  • L'etichetta della consegna duplicata viene modificata e vi viene aggiunta la parola finale .
    // append 'final' to the delivery label
    delivery.label = winner.@label + " final"
    
    
  • La distribuzione viene copiata nel dashboard della campagna.
    // link the delivery to the operation to make sure it will be displayed in
    // the campaign dashboard. This attribute needs to be set manually here since 
    // the Duplicate() method has reset it to its default value => 0
    delivery.operation_id = winner.@["operation-id"]
    delivery.workflow_id = winner.@["workflow-id"]
    
    
    // adjust some delivery parameters to make it compatible with the 
    // "Prepare and start" option selected in the Delivery tab of this activity
    delivery.scheduling.validationMode = "manual"
    delivery.scheduling.delayed = 0
    
    
  • La consegna viene salvata nel database.
    // save the delivery in database
    delivery.save()
    
    
  • L’identificatore univoco della consegna duplicata viene memorizzato nella variabile del flusso di lavoro.
    // store the new delivery Id in event variables
    vars.deliveryId = delivery.id
    
    

Altri criteri di selezione

L'esempio precedente consente di selezionare il contenuto di una consegna in base al tasso di apertura delle e-mail. Puoi adattarlo in base ad altri indicatori specifici per la consegna:
  • Velocità effettiva clic ottimale: [indicators/@recipientClickRatio] ,
  • Velocità di reattività più elevata (apertura e clic dell’e-mail nel messaggio): [indicators/@reactivity] ,
  • Tasso di reclamo più basso: [indicators/@refusedRatio] (utilizzate il valore false per l'attributo sortDesc),
  • Tasso di conversione più elevato: [indicators/@transactionRatio] ,
  • Numero di pagine visitate dopo la ricezione di un messaggio: [indicators/@totalWebPage] ,
  • Tasso di annullamento sottoscrizione inferiore: [indicators/@optOutRatio] ,
  • Importo transazione: [indicators/@amount] .

Passaggio 6: Definizione della consegna finale

Una volta creato lo script per selezionare il vincitore del test A/B, è possibile definire i parametri del recapito finale.
  1. Collegate l' JavaScript code attività all' Delivery attività rimanente.
  2. Aprite l' Delivery attività.
  3. Deselezionate l' Generate an outbound transition opzione per completare il flusso di lavoro con questa attività.
  4. Lasciate le altre opzioni ai valori predefiniti.
Preparando la consegna specificata nella transizione (definita tramite l' Javascript Code attività), potrai quindi approvarla e avviare l'invio, come descritto nel passaggio successivo.

Passaggio 7: Avvio del flusso di lavoro

  1. Fate clic Start sul flusso di lavoro.
  2. Approvare target e contenuti per le consegne A e B tramite il dashboard della campagna.
  3. Conferma la consegna.
  4. Attendete fino alla fine del periodo di 5 giorni per scoprire quale contenuto è stato calcolato dopo i risultati dell'apertura della consegna.
    In questo caso, è stato scelto il modello B.
  5. Una volta determinato il contenuto della terza distribuzione, approvate la destinazione e il contenuto.

Passaggio 8: Analisi del risultato

Una volta inviate le consegne di test, potete verificare a quali destinatari sono stati inviati e se sono stati aperti o meno.
  • Per scoprire quali destinatari sono stati assegnati, aprite un invio tramite il dashboard della campagna e fate clic sulla Delivery scheda.
  • Per verificare se la consegna è stata aperta, andate alla Tracking scheda.
  • Confronta con l'altra consegna.
Nel nostro esempio, la consegna B ha ottenuto il massimo tasso di apertura. Ciò significa che il contenuto B verrà utilizzato per la distribuzione finale.