Experiment assignment
Assign subjects
The first step to running experiments is setting up an assignment function, which maps subjects (e.g users) to variants (e.g control
, treatment
) given an experiment configuration. If you don't already have a way to assign subjects in your app, you'll need to setup one of the following options:
- Eppo SDKs
- A third party tool such as Launch Darkly or Optimizely
- An internal tool that you build yourself
Log assignments
Once you are able to assign subjects, you'll also need a way to log assignment data into your data warehouse, the mechanics of which will depend on what tool you use for randomization. In your warehouse, the most straighforward way to store assignment history is an append-only assignments table with the following columns:
timestamp | user_id | experiment | variation |
---|---|---|---|
2021-06-22T17:35:12.000Z | 6342 | checkout-button-color | purple |
This row represents the fact that the user with ID 6342
was assigned to the variation blue
of the experiment checkout-button-color
on June 22nd, which Eppo will need to properly analyze that
experiment.
It's ok for this table to contain duplicate rows for the same subject, however for a given experiment, the same subject should only ever be assigned one variation. The relative ordering of rows relative to each other is not important.
Refer to our tool specific guides to understand how to log assignments to your warehouse:
- Logging assignment data using Eppo's SDKs
- Exporting assignment data from Launch Darkly
- Exporting assignment data from Optimizely
For all other systems, email us at feature-flagging@geteppo.com and we'll happily walk you through the process.