08/23/21

Email A/B Test data in Sailthru Connect!

We are proud to announce an enhancement to our Sailthru Connect suite of data products: Email A/B Test data in Event Stream!

 

A Note about Forward Compatibility

Sailthru will continue to iterate on its Event Stream offering, in an additive manner (sometimes referred to as “forward compatibility”. New fields that appear in the file outputs will not necessarily match older schemas, and will generally be forward compatible.

As part of this and future feature releases, Sailthru advises that customer teams refer to a field by column name, and not by position. We recommend that customers avoid expecting or validating against a fixed number of fields, which would cause errors if additional columns are provided. Sailthru will look to give advance warning in the case of any changes, and will work to minimize breaking changes to the schema at any time (i.e. field name changes, field removals).

 

The Email A/B Test data

The relevant schema changes includes:

  • campaign (added columns)
  • lifecycle_optimizer_flow (added columns)
  • campaign_abtest (new table)

 

Table Name Campaign
Table Type  Lookup
Target Location s3://[bucket_name]/campaign/dt=[dt]/hr=[hr]/client_id=[id]/[filename].csv
Field Name Data Type Example Description
See existing Getstarted Documentation
abtest_id UUID 60c21795a1a5332aff168c2f The unique identifier for an A/B test, will be common across multiple campaigns.
abtest_segment string A The “leg” of the A/B test, can be the letters A, B, through E, or final.
abtest_percent int 50 A value between 0 and 100 percent that refers to the proportion of sends allocated to the segment.

 

Table Name Lifecycle Optimizer Flow
Table Type Lookup
Target Location s3://[bucket_name]/lifecycle_optimizer_flow/dt=[dt]/hr=[hr]/client_id=[id]/[filename].csv
Field Name Data Type Example Description
See existing Getstarted Documentation
client_id int 3386 Sailthru client identifier. Foreign key to the Client lookup table. If the client has multiple Sailthru accounts, this will be the child account which can be linked to the parent account through the lookup table.

 

Table Name Campaign ABTest
Table Type  Lookup
Target Location s3://[bucket_name]/campaign_abtest/dt=[dt]/hr=[hr]/client_id=[id]/[filename].csv
Field Name Data Type Example Description
client_id int 3386 Sailthru client identifier. Foreign key to the Client lookup table. If the client has multiple Sailthru accounts, this will be the child account which can be linked to the parent account through the lookup table.
abtest_id UUID 60c21795a1a5332aff168c2f The unique identifier for an A/B test, will be common across multiple campaign sends. Can be used to join to the Campaign lookup table.
abtest_type string split, final The type of A/B test to be run.
abtest_fields string “[from_name, subject]” The fields where changes are being tested in a given variation in the abtest. 
abtest_final_id int 18690717 The campaign id of the final segment that was eventually sent to users.
abtest_winner_metric string click The metric to determine which segment of the ab test should be sent to the final leg. Values are present only for autowinner types of AB tests.
abtest_winner_id int 18557303 The id of the campaign which was copied from, for final send. Only filled in for winner or autowinner types.

 

Some frequently asked questions

  • How does this data tie back into what I see in my.sailthru.com?
    • On the /campaigns/overview#/sent view, you can see A/B tests that were run. These tie back to the data sent in the lookup.
  • How can I set up my BI/DW tool to report out data like what I see on /campaigns/overview?
    • Your Engineering team would have to set up their queries, and can rely solely on the new columns in the “Campaign” lookup table to refer to the “A” or “B” (or other) sends. Alternatively, they can join on the abtest_id key with the “Campaign ABTest” lookup table to determine which send was declared the winner.
Top