Static Audiences

Enable immediate forecasts for static audience segments

Kevel Forecast allows you to make forecasts targeting audience segments when you provide the respective targeting, for example Custom Targeting rules.

During normal operation, Kevel Forecast considers the user's data as it existed at the time of the historical Ad Request. This implies that for newly added audience segment data, the system will require at least 7 days of Ad Request data targeting those users to create viable predictions.

However, if the audience segment is static in nature -- i.e., once users are added to an audience, the list is expected to remain stable for a long period of time -- it is possible to shorten the waiting time between adding a new audience segment and getting back a reliable forecast. By sending your audience segment data directly to Kevel Forecast, via the Static user custom properties ingest URL or the Static user segments ingest URL, you can inform the simulation engine of your new static audience segments and perform targeted forecasts in a few hours. How the ingested information interacts with the historical user data depends on the type of audience data being imported; see sections below for details.

🚧

Advanced feature warning

Use this feature with caution. Due to its ability to ignore historical user data, it can impact quality of forecasts if the wrong static audiences are imported. For more information, see the "Configure Static Audiences In Use" section.

Static audience segment data can be imported as Custom Properties or as User Segments.

Static User Custom Properties

Custom properties are user-level data that is tied to a specific user key and is stored under the custom key. For more details, see Custom Properties. This data can be targeted by custom targeting rules (Zerkel query) such as $user.custom.<static_property> = 1 (head to Custom Targeting for more details).

If you're using Kevel Audience to load static custom properties, all you have to do is flag the segment as static on load or toggle the forecast sync button in the Ad Server destination.
When using alternative segment management systems, you can send this data directly to Forecast by uploading JSON Lines files containing an entry per user with the following format:

{ "userKey": <user-key>, "customProperties": <json-object>}

Upload this file using the Static user custom properties ingest URL endpoint.

Configure Static Audiences In Use

When the file is imported, all the user custom properties present will be automatically considered as static. This is relevant since from the moment a user's custom property is considered static, Forecast will ignore all historical property data and instead rely solely on the information ingested from the file. This ties back to the nature of this audience segment data, which is expected to remain stable.

However, should you want to stop considering a custom property as static or reconsider another, Forecast exposes the Configure user custom properties endpoint to manually select the set of user custom properties that should be considered as static. Switching back a user custom property to non-static will cause Kevel Forecast to ignore all the previous imported data and rely on the user data as it existed at the time of the Ad Request.

Note that this endpoint only changes if the custom property is considered static or not. It does not delete previously imported data.

Static User Segments

User segments group users into audiences that can be targeted by user segment targeting rules. For more details, see User Segments.

If you're using Kevel Audience to load static segments, all you have to do is flag the segment as static on load or toggle the forecast sync button in the Ad Server destination.
When using alternative segment management systems, you can send this data directly to Forecast by uploading JSON Lines files containing an entry per user with the following format:

{ "userKey": <user-key>, "segments": <array-of-segment-ids>}

Upload this file using the Static user segments ingest URL endpoint.

Unlike static custom properties, static user segments do not override the historical segment membership. Instead, the ingested segments are merged with the user's segment membership as it existed at the time of the historical Ad Request. This makes static user segments additive, meaning that forecasted membership in a static segment is not limited to the users listed in the ingest file. Any user who was historically a member of a segment marked as static is still treated as a member of that segment, even if they do not appear in the ingest file.

Configure Static Audiences In Use

When the file is imported, all the user segments present will be automatically considered as static. From the moment a user segment is considered static, Forecast augments the historical segment membership with the membership ingested from the file.

However, should you want to stop considering a user segment as static or reconsider another, Forecast exposes the Configure user segments endpoint to manually select the set of user segments that should be considered as static. Switching back a user segment to non-static will cause Kevel Forecast to ignore all the previous imported data for that segment and rely on the user data as it existed at the time of the Ad Request.

Note that this endpoint only changes if the user segment is considered static or not. It does not delete previously imported data.