Adobe Implementation Playbook

Build 3 · Launch (Tags)

Phase 5 · Build stage 3 of 9

Adobe Launch (Tags) + Web SDK

Depends on: AEP schemas and datasets, plus the Analytics report suite. Result: events reaching AEP and Analytics.

Typical duration
7–14 weeks
Walkthrough steps
11
Detailed tasks
30
Domains
6
0 of 0 done

This tool across the project

What Launch (Tags) needs in every phase, from kickoff to handoff, next to the sign-off gate for that phase.

PhaseLaunch (Tags)Gate (all tools)
1. Initiation (RFP / kickoff)Sites and apps in scope, current tag manager, CMPRFP response; sponsor and team named
2. Discovery (current & future state)Tag audit, data layer gaps, page-speed baselineCurrent State Assessment; Future State Blueprint — Discovery sign-off
3. SOW & planTemplates, extensions, migration scopeSOW signed: scope, deliverables, timeline, price
4. Design (SDR / SDD)Data layer spec, rule and data-element design, naming, consent matrixSDR + SDD — Design sign-off
5. Build & configureDatastreams → property → extensions → data elements → rules → consent → librariesConfigured environment — Build Complete sign-off
6. QA / UATDebugger/Assurance, cross-browser, opt-out test, performanceQC checklist executed — UAT sign-off
7. Go-livePublish to Prod with rollback; remove old tagsProduction cutover — Go-Live sign-off
8. Hypercare (2–4 weeks)Beacon errors, duplicate hits, page speedDaily monitoring; fixes — Hypercare Exit sign-off
9. Closure & handoffProperty documentation, publishing process, audit scheduleHandoff pack: runbooks, access list, training, open backlog

Implementation overview

PhaseWhat you doDeliverables
Define Data Layer RequirementsStandardized data layer objects; align naming with XDMData layer spec, naming convention guide
Set Up Property & EnvironmentsDev/Stage/Prod libraries, embed codesProperty config doc, environment map
Install Core ExtensionsAnalytics, Web SDK, Target, CMP extensionsExtension inventory
Build Data ElementsRead values from data layer/cookies/URL/JSData element catalog
Build RulesEvents, conditions, actions; consent gatingRule library, QA test cases
Configure Consent & PrivacyCMP integration, regional opt-in/out testingConsent gating matrix
QA & DebugDebug mode, Assurance, data layer validationQA test log
Publish & Version ControlBuild → Stage → Approve → Prod, rollback planPublish log, version history
Monitor & MaintainError monitoring, periodic auditsTag health dashboard, audit report

Step-by-step implementation

Do these 11 steps in order, in a development environment. Each step lists where to go, what to do, what to check, what you must know, and the questions interviewers ask about it.

Step 1

Define the data layer

Where
Outside Adobe — with the web development team
What you do
Define the data layer object (page, user, product, event) and align names with the XDM schema.
Tips
Document it per page template; review in code before any rule is built.
Check before moving on
Data layer spec signed off.

Must know

  • The data layer is the contract between developers and analysts: tags read from it, developers write to it.
  • Adobe Client Data Layer (ACDL) is event-driven: you push objects to window.adobeDataLayer and it keeps a history of every push.
  • Name data layer fields to match XDM where the concept is the same; it makes Web SDK mapping trivial.

Interview questions tap to reveal a model answer

Why use a data layer instead of scraping the page?

Scraping breaks when the page design changes; a data layer is a stable, documented contract for every value you track.

How does the Adobe Client Data Layer work?

Pages push event objects to window.adobeDataLayer; listeners (and Tags rules) react to each push, and the layer keeps the full state and history.

What goes in a data layer spec?

Every object (page, user, product, cart, event), each field with type and example, when it is set, and which tag uses it.

Data layer object in the browser console
Screenshot Data layer object in the browser consoleAdd screenshots/launch/step-01.png
Step 2

Create the datastream

Where
Data Collection > Datastreams > New datastream
What you do
Create a datastream linked to the event schema and add services (AEP dataset, Analytics, Target).
Tips
Use separate datastreams or overrides per environment.
Check before moving on
Datastream ID noted for each environment.

Must know

  • A datastream is server-side configuration on the Edge Network that says where Web SDK data goes: AEP dataset, Analytics report suite, Target and more.
  • Create a datastream per environment (Dev, Stage, Prod) so test data never reaches production reports.
  • Changing routing in the datastream needs no website release.

Interview questions tap to reveal a model answer

What is a datastream?

Edge Network configuration that receives Web SDK events and forwards them to the services you enable, with the IDs (report suites, sandbox, dataset) for each.

Why one datastream per environment?

So development and staging traffic goes to test report suites and sandboxes, keeping production data clean.

Can one Web SDK call feed both Analytics and AEP?

Yes. The datastream forwards the same event to the Analytics service and the AEP dataset at once.

Datastream services configuration
Screenshot Datastream services configurationAdd screenshots/launch/step-02.png
Step 3

Create the tag property

Where
Data Collection > Tags > New property
What you do
Name the property, set the domain and platform (Web), and save.
Tips
One property per site or group of closely related sites.
Check before moving on
Property appears in the list.

Must know

  • A tag property is the container for a site or app: its extensions, data elements, rules and environments.
  • Each property has Development, Staging and Production environments, each with its own embed code.
  • Embed codes go in the page head and should load before tags fire; install each environment's code on the matching site environment.

Interview questions tap to reveal a model answer

What is a tag property?

The container in Tags that holds the configuration for one site or app and is published as a library through environments.

Why separate embed codes per environment?

So the dev site loads the dev library and production loads only approved, published code.

Web vs. mobile property?

Web properties deliver a JavaScript library to browsers; mobile properties configure the Mobile SDK in native apps.

New property dialog
Screenshot New property dialogAdd screenshots/launch/step-03.png
Step 4

Install extensions

Where
Property > Extensions > Catalog
What you do
Install the Web SDK (enter datastream IDs per environment), Core, and the consent/CMP extension; Analytics or Target only if legacy.
Tips
Keep one ECID source across all extensions.
Check before moving on
Extensions show as installed.

Must know

  • The Core extension is always installed; it provides the basic event, condition and data element types.
  • Web SDK extension (alloy) is the modern route to AEP, Analytics and Target; AppMeasurement and at.js extensions are the older, product-specific route.
  • Install only the extensions you use; each adds weight to the library.

Interview questions tap to reveal a model answer

Web SDK vs. AppMeasurement?

Web SDK sends one XDM call to the Edge Network for every Adobe product; AppMeasurement sends Analytics-only beacons straight to Analytics.

Which extension is mandatory?

Core. It provides page load, click and custom code events, plus base data element types.

How would you migrate from AppMeasurement to Web SDK?

Build the XDM schema and datastream, add the Web SDK extension, map data elements to XDM, run both in parallel and reconcile, then retire the old extension.

Installed extensions list
Screenshot Installed extensions listAdd screenshots/launch/step-04.png
Step 5

Create data elements

Where
Property > Data elements > Add data element
What you do
Create elements that read the data layer, cookies, URL and JS; build the XDM object/variable element.
Tips
Use the naming convention from step 1; test each one in debug before using it.
Check before moving on
Each element returns the expected type and value.

Must know

  • Data elements are named pointers to values (data layer path, cookie, URL parameter, JS variable, custom code).
  • Set the storage duration (none, page view, session, visitor) and a default value deliberately.
  • Test every data element in Debug mode before using it in rules; reference it as %Name% in the UI or _satellite.getVar() in code.

Interview questions tap to reveal a model answer

What is a data element?

A reusable variable in Tags that returns a value from the page, used by rules and extensions.

How do you read a data element in custom code?

With _satellite.getVar('Data element name').

What does storage duration do?

It keeps the last value for the page view, session or visitor, so later pages can reuse it when the source is no longer present.

Data element configuration
Screenshot Data element configurationAdd screenshots/launch/step-05.png
Step 6

Build rules

Where
Property > Rules > Add rule
What you do
Add an event (Library loaded, click, custom), conditions (consent, page), and the action (Web SDK Send event).
Tips
One beacon per trigger — avoid overlapping rule conditions.
Check before moving on
Rule documented with trigger and beacon.

Must know

  • A rule has events (when), conditions and exceptions (only if), and actions (do).
  • Rule order controls which rule fires first when several share an event.
  • One beacon per real user action: overlapping rules cause duplicate hits, the most common Tags bug.

Interview questions tap to reveal a model answer

What are the parts of a rule?

Events that trigger it, conditions and exceptions that filter it, and actions that run, such as sending a Web SDK event.

How do you prevent duplicate tracking?

Give each user action exactly one rule, use precise conditions, and verify in Debugger or Assurance that one beacon fires.

Direct call rule vs. data layer event?

A direct call rule fires on _satellite.track() from site code; a data layer event rule reacts to a push to the data layer. Data layer events keep site code decoupled.

Rule editor with event, condition, action
Screenshot Rule editor with event, condition, actionAdd screenshots/launch/step-06.png
Step 7

Gate on consent

Where
Web SDK extension > Privacy settings; rule conditions
What you do
Set default consent, update consent from the CMP, and gate each rule category behind its consent.
Tips
Test the EU opt-in flow and the US opt-out flow separately.
Check before moving on
Opt-out stops the matching beacons.

Must know

  • Consent state must be available before any tag fires; integrate the CMP first.
  • With Web SDK, set default consent (for example pending) and update it with setConsent when the visitor chooses.
  • Gate each category (analytics, advertising, personalization) separately and test opt-in and opt-out in every region.

Interview questions tap to reveal a model answer

How do you handle consent with Web SDK?

Configure default consent in the extension, then call setConsent with the visitor's choice from the CMP; Web SDK holds or sends data accordingly.

What does default consent "pending" mean?

Events are held locally until the visitor makes a choice; they are sent if consent is given and discarded if not. The default setting is "in"; "out" discards everything.

How do you test consent?

Opt out in each region and confirm in Debugger that no calls fire for the blocked categories, then opt in and confirm they do.

Web SDK privacy settings
Screenshot Web SDK privacy settingsAdd screenshots/launch/step-07.png
Step 8

Publish to Development

Where
Property > Publishing flow > Add library
What you do
Add changed resources to a library, build it to Development, and install the Dev embed code.
Tips
Keep libraries small so changes are easy to review.
Check before moving on
Library builds without errors.

Must know

  • Changes only reach a site when they are added to a library and built.
  • Work in a Development library first. A library moves through four states: Development, Submitted, Approved, Published.
  • Name libraries by release so the history is readable.

Interview questions tap to reveal a model answer

How do changes get from Tags to the website?

Add changed resources to a library, build it to Development, test, submit to Staging, approve, then publish to Production.

What is in a library?

The set of changed rules, data elements and extensions that will be built and deployed together.

Two people edit the same rule. What happens?

The last saved revision is what goes into a library; coordinate through separate libraries and review changes before building.

Publishing flow with the library
Screenshot Publishing flow with the libraryAdd screenshots/launch/step-08.png
Step 9

Validate with Debugger & Assurance

Where
Adobe Experience Platform Debugger (Chrome); Data Collection > Assurance
What you do
Check every beacon, compare the payload with the schema, and look for duplicates or missing calls.
Tips
Also confirm the event lands in the AEP dataset.
Check before moving on
No duplicates; payload matches the spec.

Must know

  • Adobe Experience Platform Debugger shows the Edge (Web SDK) and Analytics requests a page sends, plus Tags rules that fired.
  • Assurance shows events end to end, including what the Edge Network did with them.
  • Validate against the data layer spec on every page template, not just the home page.

Interview questions tap to reveal a model answer

How do you validate a Web SDK implementation?

Use Debugger to inspect the XDM payload of each call, Assurance to follow it through the Edge Network, and check the data lands in the AEP dataset and Analytics.

A rule is not firing. How do you debug it?

Turn on Tags debug mode, check the console for the rule's event and conditions, confirm data elements return values, and check the right library is loaded.

Debugger vs. Assurance?

Debugger is a browser extension for what the page sends; Assurance is a session-based tool that shows what Adobe received and processed.

Debugger or Assurance event view
Screenshot Debugger or Assurance event viewAdd screenshots/launch/step-09.png
Step 10

Promote to Staging & Production

Where
Publishing flow > Submit for approval > Approve > Publish
What you do
Get stakeholder approval in Staging, then publish to Production with a tested rollback.
Tips
Run the cross-browser/device smoke test first.
Check before moving on
Production library live; rollback version kept.

Must know

  • Staging is where stakeholders approve; Production publishing should follow a documented approval.
  • Keep a tested rollback plan. Republishing a previous library only works for the five most recently published libraries (with Adobe-managed hosting and Archive off); otherwise build a new library that reverts the change.
  • Remove old tags once the new implementation is verified, so data is not double-counted.

Interview questions tap to reveal a model answer

What is the Tags publishing flow?

Development, then Submitted and built to Staging, then Approved, then Published to Production.

How do you roll back a bad release?

Republish the last good library if it is one of the five most recent (Adobe-managed host, Archive off); otherwise create a new library that reverts the changes. Then fix in Development.

What do you check right after a production publish?

That key rules fire once, beacons reach Edge or Analytics, page speed is unchanged, and no errors appear in the console.

Publishing flow with approved library
Screenshot Publishing flow with approved libraryAdd screenshots/launch/step-10.png
Step 11

Monitor & audit

Where
Property overview; recurring tag audit
What you do
Watch tag errors and page performance; schedule a quarterly audit for broken or unused rules.
Tips
Rules with zero recent fires are often broken after site changes.
Check before moving on
Audit report filed.

Must know

  • Site releases break tags; schedule recurring audits (for example quarterly).
  • Watch library size and page-load impact.
  • Keep property documentation current so the next team can maintain it.

Interview questions tap to reveal a model answer

How do you keep a Tags implementation healthy?

Regular audits against the spec, monitoring for errors and missing data, and a review step in every site release.

What would you put in a tag audit?

Each rule's purpose and owner, firing tests on every template, unused rules and extensions, and consent gating checks.

A KPI dropped to zero after a site release. What do you do?

Check whether the data layer field or page element changed, confirm in Debugger, fix the data element or rule, and annotate the data gap.

Library history / audit notes
Screenshot Library history / audit notesAdd screenshots/launch/step-11.png

Sources (UI paths checked against Adobe Experience League, Oct 2026 — menus can move between releases; confirm in your org): extension · quick start

Implementation by domain

How to use: do each step in your sandbox using the “How to do it” column, then read across the row to see how the same step changes by domain. Each domain column follows one scenario from top to bottom. Add a screenshot and what you learned in the last column.

Travel & Airlines · practice brand: SkyLumen Airways

Lab use case: Flight search & booking

Profile: B2C, seasonal, multi-currency/locale. Compliance focus: GDPR (EU travelers), loyalty program data, real-time pricing/inventory sensitivity.

What changes in this domain: Booking funnel and fare-search event tagging; multi-language data layer

Special considerations: Third-party booking widget/iframe tagging complexity

  1. search (origin, destination, dates) and booking objects.

    How (any domain): Agree a data layer (page, user, product, event) with developers; align names with XDM.

    Check: Data layer visible in the console on every template.

    Data layer · Travel & Airlines
    Screenshot Data layer · Travel & AirlinesAdd screenshots/launch/travel-01.png
  2. AEP and Analytics; separate datastream per market if needed.

    How (any domain): Data Collection > Datastreams > New: link the event schema, add services.

    Check: Datastream ID noted per environment.

    Datastream · Travel & Airlines
    Screenshot Datastream · Travel & AirlinesAdd screenshots/launch/travel-02.png
  3. Web SDK, consent; booking-widget integration.

    How (any domain): Tags > New property; install Web SDK (datastream IDs), Core, consent extension.

    Check: Extensions installed and configured.

    Property & extensions · Travel & Airlines
    Screenshot Property & extensions · Travel & AirlinesAdd screenshots/launch/travel-03.png
  4. Search fields mapped; dates in ISO format.

    How (any domain): Data elements read data layer, cookies, URL; build the XDM object.

    Check: Each element returns the right type.

    Data elements · Travel & Airlines
    Screenshot Data elements · Travel & AirlinesAdd screenshots/launch/travel-04.png
  5. Search, select, passenger details, payment, confirmation.

    How (any domain): Event + conditions + Web SDK Send event action.

    Check: No duplicate beacons in the debugger.

    Rules · Travel & Airlines
    Screenshot Rules · Travel & AirlinesAdd screenshots/launch/travel-05.png
  6. EU travelers opt in; US travelers opt out.

    How (any domain): Default consent, update from the CMP, gate each category.

    Check: Opt-out stops the right tags.

    Consent gating · Travel & Airlines
    Screenshot Consent gating · Travel & AirlinesAdd screenshots/launch/travel-06.png
  7. Booking engine widget in an iframe: postMessage hooks.

    How (any domain): Handle iframes, SPAs and embedded widgets.

    Check: Events from embedded content arrive.

    Third-party & special cases · Travel & Airlines
    Screenshot Third-party & special cases · Travel & AirlinesAdd screenshots/launch/travel-07.png
  8. Test in each market’s site before Prod.

    How (any domain): Publishing flow: library → Dev → Stage approval → Prod.

    Check: Prod library live; rollback kept.

    Publish · Travel & Airlines
    Screenshot Publish · Travel & AirlinesAdd screenshots/launch/travel-08.png
  9. Booking counts match reservations.

    How (any domain): Debugger and Assurance; quarterly audit.

    Check: Audit report filed.

    Validate & monitor · Travel & Airlines
    Screenshot Validate & monitor · Travel & AirlinesAdd screenshots/launch/travel-09.png

Extra steps for this domain

  1. In Phase 1, add fare-search and booking-funnel objects to the data layer.
  2. In Phase 5, test tagging inside any third-party booking widget/iframe separately, since standard rule triggers often don’t reach embedded content.

Full task list

Every numbered task from your board, grouped by phase. Use it as the project checklist once you know the steps above.

Data Layer 3 tasks
Property & Environments 3 tasks
Extensions 5 tasks
Data Elements 3 tasks
Rules 5 tasks
Consent & Privacy 3 tasks
QA & Debug 3 tasks
Publish 3 tasks
Monitor 2 tasks

QC / validation checklist

Key terms and sources

Each term links to Adobe's documentation.

TermWhat it is
Tags quick startGetting started with properties, rules and libraries.
Data elementsReusable variables that read values from the page.
RulesEvents, conditions and actions that drive tags.
Publishing flowHow libraries move from Development to Production.
Web SDK tag extensionGetting started with the Web SDK extension.
DatastreamsEdge Network configuration that routes Web SDK data.
sendEventThe Web SDK command that sends XDM events.
_satellite objectTags client-side JavaScript helpers.
Experience Platform DebuggerBrowser extension for inspecting Adobe calls.
Assurance event transactionsFollowing events through the Edge Network.