One thing that has worked well is focusing on the processes around the CRM rather than trying to automate everything at once.
For example, using Dynamics 365 Customer Engagement with Power Automate for lead follow-ups, task reminders, notifications and customer communication can reduce a lot of manual work.
Data quality is another area that needs attention early. Having clear ownership of customer records, standardised fields and a defined approach for integrating data from other systems makes a big difference.
If starting a new implementation today, I would recommend keeping the initial scope focused on a few high-impact customer processes, getting users comfortable with them, and then expanding. It also helps to involve the people who actually use the CRM every day during the design and testing stages.
In my experience, adoption is just as important as the technical implementation. A well-configured CRM only delivers value when the sales and customer service teams actually use it consistently.