Three Acronyms That Matter

Data Cloud has its own data model with three layers. Understand these and the rest of the product makes sense.

  • DLO — Data Lake Object. Raw ingested data, schema-preserved.
  • DSO — Data Stream Object. A normalized view of a DLO, used to feed downstream processing.
  • DMO — Data Model Object. The semantic, harmonized model used by the rest of Salesforce.

Data flows: source → DLO → DSO → DMO → everything else.

DLO: Data Lake Object

When you connect a source (a Salesforce org, an S3 bucket, a Snowflake table, a streaming event), the incoming data lands as a DLO. The DLO is a faithful copy of the source: same field names, same data types, same structure.

DLOs are not directly useful to most Salesforce features. They’re the raw storage tier.

Think of DLOs like “staging tables.” Data lands here in whatever shape it arrived. You don’t reshape it yet.

DSO: Data Stream Object

A DSO is the Salesforce-managed view of the DLO, with some normalization: primary key designation, timestamps, and basic type coercion.

Most users don’t interact with DSOs directly; they’re an internal layer. You’ll see DSOs named after their originating source.

DMO: Data Model Object

DMO is where the magic happens. A DMO is a canonical, harmonized entity — Individual, Account, Engagement, Order, etc. Multiple source DLOs/DSOs can map to the same DMO.

Example: your CRM has Contacts, your e-commerce has Customers, your loyalty app has Members. Each lands as its own DLO. All three map into one DMO: Individual. Downstream Salesforce features (Segmentation, Activation, Agentforce grounding, Einstein) query the DMO, not the source.

DMOs are the reason Data Cloud is called a “customer data platform.” They unify.

Standard DMOs

Data Cloud ships with standard DMOs based on the Customer 360 Data Model:

  • Individual — a person
  • Party Identification — identifiers (email, phone, loyalty Id)
  • Contact Point — how to reach someone (email, phone, postal)
  • Account — organization
  • Engagement — an interaction (page view, email open, product use)
  • Order — transaction
  • Product — catalog item
  • Case — support record

You extend these with custom fields, or create custom DMOs for domain-specific entities.

Data Mapping

The work of transforming DLO fields into DMO fields is called mapping. In Data Cloud Setup → Data Streams, you pick source fields and map them to target DMO fields.

Mappings are per-source-to-DMO:

  • CRM Contact’s Email maps to Contact Point Email DMO’s EmailAddress.
  • E-commerce Customer’s email_addr also maps to Contact Point Email DMO’s EmailAddress.

After mapping, both sources populate the same DMO rows (though not the same rows — identity resolution happens separately).

Bad mappings are the most common Data Cloud issue. Audit them early and often.

Identity Resolution

DLOs/DSOs from different sources describe the same person differently. John Smith in CRM is john@acme.com; in e-commerce he’s jsmith@acme.com; in loyalty he’s member #12345.

Identity Resolution rulesets unify these into a single Unified Individual. Rules:

  • Deterministic matches: same email, same phone, same external ID.
  • Probabilistic matches: fuzzy matches on name + address.
  • Transitive matches: if A=B and B=C, then A=C.

The output is a Unified DMO row with references to all the underlying source records.

Resolution runs on a schedule (hourly, daily). Downstream features work off the resolved DMO. Broken resolution rules mean fragmented profiles and wrong segments.

Calculated Insights

A Calculated Insight is a materialized query over DMOs. Examples:

  • Total purchase amount per individual in the last 90 days.
  • Average page views per session per account.
  • Most recent engagement timestamp.

Insights are stored as regular DMOs (their own type), available to segmentation, activation, and grounding.

Insights are computed on a schedule — they’re not live. Adjust the schedule based on how fresh the data needs to be.

Segments

A Segment is a filter over DMOs: “Individuals who purchased in the last 30 days AND have an open support case.” Segments can be nested, composed, and refreshed on demand.

Segments activate to destinations: Marketing Cloud, Ad platforms, external systems, other Salesforce clouds.

Activations

An Activation is a push of a segment to a target. Targets include:

  • Marketing Cloud email lists.
  • Google Ads / Meta audiences.
  • External systems via the Data Cloud Ingestion API.
  • Other Salesforce clouds (Service Cloud, Commerce Cloud).

Activations carry the minimum data needed by the target — not the whole DMO. Configure which fields go and which are suppressed.

Data Spaces

Data Spaces (previously “data spaces”) separate data by business unit, region, or brand within one Data Cloud instance. Each space has its own DLOs, DSOs, DMOs, and segments.

Use spaces when you need logical isolation with shared infrastructure — one subscription, multiple tenants.

Data Flow Example

End-to-end, a typical flow looks like:

  1. Ingest: CRM Contact stream ingests into CRM_Contact__dll (DLO).
  2. Stream: Salesforce auto-creates CRM_Contact__dlm (DSO).
  3. Map: you map DSO fields to the standard Individual and Contact Point DMOs.
  4. Resolve: identity rules unify CRM Contacts with e-commerce Customers and loyalty Members in the same Unified Individual DMO.
  5. Insight: a calculated insight computes “Total Spend 90d” per Individual.
  6. Segment: a segment filters Individuals with Total Spend > $1000 and no recent email open.
  7. Activate: the segment pushes to Marketing Cloud for re-engagement emails.

Each step is owned by a different admin role in large orgs, which is why the acronyms matter — you’ll be talking to colleagues who work in specific layers.

Common Mistakes

Confusing DLO with DMO. They look similar in the UI. They’re different. Segments query DMOs, not DLOs.

Skipping identity resolution. Without it, the “unified profile” is just the first source’s profile.

Over-resolving. Aggressive probabilistic rules merge distinct people. Monitor false positives — use deterministic rules as the base, probabilistic as a cautious addition.

Too many Calculated Insights. Each costs compute. Consolidate.

Broken mappings hiding in plain sight. Source fields renamed or deprecated break downstream silently. Audit periodically.

Frequently Asked Questions

Can I query Data Cloud with SOQL?

Partially. DMOs are accessible via SQL-based Query API within Data Cloud. From external tools, use the Query API or federated zero-copy connections.

Is Data Cloud the same as the old “CDP”?

Data Cloud is the rebrand/evolution of Salesforce CDP (formerly Customer 360 Audiences). The same underlying product, expanded.

Does Data Cloud replace my warehouse?

No. It complements a warehouse for CRM/CDP use cases. Zero-copy federation means warehouse data remains in place.

How often should identity resolution run?

Typical cadence is daily for batch ingestion, hourly for near-real-time needs. More frequent runs cost more and resolve rapidly-changing data.

Share