Entity Relationships in Microsoft Dynamics CRM and Dynamics 365

Entity relationships in Microsoft Dynamics CRM define how one record can be connected to another record. In the older Dynamics CRM and Dynamics 365 Customer Engagement customization area, these are called entity relationships. In the current Dataverse maker experience, the same idea is usually described as table relationships, where an entity is a table and a field is a column.

Relationships help users work with related business data without designing database joins manually. For example, an Account can have many Contact records, a Contact can belong to one Account through a lookup field, and a marketing list can be associated with many contacts through a many-to-many relationship.

Microsoft Dynamics CRM commonly shows the following relationship labels in the customization UI:

  • 1:N relationships (one-to-many).
  • N:1 relationships (many-to-one).
  • N:N relationships (many-to-many).

In practice, 1:N and N:1 are two ways of viewing the same lookup-based relationship. The parent side sees it as one-to-many, while the child side sees it as many-to-one. N:N relationships are different because they use an intersect relationship table to connect records on both sides.

Dynamics CRM Relationship Types: 1:N, N:1 and N:N Explained

Relationship typeMeaning in Dynamics CRMWhere the relationship is storedSimple example
1:N (one-to-many)One parent record can be related to many child records.A lookup field is stored on the related or child entity.One Account can have many Contacts.
N:1 (many-to-one)Many records from the current entity can point to one parent record.The current entity has a lookup field to the parent entity.Many Contacts can point to the same Account.
N:N (many-to-many)Many records on one side can be related to many records on the other side.An intersect relationship table stores the links between the two entities.Many Contacts can be related to many Marketing Lists.

1:N Relationship in Dynamics CRM: One Account with Many Contacts

A 1:N relationship in Dynamics CRM means one record from the primary entity can be associated with multiple records from the related entity. The lookup field is created on the related entity, not on the primary entity. In the Account and Contact example, the Contact record stores the lookup to Account. Because of that lookup, one Account can appear as the parent for many Contact records.

This relationship is useful when there is a clear parent-child structure. Typical examples include Account to Contacts, Account to Opportunities, Case to Activities, or a custom Project entity to many Project Task records.

N:1 Relationship in Dynamics CRM: Many Contacts Pointing to One Account

An N:1 relationship in Dynamics CRM is the same lookup-based relationship viewed from the child entity. When you customize Contact and create a lookup to Account, many Contact records can reference one Account record. From the Contact side, this is many-to-one.

Example: If each Contact should belong to one Account, create or use a lookup on Contact that points to Account. The Account form can then show a related list of Contacts, while the Contact form can show a single Account lookup field.

N:N Relationship in Dynamics CRM: Many Records on Both Sides

An N:N relationship in Dynamics CRM connects records in both directions without a parent-child hierarchy. Neither side owns the other side. Dynamics CRM stores the connection through an intersect relationship table that contains the IDs needed to associate the two records.

Example: A Contact can be associated with many Marketing Lists, and each Marketing List can contain many Contacts. This is a natural many-to-many relationship because both sides can have multiple related records.

Use an N:N relationship when you only need to know that two records are connected. If you need to store extra details about the connection, such as role, start date, percentage, status, or notes, create a custom intersect entity instead of relying only on a native N:N relationship.

Before Creating a 1:N Relationship in Dynamics CRM

Before you create a new relationship, confirm the business rule you are trying to model. Most relationship issues come from choosing the wrong side for the lookup or creating a duplicate relationship when an existing one can be reused.

  • Identify the parent entity: This is the one side of the relationship, such as Account.
  • Identify the related entity: This is the many side of the relationship, such as Contact.
  • Check existing relationships: Standard entities often already have suitable relationships.
  • Decide the lookup display name: This is the field users will see on the related entity form.
  • Plan relationship behavior: Decide what should happen when the parent record is assigned, shared, deleted, merged, or reparented.
  • Plan field mapping: Use mapping only when values should be copied while creating a related record from the parent record.

In this Microsoft Dynamics CRM tutorial, we create a 1:N relationship between Account and Contacts. One Account can have many Contact records, but each Contact record points to one Account through the lookup relationship.

Create a 1:N Relationship Between Account and Contact in Dynamics CRM

The following steps use the classic Dynamics CRM customization experience. In newer Power Apps maker pages, the same configuration is available under the table designer by opening a table and selecting its relationships. The main concept remains the same: a lookup column creates the connection between the parent and related records.

  • Navigate to Settings | Customizations | Customize the System.
how to export solution package 1

In the solution explorer, go to Components, expand Entities, and select the entity that should act as the primary entity for the one-to-many relationship. For the Account and Contact example, Account is the primary entity.

  • To create a new 1:N relationship, expand the selected entity and click 1:N Relationships as shown below.
Entity Relationships in Microsoft Dynamics CRM

For a new relationship, review the Relationship Definition section. In the Related Entity list, select the entity that should appear on the many side of the relationship. In this example, the related entity is Contact.

  • Select whether the relationship should be searchable.
  • In the Lookup Field section, enter a clear value for the Display Name.
  • Review the generated relationship name. If your organization uses solution publisher prefixes carefully, create the relationship from the correct solution.
  • Choose how the related records should appear in the navigation area of the primary entity form.
Entity Relationships in Microsoft Dynamics CRM

Enter the required details in Relationship Definition, Lookup Field, Navigation Pane Item for Primary Entity, and Relationship Behavior. The lookup field is the visible field users will work with on the related record, while relationship behavior controls how actions on the parent record affect related child records.

  • Click Save and then publish all customizations.
  • Open Mapping if you want selected field values to be copied from the source entity to the target entity when a related record is created from the parent record.
  • Click New to create a mapping between Account and Contact fields where mapping is required.
Entity Relationships in Microsoft Dynamics CRM

How Relationship Mapping Works for Account and Contact Fields

Relationship mapping in Dynamics CRM is often misunderstood. A field mapping does not keep two fields synchronized forever. It copies a value from the source record to the new related record only when the user creates that related record from the parent record context.

For example, if a user opens an Account and creates a new Contact from the related Contacts area, a mapping can copy the Account phone number or address into the new Contact record. If the Account address changes later, the mapped Contact address is not automatically updated by the mapping. For ongoing synchronization, use business rules, workflows, Power Automate, plugins, or another controlled automation approach.

Choosing Relationship Behavior for Dynamics CRM Parent and Child Records

Relationship behavior controls what happens to related records when users perform actions on the parent record. This is especially important for 1:N relationships because a parent record can have many child records.

  • Assign behavior: Decide whether assigning the parent record should also assign related records.
  • Share and unshare behavior: Decide whether sharing access to the parent should affect child records.
  • Delete behavior: Decide whether deletion should be restricted, cascaded, or handled without deleting related records.
  • Reparent behavior: Decide what happens when a child record is moved from one parent record to another.
  • Merge behavior: Decide how related records are handled when duplicate parent records are merged.

Use restrictive behavior when child records must be preserved for audit, service, or reporting reasons. Use cascading behavior only when the related records should clearly follow the parent record action.

Common Mistakes in Dynamics CRM 1:N, N:1 and N:N Relationships

  • Creating the lookup on the wrong entity: In a 1:N relationship, the lookup belongs on the many side, not on the one side.
  • Treating N:1 as a separate physical relationship: N:1 is the same lookup relationship viewed from the related entity side.
  • Using N:N when the connection needs extra fields: Use a custom intersect entity if the relationship itself needs data such as role, dates, percentage, or status.
  • Expecting mappings to update existing child records: Mapping copies values during record creation only.
  • Ignoring cascade behavior: Incorrect delete or assign behavior can create data integrity and ownership problems.
  • Creating duplicate relationships: Check existing standard and custom relationships before adding a new one.

FAQ About Dynamics CRM Relationships

What are the different types of relationships in Dynamics 365 CRM?

Dynamics 365 CRM commonly shows 1:N, N:1, and N:N relationships. A 1:N relationship means one parent record can have many related records. An N:1 relationship is the same lookup relationship viewed from the many side. An N:N relationship connects many records on both sides through an intersect relationship table.

What is a 1:N relationship in Microsoft Dynamics CRM?

A 1:N relationship in Microsoft Dynamics CRM is a one-to-many relationship. One primary record, such as an Account, can be associated with many related records, such as Contacts. The lookup field is stored on the related or child entity.

What is an N:1 relationship in Dynamics CRM?

An N:1 relationship is a many-to-one relationship from the current entity point of view. For example, many Contact records can point to one Account record through an Account lookup field on Contact.

What is an N:N relationship in Dynamics 365?

An N:N relationship is a many-to-many relationship where many records from one entity can be related to many records from another entity. Dynamics stores the association in an intersect relationship table. Use a custom intersect entity instead if you need to store extra details about each connection.

Does Dynamics CRM support a true one-to-one relationship?

Dynamics CRM and Dataverse do not provide a separate native 1:1 relationship type in the same way they provide 1:N and N:N relationship options. A one-to-one design is usually modeled with a lookup plus business rules, alternate keys, automation, or security controls to prevent multiple related records where required.

Editorial QA Checklist for Dynamics CRM Relationship Tutorials

  • Confirm that the parent and related entity names are consistent throughout the tutorial.
  • Check that the lookup field is described as being stored on the many side of a 1:N relationship.
  • Verify that N:1 is explained as the child-side view of the same lookup relationship.
  • Confirm that N:N guidance mentions the intersect relationship table and its limitation for storing extra relationship details.
  • Check that relationship mapping is not described as ongoing synchronization.
  • Review cascade behavior guidance before recommending delete, assign, share, or reparent settings.
  • Make sure the classic Dynamics CRM navigation is not confused with the newer Power Apps table designer terminology.

With these concepts clear, you can choose the correct relationship type for a Dynamics CRM customization: use 1:N or N:1 for lookup-based parent-child data, use N:N for simple many-to-many associations, and use a custom intersect entity when the relationship itself needs its own fields or business logic.