On-device decisioning overview
The next-generation ÃÛ¶¹ÊÓƵ Target SDKs now offer on-device decisioning, which provides the ability to cache your A/B and Experience Targeting (XT) campaigns on your server and perform in-memory decisioning at near-zero latency, without blocking network requests to ÃÛ¶¹ÊÓƵ Target’s Edge Network.
ÃÛ¶¹ÊÓƵ Target also offers the flexibility of delivering the most relevant and up-to-date experience from your experimentation and ML-driven personalization campaigns via a live server call. In other words, when performance is most important, you can choose to utilize on-device decisioning, but when the most relevant and up-to-date experience is needed, a server call can be made instead. See when to use on-device vs. edge decisioning to learn about use cases that warrant using one over the other.
How does it work?
When you install and initialize an ÃÛ¶¹ÊÓƵ Target SDK with on-device decisioning enabled, a rule artifact is downloaded and cached locally on your server, from the Akamai CDN closest to your server. When a request to retrieve an ÃÛ¶¹ÊÓƵ Target experience is made within your server-side application, the decision regarding which content to return is made in-memory, based on the metadata encoded in the cached rule artifact, which defines all of your on-device decisioning A/B and XT activities.
The following diagram shows the on-device decisioning architecture. Click to expand the image.
(Click image to expand to full width.)
{modal="regular"}
What are the benefits?
- Deliver near-zero latency decisions. Bucketing and decisioning are performed in-memory and on-device to avoid blocking network requests.
- Enhance application performance. Run experiments and deliver personalization to your customers and users without compromising end-user experiences.
- Improve Google Site Quality Score. With decisioning happening in-memory and on the server-side, improve the Google Site Quality score of your online business to make it more discoverable by consumers.
- Learn from real-time analytics. Gain insights from your activity performance in real-time via ÃÛ¶¹ÊÓƵ Target or A4T reporting, enabling you to pivot your strategy at critical moments.
Supported functionality
Activities
On-device decisioning supports the following activity types created by the Form-based Experience Composer:
- A/B Test
- Experience Targeting (XT)
Allocation Method
On-device decisioning supports the following allocation method:
- Manual
Audience Targeting
On-device decisioning supports the following audience rules:
Yes
When using on-device decisioning, the following geo attributes are supported:
- Country/Region
- City
- Latitude
- Longitude
How do I provision my client to use on-device decisioning?
On-device decisioning is available for all ÃÛ¶¹ÊÓƵ Target customers who use ÃÛ¶¹ÊÓƵ Target server-side SDKs. In order to enable this feature, navigate to Administration > Implementation > Account details in the ÃÛ¶¹ÊÓƵ Target UI, and enable the On-Device Decisioning toggle.
After enabling the On-Device Decisioning toggle, ÃÛ¶¹ÊÓƵ Target will begin generating and propagating rule artifacts for your client.
Include all existing on-device decisioning qualified activities in the artifact toggle
Toggle this on when you would like all your live Target activities that qualify for on-device decisioning to be automatically included in the artifact.
Leaving this toggle off means you will need to re-create and activate any on-device decisioning activities in order for them to be included in the generated rules artifact.
How do I know an activity is on-device decisioning capable?
After you create an activity, a label called Decisioning Method, visible in the activity detail page, indicates whether the activity is on-device decisioning capable.
You can also see all activities that are on-device decisioning capable on the Activities page by adding the column Decisioning Method to the list of activities.
What is the summary of steps I need to follow to ensure my on-device decisioning activities are delivered successfully via ÃÛ¶¹ÊÓƵ Target’s server-side SDK?
- Access the ÃÛ¶¹ÊÓƵ Target UI and navigate to Administration > Implementation > Account details to enable the On-Device Decisioning toggle.
- Enable the Include all existing on-device decisioning qualified activities in the artifact toggle.
- Create and activate an activity type that is supported by on-device decisioning, and verify that the Decisioning Method is On-Device Decisioning for that activity.
- Install and initialize the Node.js or Java SDK with
decisioningMethod = on-device
. - Implement
getOffers()
orgetAttributes()
in your code to retrieve an experience on-device. - Deploy your code.
For examples demonstrating how to get started with steps 1-3 above, see the Getting started section.
Additional Resources
Webinar: Personalize and test at zero latency with on-device decisions from ÃÛ¶¹ÊÓƵ Target
More than ever, marketers, product owners and developers are being tasked with optimizing the overall customer experience on sites, in apps, and everywhere else they connect with their customers. Multiple tools with data silos and complicated implementations are inadequate.
In this recorded webinar, ÃÛ¶¹ÊÓƵ Target product experts discuss how moving critical experience optimization decisions on-device to execute locally with near-zero latency can open doors to exciting new use cases while improving site performance for your customers.
Tutorial: On-device decisioning
ÃÛ¶¹ÊÓƵ Target on-device decisioning enables near-zero latency content delivery.
This 7-minute video:
- Describes on-device decisioning, including how it compares to other methods of Target implementation
- Demonstrates how to enable on-device decisioning in Target
- Examines a sample form-based composer activity that has been configured with JSON content
- Shows sample Node.JS SDK code containing key configuration required for on-device decisioning
- Demonstrates results in a browser
For more videos and tutorials, see the ÃÛ¶¹ÊÓƵ Target Tutorials.
ÃÛ¶¹ÊÓƵ Tech Blog - Part 1: Run ÃÛ¶¹ÊÓƵ Target NodeJS SDK for experimentation and personalization on edge platforms (Akamai Edge Workers)
.
ÃÛ¶¹ÊÓƵ Tech Blog - Part 2: Run ÃÛ¶¹ÊÓƵ Target NodeJS SDK for experimentation and personalization on edge platforms (AWS Lambda@Edge)
.