So far, we have discussed CRMs generically, comparing how they are used in the business world with the non-profit sector. However, there are many options for implementing a CRM, so when is CiviCRM the best CRM? CiviCRM is great for organizations that need to work with a lot of contact data, especially those that want to use sophisticated functionality prebuilt for common non-profit transactional use cases including the following:
- Donations and pledges
- Events management
- Membership management
- Case management
- Bulk e-mailing
If your organization requires functionality in a couple of these areas, then it is very likely that you would benefit from CiviCRM. CiviCRM's integration with Joomla! and Drupal (popular open source content management systems that are excellent for running your website) also distinguishes it from a number of competing CRMs.
We're going to explain the many reasons why CiviCRM does so well in surveys of non-profit technology users. Still, we want to acknowledge upfront that CiviCRM isn't the right tool for every non-profit to manage its constituent relationships. It depends on your needs and resources, which can make it too big or too small, too feature-rich, or not flexible or powerful enough. This section provides some general guidelines for situations where you might want to consider an alternative to CiviCRM. We have tended to err on the side of excluding some cases, where people can, and have, successfully and happily used CiviCRM rather than including cases where people's expectations may not be met and surpassed.
As a low-end cut-off, your organization needs to have resources to set up, host, and maintain CiviCRM, either by paying a hosting provider and consultants, or by using internal staff resources. Tiny community groups with no budget or IT resources will not be able to afford these costs even though CiviCRM is free open source software without any upfront or ongoing license fees. While the public-facing pages are easy-to-use, administering a CRM also requires a certain amount of tech-savviness to construct searches, set up templates that will be merged with contact data for e-mail blasts, decide on the fields to put on forms, and other similar activities. More advanced skills are necessary for some initial setup tasks such as configuring e-commerce connections to payment processors and designing how to store information among fields representing contacts, their contributions, participation in events, memberships, relations with other contacts, and so on. Not all organizations have these skills available internally, or can afford to outsource for them.
If your organization does not have a need for more than one kind of CRM functionality, and especially if your needs are simple in that area, then it might be better to use a single-purpose tool, whether free, purchased, or available through paid subscriptions. Best-of-breed single-purpose tools can provide superior usability, desirable flexibility, lower cost, lower administrative burdens, and higher-end features for that particular functionality. Google, Yahoo!, and numerous other providers of free group e-mail broadcast and discussion software is one example. EventBrite is an example in the events management area; e-mail management systems like ExactTarget can be good for bulk e-mails. Many single-purpose tools have built out some functionality into other areas, but are primarily focused on one area. In contrast, CiviCRM is very good in most of these functional areas. Its superior capabilities across many areas needed by non-profits, advocacy, and membership-based organizations usually sets it above competitors with even moderate CRM functionality.
A downside for many organizations is that they start using one of these services to meet one need, and then adopt a second for a requirement in a different area, and soon end up with multiple data silos, systems that won't talk to each other, or complex data-syncing protocols and issues. Migrating to CiviCRM at that point is common, but the additional hassle of the migration and change in tools and procedures can be avoided by choosing CiviCRM from the start.
A different type of problem confronts organizations that have significant and well-defined needs that are not met by CiviCRM out-of-the-box or through configuration. In these cases, the question is often between building an in-house application and getting an externally-developed application like CiviCRM to do the job. CiviCRM as the base of a custom solution makes sense in a number of these scenarios. Some are specifically listed, as follows:
- When the functionality being developed will be integrated into core (that is, the CiviCRM software that everyone downloads), similar to the case management functionality developed for the Physician's Health Program of British Columbia
- When you have the skills to decode the various technologies used to build CiviCRM or the budget to hire those who can do that
- When you are willing to invest more initially in more general and customizable software, in return for getting the services of other users who will report bugs, improve documentation, submit patches, and enhance the functionality you have contributed
- When you can work with the core team and community effectively, which usually involves more time and a willingness to take other viewpoints and interests into account, which often includes the benefit of others sharing the costs of development
There are some scenarios when using CiviCRM as a base of custom solution doesn't make sense. For example, it can be cheaper and simpler to build a single CRM feature in Drupal or another CMS, especially if you don't need the rest of CiviCRM's functionality.
The strong advantages of building functionality into a full-fledged CRM also sometimes need to be balanced against the high cost of extending CiviCRM. It is programmed in PHP, Smarty templates, and other technologies such as jQuery using enterprise-oriented n-tier architecture. The variety of libraries and technologies and the size of the codebase have presented barriers for developers hoping to modify or extend the software that the CiviCRM team distributes and maintains. Developing in the CiviCRM project usually results in longer timeframes, higher costs, and a greater difficulty in sourcing personnel for development and maintenance as compared to building the same custom functionality in a rapid application development framework such as Drupal.
Though it wouldn't make sense for your organization to re-implement CiviCRM functionality, it can often make sense to extend CiviCRM with Drupal modules (or perhaps Joomla! extensions), especially with the variety of existing Drupal integration modules available for custom content, views, and access control. It is worth noting that several areas of CiviCRM functionality had been initially developed as Drupal modules. Then, as the use cases became clearer and the demand for integration with other CiviCRM functionality grew, they were re-implemented within CiviCRM itself.
CiviCRM is an open source project that is quite responsive to community needs and contributions to address areas it does not currently cover. Indeed, the project generally extends its functionality by working closely with organizations that can sponsor new functionality or contribute new features back. Instead of hacking the core just for your own implementation, you can improve the core code so that it handles your own needs and those of others with similar needs.
If you search the CiviCRM wiki (http://wiki.civicrm.org) and forums (http://forum.civicrm.org), and communicate with the core team and the community via the forums, you may find that there are others who are interested in the same functionality and may be able to contribute something to having it built. Even if your needs are unique, there may be ways to generalize them so that they can be met with software that addresses the needs of others at the same time. Autumn 2010 saw some early successes with a Make It Happen initiative that helped aggregate support from many users and consultants for several new pieces of functionality.
Alternatively, your forum post may result in suggestions for simple or ingenious workarounds that can suffice in addressing an oddity in your requirements that was holding your organization back from going with CiviCRM.
While the burden of maintaining your own code in sync with changes in the core is significant, well-resourced organizations sometimes find that it makes most sense to develop custom versions of open source software containing features that are not shared back with the community. Usually, this is because the needs are quite unique, such as integrating with a custom in-house legacy application.
When deciding on a CRM tool, there are many existing CRM offerings that could be considered. The Nonprofit Technology Network (http://NTEN.org) conducts periodic surveys of technology use in the non-profit sector and publishes the results. Though they are heavily focused on North American non-profits, they provide a good indication of CRM market penetration and user satisfaction with common solutions in this very large and influential region.
CiviCRM, Salesforce, and Convio are the three most-used systems in the most recent surveys. Other providers or tools widely used or acceptably rated in these surveys include Antharia, Blackbaud, SugarCRM, Kintera Sphere, DemocracyInAction, and Organizer's Database. Although the cost and functionality are significantly different, AmDocs and Microsoft CRM are other notable CRM systems in the larger non-profit sector, while Salsa sometimes crosses over from its focus on small and medium sized businesses.
Needs vary from one organization that uses a CRM to another. This affects which CRM is best for them. For example, Salesforce has tended to do better with large organizations (those with greater than $3M budget), though the CiviAccount enhancements in 2011 may change this. As you evaluate a CRM tool for your organization, you should take into account the current and expected needs of your organization, as well as the current and anticipated functionality in possible CRMs. Given this caveat, the next section will outline common reasons for adopting CiviCRM over the other alternatives.