Home StreamsMarketing Dynamic Content and Content Assist

Dynamic Content and Content Assist

by Mo Faheem
Dynamic Content and Content Assist

Personalize Marketing

Personalizing messages is required by many marketing teams by adding contact details. Using “Content Assist” both dynamic content and static can be added to the email body or other fields such as the subject, sender and recipient. This data can be set to present information from the contact record (the recipient of the email), from ContentSetting, Form Submission or related to the Message.

Dynamic Content and Content Assist edit

It is important to mention that this data will be relating to its sources as per the email itself and the Customer Journey that it belongs to.

For example, suppose the following code is included to show the sender’s main address {{msdyncrm_contentsettings.msdyncrm_addressmain}}, and there are multiple ContentSettings configured. In that case, Dynamics will use the ContentSetting that is chosen in the Customer Journey to update this data.

Dynamic Content and Content Assist

Assist Edit </>

From many location within the Marketing Email or Email templates, users can add dynamic data using the Assist edit </>.

  1. From within the body of the email
  2. Other email properties
Assist Edit </>

Dynamic tags

All the dynamic content will be contained in double curly brackets {{}}. and will contain the table name and separated with dot “.” with either another table relation or field.

Content Types

1. Dynamic Content

This content renders differently based on the reciver of the email or where it is used.


A. Contact

The contact is the email receiver, and we can include information, such as first name, last name, or from another synced table that has a relation with the contact table. To read more about syncing other tables.

In the example {{contact.firstname}} will render the contact first name in the email body.

Content Assisst - contact

B. Content Settings

Content settings don’t have a relation with other tables, and it is used to include information such as address, social media pages and subscription center.

It is essential to know that having an address and subscription center increases the recipient mail server’s acceptance, which increases the email delivery rate. Moreover, having this information is required to comply with GDPR.

Therefore, If an email doesn’t include an address and subscription center will fail when checking for error and will fail to go live.

An organization can have more than one location and therefore can have more than one Content settings record.

Content Settings

C. FormDoiSubmission

Same as Content Settings, FormDoiSubmission doesnt have any relation with other tables.

FormDoiSubmission is only used with forms double opt-in which doesn’t make it applicable for all the cases such as the other three options.

FormDoiSubmission has set of fields that can be included :

  • ConfirmationURL
  • FormDoiSubmissionId
  • SubscriptionListNames
content assist - FormDoiSubmission

D. Message

The Message option shows information regarding the email message itself and does not have a relation to other tables.

Message has set of fields that can be included :

  • ConfirmationObjectDescription
  • ConfirmationObjectName
  • ConfirmationObjectValue
  • ConfirmationRedirectURL
  • ConfirmationRequestType
  • ViewWebpageURL
content assist - message

3. Static Content

Static content is fixed values in all the emails that will be sent and has to have a GUID in the dynamic content.


All synced data can be selected and further relations to other synced tables can be included. To read more about syncing other tables.

Static Content

Adding email conditional content

In many cases, the email can include information that is depending on a certain condition. For example, the email contains an image from a specific industry, and the Dynamics 365 Marketing user targets different industries with the same email message. The user can show the different image as per the industry of the email recipient.

If statment can be included in the email body, either in a code section <> or in the HTM editor.

example: {{#if (eq contact.contact_account_parentcustomerid.industrycode '1")}} Content {{/if}}

1:n relation

In one to many relations, where contacts can have a relation with more than one record. #each code is needed to loop within all the related records.

For example, one contact can have multiple leads, and Dynamics 365 Marketing will require an #each code to loop all related leads.

{{#each Entity.RelationshipName }}

{{#each contact.contactleads_contact_lead}}

Content assist - #each one to many realtion

Related Articles

Leave a Comment