Challenges in CRM implementation can be broadly categorised into people, process, and technology issues. Understanding them up front is how you avoid them.

Challenges in CRM Implementation can be broadly categorized into People Challenges, Technology Challenges, Business Process Challenges, and Other Challenges.
CRM initiatives solely driven by IT teams without management buy-in; business users unclear on benefits; management unwilling to commit to enforcing CRM adoption. Mitigation: Having an internal CRM champion from executive management.
Trying to accomplish all CRM objectives in the initial launch; adopting a Waterfall methodology instead of Agile; underestimating end-user transition by giving a full-featured, complex CRM from the get-go. Mitigation: Adopt the "Think Big, Start Small, Move Fast" strategy for CRM.
Not committing adequate time and budget to requirement discovery; underestimating integration effort, data migration complexity, end-user resistance, training costs, and infrastructure costs. Mitigation: Detailed requirement discovery workshops using Agile project methodology.
Active resistance due to perceived threat from CRM; passive resistance due to inertia; CRM interface slow or unintuitive; CRM viewed as "something that benefits management only." Mitigation: Make end-users aware of what benefits they get. Incentivize adoption. Ensure an intuitive, easy-to-use, fast CRM system. Plan adequate training exercises.
Internal CRM champions leaving; arrival of new IT or Business Heads with different visions; changes in key CRM vendor personnel. Mitigation: Adequate documentation of CRM project objectives and intermediate progress sign-offs. Enlist more than one internal CRM champion for redundancy.
Vendor does not have enough experience with the CRM product; lacks technology or process maturity for delivering projects of similar scale; ill-prepared to anticipate implementation challenges. Mitigation: Adequate due diligence at vendor selection stage to assess vendor maturity and expertise.
Product cannot support multiple deployment options (Cloud, On-Premise, Private Cloud); not flexible enough for deeper customizations; not keeping pace with current CRM trends (Global, Social, Mobile); not intuitive or user-friendly. Mitigation: Due diligence at product selection for both current and future business needs.
Existing legacy systems don't support modern web-services based integration; lack of support from other vendors; data integrity issues and uncertainty over "single source of truth." Mitigation: Identify what data needs to be pulled from where, involve existing systems' vendors early, develop prototypes where needed.
On-Premise: inadequately sized hardware, underestimating high-availability setup budget. On-Cloud: underestimating scaling costs, lack of complete data control, compliance/regulatory issues. Mitigation: Plan carefully upfront. Best, choose a CRM that supports both models.
Data fragmented and siloed in various applications; data integrity issues in migrated data; incorrect assumptions about data quality. Mitigation: Know your data — clarity about how much, how good, and where it is, is mandatory.
Considering CRM as just a technology instead of a business transformation tool; inflexibility to change existing ways of doing things; implementation that is overly disruptive. Mitigation: Recognize the transformative power of CRM, be flexible to adopt best practices. Enlist an executive management sponsor early on.