HOW TO DEVELOP A CRM SYSTEM FROM SCRATCH
Every dollar invested in the CRM, gives 9 dollars of profit. True, this is true only if the integrated system meets the needs and specifics of a particular business, which is not always the case: 70% of implementations of CRM fail. The main reasons for most failures - the desire to save money and the wrong approach to development.
The desire to save money is expressed in the fact that for the sake of imaginary savings entrepreneurs prefer ready-made products instead of creating a unique software solution, which will take into account all the features of a particular business and its target audience.
Step 1: Choosing the type, roles and platforms
Before you start developing a CRM from scratch, you need to answer a few important questions that will help you decide on the scope and set of features you need in the final product.
Types of CRM-systems
Operational - optimization and automation of sales, customer service and marketing. This type of CRM-application is suitable for businesses that interact with customers via call-centers, blogs, web-sites, communities, direct correspondence and direct sales.
The main features of operational CRM systems are:
- A single customer database for easy and quick access by all employees to data on all past and planned interactions with each customer.
- Use of a large number of communication channels: e-mail, social networks, phone calls, personal office, personal conversations in the office and branches.
- Registration, processing and execution of all customer requests and saving the necessary data in the billing system.
- Continuous analysis of customer interactions and generating reports for organizational tasks, such as segmenting customers based on their importance.
- Distribution of tasks, typical scenarios of interaction separately with current and potential customers and automation of request processing.
- Analytical - collecting information from multiple points of contact with the customer and processing of this data. The main purpose of such CRM is to help organize daily (operational) work with customers and forming of analytics for development and planning of scenarios of interaction with customers.
The main features of analytical CRM-systems:
- Analysis of customer enquiries and their main attributes;
- segmentation of customers into groups according to different parameters (geography, purchase amount, spent amount, engagement and loyalty)
- prediction of the results of interaction with the client, for example, reaction to a unique offer, promotion, sale, request to leave a review.
- Strategic - improving communication and teamwork within the company. Collaborative CRM helps to unite several company departments (sales, marketing, technical support) to achieve a common goal - the use of accumulated data to improve service quality, loyalty and attract new customers.
Step 2: Decide on CRM functions
According to Software Advice (research and user reviews of software applications for small and medium-sized businesses), contact management, customer interaction tracking, and scheduling are mandatory features when developing a CRM. The other functions are optional.
The choice of CRM-system functions depends on the tasks you set before it. This is usually most influenced by the size of the business:
- The sole proprietor. Usually single users only need a Customer Database to manage and track customer relationships. This saves a lot of time and nerves.
- Small business. Larger entrepreneurs in most cases need Salesforce Automation down to monitoring and tracking the actions of individual sales representatives.
- Medium business. Such companies focus on sales and marketing automation. In addition, they need analytics to predict business processes and create marketing strategies.
- Large business. For large companies, everything from sales to strategy is important, so they need full-fledged, combined CRM systems.
Step 3: Calculate the development budget
Many factors affect the cost and development time of CRM applications. The main ones are as follows:
- The number of functions. The implementation of each function in the program code requires a certain number of man-hours. This is the time paid by the customer the developer's company margin.
- The number of roles (types of access). For example, it could be the role of the General Manager, Supervisor, Salesperson or Branch. All of these roles have different access rights and capabilities within the system, and the implementation of each of them requires man-hours.
- Support Platforms. The more there are, the higher the cost of the final software product. Mobile access can be implemented either as an adaptive web browser design, or as a separate application (increases total development time by 50-60%).
- The way information is entered. Managers can create and edit client profiles manually or the system can do it automatically. Last option requires a lot of time to implement, and therefore greatly increases the cost of development.
- Events and tasks. These elements can be implemented as simple notes, contain labels and attributes, interact with invoices, track deadlines and make reminders.
- Sales Funnel. Can be a simple visual representation in which managers manually change the status of a lead. Or it can be a solution with automated business logic that moves the lead through the sales funnel and records all interactions.
- Interaction Reports. The usual reporting can be supplemented with the ability to assess potential customers by their profitability and possible reaction to offers. It's also possible to collect data on interactions with customers in social networks.
- Integration with other services. The cost of developing this function depends on the number and complexity of third-party services.
Step 5: Staff training
If the developer of CRM-application and its user - are different persons, then you need to organize training of staff. At the same time, training should begin some time before the deployment of the software product, so that staff immediately know what to do and how to do it.
This can be done in two ways:
- Allocate a few people (the number depends on the size of the company) who will start to learn the system in the last stages of development after most decisions about scenarios for using the product have already been made. Once these people understand what to do and how to do it, organize several courses and write instructions for each element of the program.
- Arrange for the development company to write training materials and train the staff. It will cost a little more, but it won't distract employees from their jobs.