Crash Course: Data Cloud with Live Project in Salesforce

A hands-on crash course that walks you through unifying customer data from two companies into a single Individual in Salesforce Data Cloud, then surfacing insights and CRM experiences like lifetime bookings and lifetime value.

Overview

This crash course demonstrates how to ingest, model, and unify customer data from two separate sources (a private server and a Salesforce org) into Salesforce Data Cloud. You will create Data Streams, map Data Lake Objects (DLOs) to Data Model Objects (DMOs), configure identity resolution, and publish calculated insights for use inside Salesforce.

Scenario & Architecture

We’ll unify customer data from:

  • Company A (Right Swift Rental): Customer + Vehicle Booking (private server)
  • Company B (Adventure Cloud): Contact + Adventure Booking (Salesforce org)

Target: Build a unified Individual in Data Cloud, link bookings from both companies to it, then create insights and expose those records inside Salesforce CRM.

Prerequisites

  • Access to Salesforce Data Cloud
  • Source connections for both datasets
  • Basic familiarity with DLO/DMO and the Data Explorer UI

Step-by-step Guide

Follow these distilled steps to implement the pattern:

  • Create Data Streams: Connect both source environments and create streams for Contact, Customer, and Vehicle Booking to bring raw records into the Data Lake.
  • Map DLOs to DMOs: Map Contact to Individual, consolidate Customer fields into Individual, and create a custom DMO for Vehicle Booking if no standard entity exists.
  • Define Relationships & Cardinality: Relate Vehicle Booking DMO to Individual using the person key and set many-to-one cardinality.
  • Validate in Data Explorer: Spot-check records to confirm linked Contact and Customer information; expect duplicates.
  • Configure Identity Resolution: Create a rule set with match rules (fuzzy name, normalized email) to merge duplicates into a Unified Individual.
  • Expose Unified Data in Salesforce: Add related lists (e.g., Vehicle Booking) on Contact pages sourced from Data Cloud; include key booking fields and adjust filters (remove 7-day default).
  • Create Calculated Insights: Build metrics like Lifetime Bookings (count) and Lifetime Value (sum) per Unified Individual and publish them.
  • Extend Pattern: Repeat for Adventure Booking and any additional sources to fold into the same identity resolution and insights.

Best Practices & Notes

  • Primary keys matter: ensure Contact ID / Customer ID mappings are accurate.
  • Start identity rules conservatively (email + fuzzy name) and iterate to avoid incorrect merges.
  • Create custom DMOs when standard entities don’t fit (e.g., Vehicle Booking) for clarity and reuse.
  • Adjust CRM related list filters to avoid missing historical data due to defaults.

Why this Matters

By unifying siloed customer records into a single Individual and surfacing booking history and calculated metrics inside Salesforce, sellers and service teams get a complete view of customer activity to drive better decisions, personalized outreach, and accurate reporting.

If you’d like to follow along with the full video walkthrough, check the original playlist and try this pattern in a sandbox environment.

Conclusion

For Salesforce admins, developers, and business users, this pattern reduces data fragmentation, improves customer insights, and enables consistent experiences across CRM and analytics. Start with conservative identity rules, validate with sample records, and iterate as additional sources are added.