Final · 18 questions across 12 modules

Test the whole
curriculum.

One attempt, eighteen questions, no time limit. Pick the best answer for each; the explanations stay hidden until you submit. There is no save state — refresh to start over. Aim for 80%.

Question 1 · Module 01
Which statement most accurately describes what an Adobe Analytics "report suite" is?
A report suite is the data container — its own eVars, props, events, processing rules, and admin settings. A single property may send to multiple report suites; reports are always scoped to one.
Question 2 · Module 02
What is the most important architectural reason to use a data layer between your site and Launch?
Launch can read the DOM, and a data layer doesn't make pages faster or encrypt anything. The win is the contract — front-end teams produce a defined shape, the analytics team consumes it. Either side can evolve without breaking the other.
Question 3 · Module 03
On a link hit (s.tl()), which custom variables are sent to the server by default if you set them on s but do nothing else?
This is the central behavioural difference between t() and tl(). Page views carry everything on s; link hits carry nothing custom unless you whitelist via linkTrackVars and linkTrackEvents.
Question 4 · Module 03
In a captured hit URL, you see &v15=summer-sale&c4=telescopes&events=event1%2Cevent2%3D12.50. Which variables fired?
v = eVar, c = prop, the events string uses comma to separate events and = to attach a numeric value. The percent-encoding decodes to event1,event2=12.50.
Question 5 · Module 04
In Launch, what is the correct sequence of components that produce a single tracking call?
Rules are the unit of execution: an event triggers, conditions evaluate, actions fire. Actions come from extensions. Data elements supply values. The whole property is built into libraries and published to environments.
Question 6 · Module 05
An eVar is set to "Most Recent (Last)" allocation and expiration "On purchase event." A user clicks a Google paid ad on Monday (eVar = "gpaid-summer"), browses anonymously on Wednesday with no value set, and purchases on Friday with no value set on that hit. Which campaign gets credit?
The eVar value persists in Adobe's visitor profile from Monday until an expiring event fires. Most-recent allocation means the last non-empty value wins; with no later values set, the Monday value claims the purchase. This is exactly why "expire on event" is the standard pattern for campaign attribution.
Question 7 · Module 05
A user adds two products to cart from different campaign sources. On the purchase hit, you want each product's revenue attributed to its own campaign. Which AA feature is required?
Merchandising eVars bind a value to a specific product within the products string, so revenue per SKU is credited to that SKU's own source. A standard eVar would credit both products to whichever campaign value was most recent.
Question 8 · Module 05
Which is the correct serialization syntax for a purchase event tied to order ID "ORD-9981"?
Colon delimits an event from its serialization ID. = is for numeric values; comma separates events; semicolon delimits product fields. The purchaseID property also handles purchase-specific serialization.
Question 9 · Module 06
A developer reports "my eVar4 doesn't appear in reports for clicks on the Add to Cart button." Where do you check first?
The textbook bug. Link hits don't carry custom variables unless linkTrackVars whitelists them. Allocation only matters once the value is on the hit; it's not on the hit yet.
Question 10 · Module 07
In a React SPA, on every route change you call s.t() with the new pageName. Reports show the campaign eVar15 you set on landing is showing up on every subsequent page view. Why?
On SPAs there is no page reload to wipe s. The same JavaScript object lives for the entire session. Without s.clearVars() at the top of each virtual page view, every prior assignment leaks onto every later hit.
Question 11 · Module 08
In a Web SDK / Alloy implementation, where is the mapping from XDM fields to Adobe Analytics eVar/prop/event slots configured?
The datastream is the AEP-side config that decides which downstream products receive each event, and how XDM fields map to legacy slot variables in Analytics. This server-side mapping is exactly the seam that lets a Web SDK implementation feed an existing AA report suite.
Question 12 · Module 09
You enable _satellite.setDebug(true) in the console. Which of these does Launch not log to the console afterwards?
Processing rules run server-side, after the hit leaves the browser. Nothing client-side knows what they do. The other three are exactly what setDebug exposes.
Question 13 · Module 09
In a hit URL you see pe=lnk_d&pev1=https%3A%2F%2Fcdn.example.com%2Fspec.pdf&pev2=PDF%20%C2%B7%20Spec%20Sheet. What kind of hit is this?
pe=lnk_d identifies a download link; pev1 is the URL, pev2 is the name passed to s.tl(). Exit would be lnk_e, custom would be lnk_o.
Question 14 · Module 10
You need to fix mis-categorised campaign codes for hits that were collected three months ago. Which mechanism handles this retroactively?
Classifications are read-time lookups — upload a new mapping and every historical hit that carried the classified value is reported under the new attributes. Processing rules and VISTA only affect hits collected after they are enabled.
Question 15 · Module 11
In the AEP Mobile SDK, what do AEPLifecycle's automatically-tracked metrics include?
Lifecycle covers app-state milestones the SDK can derive itself: installs, launches, upgrades, crashes, sessions, device metadata. The others require additional code or platform-specific instrumentation.
Question 16 · Module 12
Server-side forwarding (SSF) was introduced primarily to solve what problem in legacy AppMeasurement + AAM setups?
Pre-SSF, a page running both products fired two beacons. SSF collapses this: AA collects the hit, forwards it server-side to AAM, and dil.js drops out of the page. The Web SDK datastream is the modern equivalent for many products at once.
Question 17 · Module 12
Which statement about the relationship between Adobe Analytics (AA) and Customer Journey Analytics (CJA) is correct?
The migration pattern: implement once on Web/Mobile SDK, point a datastream at AA to keep legacy reporting working, and stand up a CJA connection + data view on the same AEP datasets for the new analysis surface. Both run in parallel during transition.
Question 18 · Synthesis
An analyst asks why total revenue in the eVar15 (Campaign) report is half the revenue shown in the Orders report. You confirm the implementation is correct on every checkout hit. What is the most likely cause?
Classic attribution gap. Visit-level expiration on eVar15 means users who buy later than the visit they arrived in lose attribution. Revenue still records (purchase is on the hit) but the eVar15 column for that row is empty, so it's not summed into any campaign's total. Fixing it means changing eVar15 to "expire on purchase event."

Scored well? You're ready to ship implementations. Scored lower? The explanations above pinpoint where to re-read — every question maps to a specific module. There is no "pass / fail" — this is your own diagnostic. Replay it after a week.