XDM: the Experience Data Model
The Experience Data Model (XDM) is the shared vocabulary of Adobe Experience Platform: a system of schemas that declares what every incoming piece of data means, so that every application reading the platform - Customer Journey Analytics, Real-Time CDP, Journey Optimizer - interprets the same datasets the same way. A schema is a contract between the systems that send data and the questions you will one day ask of it. A schema is a contract between the systems that send data and the questions you will one day ask of it.
XDM's central design choice is that meaning is defined before collection, not after. Adobe Analytics let teams collect first and assign meaning later through processing rules and classification uploads; the platform model reverses that. The schema workshop is the highest-leverage meeting of a CJA implementation: a field you never modeled is a question you cannot answer, and a schema designed around Adobe's default field groups instead of your business questions produces datasets that are technically valid and analytically useless.
The parts: classes, field groups, schemas, datasets
| Concept | What it is | The decision it encodes |
|---|---|---|
| Class | The base shape of a record: ExperienceEvent (things that happen) or Individual Profile (things that are known about a person) | Is this a timestamped event or an attribute of an identity? |
| Field group | A reusable bundle of fields added to a schema | Which standard vocabulary applies, and where custom fields live |
| Schema | Class + field groups + custom fields | The full contract for one kind of data |
| Dataset | Data ingested against a schema | The physical table CJA connections read |
FAQ
What does XDM stand for?
XDM stands for Experience Data Model, Adobe's schema standard for Adobe Experience Platform. Every dataset in AEP is ingested against an XDM schema, and every downstream application reads data through that schema's definitions.
Do I need to design XDM schemas before using Customer Journey Analytics?
Yes - CJA reads datasets, datasets conform to schemas, and schema design determines which dimensions and metrics can exist in your data views. Rework is expensive after data starts flowing, so schema design belongs at the start of implementation, anchored to the questions your teams actually need answered.
How do Adobe Analytics variables map to XDM?
There is a structural mapping: Adobe's Analytics source connector and the Web SDK both map eVars, props, and events into fixed fields in the _experience.analytics namespace, so the values arrive without transformation. What that does not give you is meaning - a variable carried across as eVar17 is still called eVar17 in the schema, and the migration work is deciding which business-named XDM field should carry each variable's meaning forward. That process is covered in our field-mapping entry.