|
| 1 | +--- |
| 2 | +layout: page_v2 |
| 3 | +title: Enrichment Lift Measurement Module |
| 4 | +display_name: Enrichment Lift Measurement Module |
| 5 | +description: Enrichment Lift Measurement Module |
| 6 | +page_type: module |
| 7 | +module_code: enrichmentLiftMeasurement |
| 8 | +enable_download: true |
| 9 | +vendor_specific: true |
| 10 | +sidebarType: 1 |
| 11 | +--- |
| 12 | + |
| 13 | +# Enrichment Lift Measurement |
| 14 | + |
| 15 | +The **Enrichment Lift Measurement Module** allows publishers to evaluate the performance of User ID submodules by configuring and executing A/B tests. It offers several configuration options that enable publishers to: |
| 16 | + |
| 17 | +- Route traffic to selected User ID submodules. |
| 18 | +- Control where the A/B test configuration is stored. |
| 19 | +- Specify how User ID submodules should be disabled. |
| 20 | + |
| 21 | +Additionally, the module attaches the A/B group configuration to analytics labels for tracking and reporting. |
| 22 | + |
| 23 | +## How It Works |
| 24 | + |
| 25 | +1. The publisher initializes the module using `config.setConfig`. |
| 26 | +2. When a user loads the page, the module determines which User ID submodules should participate in the test based on the configured percentages. |
| 27 | +3. Submodules not selected for the test are disabled via activity controls, either during submodule initialization or at the enrichment level. |
| 28 | +4. The A/B group configuration (enabled/disabled submodules) is saved in either `localStorage` or `sessionStorage`. (In `memory` mode, this step is skipped, and the configuration is recalculated on each page load.) |
| 29 | +5. The A/B configuration is attached to analytics labels to enable performance tracking and analysis. |
| 30 | + |
| 31 | +## Configuration |
| 32 | + |
| 33 | +{: .table .table-bordered .table-striped } |
| 34 | + |
| 35 | +| Parameter | Description | Allowed Values | Default | |
| 36 | +|-------------------------|------------------------------------------------------------------|--------------------------------------------|---------| |
| 37 | +| `storeSplits` | Defines where to store the A/B group configuration | `memory`, `sessionStorage`, `localStorage` | - | |
| 38 | +| `suppression` | Determines how to disable User ID submodules | `submodules`, `eids` | `eids` | |
| 39 | +| `modules[].name` | Name of the User ID submodule | *(string)* | - | |
| 40 | +| `modules[].percentage` | Percentage of users for whom the module is enabled | *(number between 0 and 1)* | - | |
| 41 | +| `testRun` | A label used for storing and reporting test configuration status | *(string)* | - | |
| 42 | + |
| 43 | +## Configuration Example |
| 44 | + |
| 45 | +```javascript |
| 46 | +pbjs.setConfig({ |
| 47 | + enrichmentLiftMeasurement: { |
| 48 | + modules: [ |
| 49 | + { name: 'idSharedSystem', percentage: 1.0 }, // Enabled for 100% of users |
| 50 | + { name: '33acrossIdSystem', percentage: 0.5 } // Enabled for ~50% of users |
| 51 | + ], |
| 52 | + storeSplits: 'memory', // Configuration is not stored; recalculated on each page load |
| 53 | + suppression: 'submodules', |
| 54 | + testRun: 'JulyTest' |
| 55 | + } |
| 56 | +}); |
| 57 | +``` |
| 58 | + |
| 59 | +The following object will be attached to analytics labels based on the configuration above: |
| 60 | + |
| 61 | +```javascript |
| 62 | +{ |
| 63 | + JulyTest: [ |
| 64 | + { name: 'idSharedSystem', percentage: 1.0, enabled: true }, |
| 65 | + { name: '33acrossIdSystem', percentage: 0.5, enabled: false } // May be true or false depending on random selection |
| 66 | + ] |
| 67 | +} |
0 commit comments