Lookup Relationship

Core CRM 🟢 Beginner
📖 4 min read

Definition

A Lookup Relationship in Salesforce creates a loose association between two objects, similar to a foreign key in a relational database. Unlike Master-Detail, a Lookup Relationship does not enforce cascading delete, does not support Roll-Up Summary Fields natively, and allows the lookup field to be optional (blank).

Real-World Example

At FreshGrocer, each Case record has a Lookup Relationship to the Contact object. This links a support Case to the person who submitted it. However, if the Contact is deleted, the Case remains intact with the lookup field set to blank. A single Contact can be associated with many Cases, and Cases can also exist without a linked Contact for anonymous inquiries.

Why Lookup Relationship Matters

A Lookup Relationship in Salesforce creates a loose association between two objects by storing a reference to a parent record in a field on the child record. Unlike Master-Detail relationships, Lookup Relationships do not enforce cascading deletes - if the parent record is deleted, the child record remains with the lookup field set to blank. The lookup field can also be left empty, making the relationship optional. This flexibility makes Lookup Relationships the appropriate choice when child records have independent lifecycle and meaning outside the parent relationship, such as a Case that can exist without a linked Contact for anonymous inquiries.

Understanding when to use a Lookup Relationship versus a Master-Detail is a foundational architectural decision in Salesforce. Lookup Relationships trade the built-in features of Master-Detail (cascading deletes, Roll-Up Summary Fields, automatic sharing inheritance) for flexibility and independence. Organizations that choose Lookup when they need Master-Detail behavior end up building workarounds for rollup calculations and struggling with sharing rules. Conversely, choosing Master-Detail when a Lookup is appropriate causes data loss when parent records are deleted and forces unnecessary parent-child dependencies. As the data model grows, correcting these relationship type mistakes becomes increasingly expensive due to data migration and automation rewiring.

How Organizations Use Lookup Relationship

  • FreshGrocer Markets — FreshGrocer uses a Lookup Relationship from Case to Contact so that support cases are linked to the person who submitted them. When a contact is deleted (e.g., a former employee), the associated cases remain intact for audit purposes with the contact field blanked out. This preserves the full case history even when the submitter is no longer in the system.
  • Orbis Consulting — Orbis has a Lookup Relationship from their custom Deliverable object to the Project object. Deliverables can exist independently as templates before being assigned to a project, and completed deliverables persist even after a project is archived and deleted. This independence supports their template library and historical records simultaneously.
  • VectorDrive Automotive — VectorDrive uses a Lookup Relationship from Vehicle Service Record to Vehicle. Each service record references the vehicle serviced, but service records must survive vehicle disposal for warranty and regulatory compliance. They use DLRS (Declarative Lookup Rollup Summaries) to calculate total services per vehicle since native rollups require Master-Detail.

🧠 Test Your Knowledge

See something that could be improved?

Suggest an Edit