Salesforce DictionaryLoosely coupled vs tightly coupled relationships
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).
A Master-Detail Relationship in Salesforce creates a tightly coupled parent-child link between two objects. The detail (child) record inherits the sharing and security settings of the master (parent), the lookup field is always required, and deleting the master record cascades to delete all related detail records. This relationship type enables Roll-Up Summary Fields on the master object.
| Dimension | Lookup Relationship | Master-Detail Relationship |
|---|---|---|
| Coupling | Loose — child can exist independently | Tight — child cannot exist without parent |
| Deletion | Deleting parent does not delete children | Deleting parent cascades to children |
| Required | Lookup field can be optional | Parent field is always required |
| Roll-Up Summaries | Not supported natively | Supported (COUNT, SUM, MIN, MAX) |
| Ownership | Child has its own owner | Child inherits parent's owner |
When child records should exist independently or parent is optional.
When child records must always belong to a parent and you need roll-up summaries.