How to deliver personalized experiences with Adobe Target and Edge Delivery Services

This demo is designed for pre-sales teams showing how Adobe Target and AEP Tags (Launch) integrates with Edge Delivery Services via the aem-martech plugin using WebSDK. Authors create offers as DA fragments, marketers configure activities in Target, and personalized experiences reach visitors in milliseconds — all powered by the AEP Web SDK with zero impact on the authoring workflow or performance.

When to use this use case: Any brand that already owns Adobe Target and wants to deliver real-time personalization on their EDS site — hero personalization, audience-specific content, A/B testing at the experience level — without custom server-side logic and measure those experiences through Adobe Analytics.

Single Adobe Web SDK instance. EDS's aem-martech plugin initializes Adobe Web SDK (alloy) early in the page load. AEP Tags (Adobe Launch) is configured to detect and reuse that existing instance rather than creating its own — so there's no double-firing of events, no performance hit, and no data conflicts. Launch handles the tag management layer while EDS owns the Web SDK initialization. See the Launch container configuration in the aem-martech docs.

Access note: This demo environment requires view access to Adobe Target, AEP, and Adobe Analytics. If you need access to explore the configuration, reach out to Adobe Engineering on Slack or Microsoft Teams.

Demo environment

This demo uses the aem-martech plugin, already instrumented in the project codebase. Solution Consultants only need to configure activities in Adobe Target and preview results on the .aem.page environment.

Component
What it does
Where to find it
aem-martech plugin
Loads alloy.js, sends personalization requests to Target via Edge Network
plugins/martech/ in the repo
AEP Tags (Adobe Launch)
Loads container for ACDL-driven analytics rules
assets.adobedtm.com embed in scripts.js
AEP Datastream
Routes XDM events to Target + Analytics
AEP Data Collection → Datastreams
Adobe Target
Stores activities, audiences, offers; returns personalization decisions
experience.adobe.com → Target
DA Fragments
Content fragments authored in DA, sent to Target as HTML offers
DA's "Send to Target"

Key value propositions to call out early:

Part 1: Form-Based Activity — Hero A/B Test

What to emphasize

Steps

  1. Show the live homepage — point out the current hero ("The Science of Wealth Preservation"). This is the control experience.
  2. Open the variant fragment in DA — show the hero-variant-b fragment in DA — different headline ("Your Blueprint for Financial Independence") and a softer CTA.
  3. Show the "Send to Target" flow — DA → Prepare → Send to Adobe Target → offer appears in Target as an HTML offer.
  4. Open Target → Activity — show the Form-Based Composer: mbox = homepage-hero-mbox, Experiences A (control) / B (variant), 50/50 split.
  5. Activate and preview Variant B — hero swaps to "Your Blueprint for Financial Independence."
  6. Key talking point: The author created the content. The marketer wired the targeting. No developer involved for the live activity.

Part 2: Form-Based XT — Teaser Personalization by Audience

What to emphasize

Steps

  1. Show the default teaser on homepage — "Check out our library of beginner-friendly guides..." This is what returning visitors see.
  2. Open the new-visitor teaser fragment in DAfragments/offers/learn-home-teaser — "New here? Start with the basics."
  3. Open Target → Homepage Teaser XT — show the XT flow: Experience B (New Visitors) → new teaser offer, Experience A (All Visitors) → default.
  4. Preview the New Visitors experience — teaser swaps to the beginner-focused message.
  5. Key talking point: One line of metadata (target: on) on the page is all it takes. The plugin handles the rest — fetch, decide, render.

Side-by-side comparison of the default homepage hero (left) and the personalized hero variant B (right)

Part 3: VEC Activity — Page-Level Audience Targeting

What to emphasize

Steps

  1. Show the products page — default h1 says "All Products." This is the fallback experience for All Visitors.

  2. Open Target → Products Page VEC activity — show 3 experiences with h1 changes made entirely inside the Target VEC.

  3. Walk through each experience:

    • New Visitors → "Start with the Basics"
    • Returning Visitors → "Level up your Strategy"
    • All Visitors (fallback) → "All Products"
  4. Preview each experience in Target — show the h1 swapping per audience segment.

  5. Key talking point: The marketer made these headline changes entirely inside Target. No code deploy needed. When the activity ends, the original content returns automatically.

Side-by-side comparison of Products page h1 for Returning Visitors (Level up your Strategy) and New Visitors (Start with the Basics)

Part 4: Analytics & Measurement

What to emphasize

Steps

  1. Show the network call — open DevTools → Network → filter interact → show the single edge call that returns Target decisions AND sends the page view to Analytics.
  2. Open AEP Debugger (if installed) — show Target tab (propositions returned) + Analytics tab (page view hit confirmed).
  3. Show Analytics Workspace — open the project, show Page Views by Page dimension → hits from demo.bbird.live are landing.
  4. Key talking point: One integration, one edge call — Target gets personalization decisions, Analytics gets behavioral data. Each solution reports independently with no conflicts.

Part 5: Performance — No Lighthouse Regression

What to emphasize

Steps

  1. Open the Deep PSI toolDeep PSI comparison
  2. Show both pages scoring 100 — overall Performance score unchanged after integrating Target.
  3. Call out the architecture reason — the plugin fires alloy in loadEager inside a Promise.all alongside section rendering. If Target responds within 1s, content is swapped before first paint. If it doesn't, the page renders default content (graceful timeout).
  4. Key talking point: "We added real-time personalization — three active Target activities — and the Lighthouse score didn't move. That's the benefit of the aem-martech architecture: performance and personalization aren't tradeoffs."

How it all fits together

The aem-martech plugin ties all three activity types into a single, lightweight architecture:

Page load (demo.bbird.live)
  └─ aem-martech plugin
       ├─ alloy.js → Edge Network → Target (personalization decisions)
       ├─ alloy.js → Edge Network → Analytics (page view)
       └─ Adobe Tags → ACDL rules → custom events (clicks, conversions)

Comparison with AEM Experimentation plugin

Capability
AEM Experimentation
Adobe Target (this use case)
Who configures
Author (metadata)
Marketer (Target UI)
Audience engine
Code-defined (device, geo)
Target-native + RT-CDP
Offer content
Variant pages
DA fragments or VEC edits
Reporting
AEM RUM
Adobe Target (native reporting)
Requires
No additional license
Target + Analytics license

Reference documentation