A Short Overview of the Article
In this article, the eighth in the series on Everyday Power Automate Solutions for Dynamics 365, we will build a simple Power Automate flow that sends a weekly reminder with contacts not associated with any account, making it easier for the sales team to keep the CRM data complete.
A Short Reference About the Author
Andrei is an experienced Project Manager, Microsoft-certified Consultant, and Developer with extensive technical expertise. He leads multiple projects, actively participates in industry events, and has significant experience delivering Dynamics 365 Sales and Dynamics 365 Customer Service solutions. His expertise encompasses Power Automate, Power Apps, Power Pages, Power BI, Copilot Studio, and Microsoft AI, allowing him to combine strong strategic leadership with deep technical knowledge and practical implementation experience.
Introduction
"Contacts" are one of the most important records in Dynamics 365. They store information about the people your organization communicates with and are often linked to opportunities, activities, and customer accounts. In many companies, maintaining this relationship between "Contacts" and "Accounts" is essential for reporting, customer management, and understanding the overall business relationship.
However, not every contact is linked to an account when it is created. Sometimes users lack required information, while in other cases they forget to establish the relationship later. Over time, these standalone contacts can make the data less useful and require additional effort to organize.
Requirement
In the previous article from this series, Creating a Follow-up Task After an Opportunity Wins in Dynamics 365, we learned how to build a simple Power Automate flow that helps ensure consistent customer communication while streamlining the overall sales process.
In this article, we will take it a step further by learning how to build a Power Automate flow that sends a weekly reminder listing the contacts that are not associated with an account. This helps the sales team identify and address missing relationships, keeping CRM data accurate and complete.
During one of our regular meetings, a sales manager pointed out that the number of contacts without an associated account had been steadily increasing. While creating a contact without an account was acceptable during the initial stages of communication, these records often remained unlinked long after they should have been associated with the correct company. As a result, reporting became less reliable, and it became harder to get a complete view of customer relationships.
The manager asked us to create a simple weekly reminder instead of enforcing additional validation rules during data entry. Every Monday morning, the system should identify all the contacts that are not linked to an account and send the list to the sales manager. This would allow the team to review the records, associate them with the correct accounts where appropriate, and gradually improve the overall quality of the CRM data.
Step-by-step Instructions
Once you have opened Power Automate and selected the appropriate environment, you can begin creating the flow:
-
Navigate to the environment where the automation will be created and start by setting up a new "Scheduled cloud flow." (1).

-
Enter a meaningful name for the flow (2), configure the start date, the start time, and the recurrence interval (3), and then click on the "Create" button (4).

-
Before adding any actions, go through the following steps:
1Open the "Recurrence" trigger and verify that the schedule matches the configuration from the previous step.
2After you have verified that the recurrence schedule is correct, add a new "List rows" action.
3Because the purpose of the automation is to review contacts, select the "Contacts" table in the "Table name" field.
4In our CRM setup, the company information is stored in the "Account Name" field on the "Contact" form, so add this field to the "Select columns" field.
5Because we also need a "Contact ID" to create a valid clickable link to the contact record, add the "Contact ID" to the "Select columns" field as well.
6Next, configure the "Filter rows" field. We only want to retrieve the active contacts with no accounts, so add the corresponding filter to that field.

-
Define a variable for use in the email notification. To determine the base URL for the link, open a "Contact" record in Dynamics 365 and copy the URL up to the last "=" character, excluding the record GUID. This value will be used to dynamically construct links to the individual "Contact" records.

-
Set up a string variable to contain all the information that will be included in the email (6).

-
The next step is to combine all the returned records into a single block of text so that we can send one email instead of five separate notifications. There are several ways to accomplish this, but since this series is designed for beginners, we will use the "Apply to each" action. Add an "Append to string variable" inside the "Apply to each" action (7).
Here, we will use the following expression:
concat(variables('ContactURL'),items('Apply_to_each')?['contactid'],'<br>')This expression combines multiple values into a single string, which will later be used in the email body.
! Note. When concatenating multiple fields, remember to add spaces or other separators where needed. Since the email body supports HTML formatting, it is also recommended to add a <br> tag at the end of each line. This helps separate links and makes the final email easier to read.

-
Now, create the email notification. Add a new "Send an email" action, enter the manager's email address in the "To" field, specify a subject, switch the email body to HTML format, and use the "ContactWithoutAccount" string variable as the main content of the message.

From now on, every Monday, the flow will automatically identify contacts not associated with an account and send the results in a single email to the sales manager. Instead of manually searching for incomplete records, the team can review the report and update contacts as needed.
Conclusion
Small data quality issues often go unnoticed because they do not immediately affect day-to-day work. However, as the number of incomplete records grows, they can make reporting less accurate and make it harder for users to find the information they need. A simple weekly reminder helps address these issues gradually without interrupting the normal sales process.
The flow outlined in this article is intentionally simple, but it can easily be customized to fit your specific business requirements. You could send the report to different managers, add contact details, or apply extra filtering by business unit or region. Even in its simplest form, this automation helps keep your contact data organized while requiring minimal maintenance.
Frequently Asked Questions that May Interest You
Contacts without an associated account can make customer data less complete and reduce the accuracy of reporting. A regular reminder helps sales teams identify these records and link them to the appropriate accounts when necessary.
In this example, the flow is configured to run every Monday morning. However, you can change the recurrence schedule to match your organization's needs, such as running the flow daily, weekly, or monthly.
Yes. You can modify the flow to include additional contact information, such as the contact's name, email address, or other relevant fields. You can also add filters to limit the results by criteria such as business unit or region.
Yes. The same approach can be adapted to identify other incomplete or potentially problematic records. By changing the table, filters, and information included in the email, you can create similar recurring reminders for different data quality requirements.
Related Content
UDS Blog articles:
- Creating a Follow-up Task After an Opportunity Wins in Dynamics 365
- Weekly High Value Opportunities Digest in Dynamics 365
- Dynamics 365 Opportunity Management: Detecting and Notifying Missing Fields
- Reminding about an Overdue Opportunity to Close Dates in Dynamics 365 CRM
- Detecting Duplicated Leads by Email in Dynamics 365 CRM
- Identifying and Automating Inactive Leads in Dynamics 365 CRM
- Managing Forgotten Leads in Dynamics 365 CRM
- Power Automate Solution: Instant Teams Notifications for New Contact Registrations
