Written by Jonathan Richter
- Defining Custom CRM Development
- What is the Custom CRM Development Process?
As an established business, you’ve likely heard about ‘Ready CRM’ (Customer Relationship Management) platforms such as Salesforce or Hubspot. These platforms allow you to track customer outreach and activity, and can help drive engagement with your customers online. However, some businesses opt to build a ‘Custom CRM’ from scratch rather than pay for a ‘Ready CRM’ solution.
So what exactly is ‘Custom CRM’ development, and why do some people choose to build in-house software rather than use the ‘ready CRM’ options?
This article defines Custom CRM development, and discusses our general approach to building a tailor-made software system. If you’re a business owner who’s contemplating whether or not custom CRM development is right for your business, this article is for you.
After you read this article you’ll have a better understanding of what custom CRM development is and how the process works!
Wondering what CRM means? Check out our related article “What is CRM and What Does it stand for?”
Part 1: Defining Custom CRM Development
As you’ll learn later in this article, people use the term ‘Custom CRM development’ in different ways. Winnona Partners defines Custom CRM development as: “the process of independently developing a CRM software system from scratch, typically without leveraging ‘Ready CRM’ platforms or services.“
It’s important to note that while ‘CRM’ stands for Customer Relationship Management, modern CRM systems can assist with the bulk of internal business operations as well. Business automation, employee management, scheduling, data tracking and analytics are all aspects that one can expect from an optimal CRM solution in 2021.
This leads to some important questions for businesses to consider: What extent of CRM features do you need? Is a ‘Ready CRM’ platform going to cut it, or could you actually save money and get more business-specific features with a Custom CRM?
To help you answer these questions, we’ll dive deeper into the Custom CRM development process below. But first, let’s be clear about what custom development is and what it isn’t.
WARNING: There’s inconsistency in the way people define ‘Custom CRM’
Considering the opening statements of this article, it seems like businesses only have a binary choice when it comes to choosing a CRM: ‘Ready’ vs. ‘Custom’. Right? Well, unfortunately it’s a little more complicated than that.
Both Ready CRM companies and independent developers use the term ‘custom’ development. But really, they’re just making use of features that already exist.
Ready CRM ‘customization’
For example, established enterprise platforms like Salesforce and Hubspot are now frequently referring to their systems (or parts of their systems) as ‘custom’, when in reality they’re still referring to pre-built features and functionality.
Even the emerging popular platform Monday.com touts their system as “totally customizable”, when in reality it’s still just combining features that already exist in a template format. Simply put, these enterprise solutions are saying you have the ability to ‘customize’ features that are already made.
In other cases these Ready CRMs may support some degree of custom integrations or website design, which is somewhat of a hybrid approach. Essentially, this means your development team can build a tool or functionality that can plug into their already existing infrastructure.
To put it bluntly, it’s unlikely anyone on a Ready CRM development team is going to build a feature just for you “from scratch”. You’ll need to spend some time analyzing which features you absolutely need. Then, you can determine which of those features will need to be custom-built by your team, and which can be optimized and handled directly by the Ready CRM.
Developers’ loose definition of ‘customization’
Additionally, some independent software development companies also claim they specialize in ‘custom CRM development’. But when you look at their service offering more closely, you’ll notice they’re actually talking about helping you choose a ‘Ready CRM’, or helping you optimize your existing ‘Ready CRM’, rather than building one from scratch.
This is not custom software development as we’ve defined it above. As they’re defining it, the only ‘custom’ aspect of their service is the recommendation about which platform you should use! A more fitting term for this type of development might be Ready CRM “consultation”, “system organization”, or “feature optimization”.
Custom vs. Ready CRM: Summary of differences
So how do you determine if a company truly offers fully ‘custom’ development? To summarize:
Fully custom development is not:
- Helping you choose a ‘Ready CRM’ solution (like Salesforce or Hubspot)
- Organizing your pre-built ‘Ready CRM’ features
- Optimizing the way your ‘Ready CRM’ features work
- Designing or integrating a website with a ‘Ready CRM’ template
Fully custom development is:
- Evaluating the fine details of your business process to determine ways in which software can assist your specific flow
- Determining cost-effective ways to automate parts of your business
- Integration with necessary third party systems in ways that ‘Ready CRMs’ can not
- Creating a new software system from scratch based on the needs of your business, while avoiding unnecessary features
Part 2: What is the Custom CRM development process?
We’ve defined what custom CRM development is and is not. But importantly, there’s still questions concerning ‘how’ custom CRMs are developed. This section will help answer the underlying question: what is the custom CRM development process?
When it comes to custom CRM development, and custom software development in general, there’s a lot of careful planning that needs to take place.
First, developers and the business owners must gain a clear understanding of how the business operates today. Second, you need to work together to establish clear project goals and milestones. Third, an effective development team will help you consider how to best leverage technology to achieve those goals. Lastly, you’ll want to plan a feasible development schedule that satisfies the tech requirements.
1. Understand how the business currently operates
Before diving into all the possible features and functionality of your CRM, it’s important to understand how the business currently operates. Having a thorough understanding of how a business works is crucial before one can determine what the best course of action will be from a tech standpoint.
This part of the process is similar to visiting a doctor. They wouldn’t (or at least shouldn’t) just take a quick look at you and write a prescription! First, they ask a series of questions to determine your history and how you’re doing today. Only when they have a clear diagnosis will they offer a solution.
At Winnona Partners, we take a similar approach to software development. Project managers both on the company side and on the developer side must communicate the business process clearly. Therefore, a big part of communication on the developer end is to ask the right questions early on.
Top 5 initial questions to ask a business interested in custom CRM development
Here’s the top five initial questions we typically ask when working with a new CRM client:
- What is the current size of your organization, and how many people do you think need to use the system?
- What is the lifecycle of your workflow from start to finish?
- How long does this workflow typically take?
- Are you using any other systems? If so, what are they and which features are most important?
- What are your operating costs (including fees for the aforementioned systems)?
You may be asking, what is a ‘workflow‘? In this context, workflow refers to the steps you take to complete an ‘order’ in your business. A oversimplified example of a retailer workflow may include the following steps: a customer is acquired, that customer places an order, the order is validated, someone fulfills the order, and the product or service is delivered.
Outlining each step of your workflow, along with the time and costs associated at each stage, is extremely important. A software visualization tool like Lucidchart can be an effective way to display your workflow linearly.
Undoubtedly, each of the five questions listed above will have multiple follow-up questions. However, our top five list is a good starting point of what information you can expect to provide your development team if you’re a businessperson thinking about custom CRM development.
2. Establish clear development goals
Once a proper flowchart is shared and any other questions addressed, it’s time to outline the development goals for your system.
You might notice that many of the development goals go hand in hand with the workflow. This is totally normal, and a big reason why we like to have a workflow clearly defined as early as possible. For instance, “we’d like to cut out the necessary steps it takes to move this process from A to D.”
We like to frame custom CRM development goals around reduction. An effective CRM can help you reduce time spent on tasks, reduce instances of human error, and reduce costs.
The lens of reduction: common goals for building custom software systems
Common ‘goals’ for custom CRM development include:
- Collect, store, and engage with customer information
- the time it takes to find and evaluate customer data
- human error when handling customer info in various stages of the business process
- Automate scheduling
- the time it takes to schedule common tasks, reminders, or events
- human error of incorrect scheduling details
- Eliminate unnecessary third party systems OR integrate more seamlessly with them using an API
- the cost of subscribing to third party platforms by eliminating monthly or annual fees
- the time it takes to think about which system you need to use to complete a task
- the time it takes to switch between and navigate through these various systems
- Establish a system that accounts for scalability
- the cost of third party systems that charge “per seat” by instead building an infrastructure that is much cheaper to scale long term
- costs concerning ‘server limits’ or surpassing a ‘tier of service’ common with most enterprise solutions
These are just a few of the most common goals people come up with when considering whether or not to build a custom CRM. Defining the goals of your dream system is just as important as outlining your current process. Considering these features from the lens of ‘reduction’ is a helpful framework for company improvement, rather than considering what you’ll ‘gain’.
Are you hiring an external development team to handle the coding of your system? If so, make sure all parties have a clear understanding of the goals prior to signing off on a statement of work with technical details! You can contact Winnona Partners if you need help figuring this out.
3. Consider tech options
You’ve outlined your workflow, and established your development goals. Now, it’s time for the development team to consult with you to offer the best path forward.
This consultation can be done in many ways. A team might schedule calls or virtual meetings, provide diagrams, or even draft a simple project breakdown. Usually preliminary resources like this are given as confirmation prior to crafting a formal Statement of Work.
To eliminate or integrate? That’s the question
One of the most important considerations a tech team will need to help you with is determining whether your new system should integrate with the third party systems you’re currently using, or if you should eliminate them all together.
During this stage, it’s up to developers to familiarize themselves with any third party systems that are being used or that need to be used in the future. This level of research can vary depending on the tech requirements and complexity, but typically established platforms will have API documentation and resources for developers.
On one hand, we love any opportunity to cut out unnecessary third party systems (elimination). What is an “unnecessary system?” We consider a system unnecessary when people are only using a small subset of superfluous features, or when the features used are easily reproducible.
So what is the elimination process? First, we investigate which features of a system are currently being used and evaluate the complexity of those features. Then, we assess whether or not we can eliminate that system by custom building similar functionality at a reasonable cost. In most cases, we can create ways for these features to mesh more closely with a specific business process when we build it from scratch.
The overarching question business owners will need to ask themselves is, “should we invest in rebuilding this feature in-house?“. Will building our own version of this feature save money long term? Can we reduce time waste by having these features and functionality available in one place?
If the answer to these questions is a resounding “yes!“, then eliminating the third party systems and rebuilding their features from scratch is a smart way to go!
On the other hand, many businesses have industry-specific third party systems that are integral to their operations and can’t be fully eliminated. Whenever this is the case, clients usually like to explore ways that the custom CRM and the existing system can talk to each other.
The two most common methods of integration involve using APIs and webhooks. However, there are additional methods worth considering. Other than the industry methods of integration outlined in the link above, I’d like to introduce three of our own terms from a theoretical business-enhancement perspective here:
What’s an industry-specific situation where API integration might be necessary? For instance, a real estate company may need to find a way to integrate with an existing MLS system to auto-populate listing information. We call this an example of a “procedural integration” as it ties in directly to the business process.
User Auth Integration
In other cases, businesses might already have hundreds of employees conducting their everyday communication through Microsoft Teams. Let’s face it, the thought of needing all these employees to keep up with yet another username and password can be daunting.
For this reason, integrating with Microsoft Teams can be an excellent approach for creating a seamless login experience for employees. We call this “user auth integration“, as it verifies and simplifies the login experience for employees.
Finally, sometimes popular and powerful third party systems like Google Calendar make sense to integrate with. Why build a new calendar system from scratch when Google has made their existing technology easy to access and integrate with? Thanks to the robust Google Calendar API resources, integration has never been easier. Oftentimes we build systems with automated scheduling capabilities accessible right from the custom system itself!
We call this an example of “supportive integration“, since it involves a foundational tool used in important ways throughout the system, but doesn’t necessarily progress steps in the business process. An example would be if a business integrates with Google Calendar to help with employee scheduling. It might not be required to complete a transaction, but it does support general business operations.
Is your business getting bogged down with too many third party systems? If so, Contact us today to discuss how we can integrate or eliminate these platforms for you!
4. Plan a feasible development schedule
Beware of the planning fallacy
One of my favorite books is Thinking, Fast and Slow by noble prize-winning psychologist Daniel Kahneman. In it, Kahneman offers incredible insights and case studies helpful for project management. One conundrum teams frequently encounter is the planning fallacy.
According to Kahneman:
“Amos and I coined the term planning fallacy to describe plans and forecasts that
- are unrealistically close to best case scenarios
- could be improved by consulting the statistics of similar cases”
Kahneman goes on to describe case after case of businesses, governments, and individuals falling victim to the planning fallacy and overoptimism. Interestingly, poor planning can not only lead to unexpected time delays, but also unexpected costs. One such example he provides:
“In 2002, a survey of American homeowners who had remodeled their kitchens found that, on average, they had expected the job to cost $18,658; in fact, they ended up paying an average of $38,769.”
While the quote above is a relatively “small-scale” example, we all fall victim to the planning fallacy on a regular basis. Just think of the last time something cost more than you expected, or took longer than you anticipated. Why didn’t things didn’t go perfectly according to plan?
More often than not, people provide timeline projections that are too close to a “best case scenario”. They don’t leave ample room for unexpected issues or delays which almost inevitably occur. The recent failures of “effective Covid-19 vaccine rollout” is a glaring example of the planning fallacy at it’s worst.
Fortunately, Kahneman offers some tips for mitigating the planning fallacy. These tips, along with our experience working on various tech projects, is why we always try our best to craft Statements of Work with generous timelines for completion. As a result, our general approach is to estimate project completion to take twice as long as we initially “expect” it to.
Caution is key
Another important aspect of scoping out projects is the understanding that content creation takes much longer than people initially think it will. Very often, people will come to us saying they need a way to get email automation integrated ASAP! But in reality, the business still has a ton of work that needs to be done in terms of content organization. What are the categories or lists of people you want to send emails to? How is this organized now and how should it be organized when integrated? Do you already have a structure in mind for drip campaigns? What about the email content itself?
Generating quality content–whether it’s email campaigns, blog entries, training resources, videos, etc–takes a lot of planning and effort. In order to guarantee efficient feature delivery from the tech side, ironing out these details in advance is crucial.
To summarize, try your best to allow for plenty of time to complete a project or feature rollout. Oftentimes, there will be missing feature details neither party was aware of. Revisions large or small will almost always be needed. Once testing begins, people may realize they’d actually like to expand on a feature before going live. And lastly, there’s always a chance unforeseen issues could cause delays or issues.
Therefore, the best way to avoid nasty surprises is to create a plan that is both cautious and feasible. Just remember: this is easier said than done!
If there’s one thing we’ve learned from developing custom software over the years, it’s that all businesses are not created equal. Each organization has their own unique process, needs, and mission.
Because of this, we encourage established businesses to invest in custom software that meets their specific needs, instead of opting for a one-size-fits-all Ready CRM approach.
Fully custom CRMs allow you to reduce the time spent on tasks, instances of human error, and excessive costs. You can finally have the power to help decide which platforms should be eliminated (with features rebuilt in your custom system) or integrated (seamlessly syncing data and updates through an API).
Furthermore, having a custom CRM allows you to manage all your clients, employees, and workflow from a single source without worrying as much about scaling costs. As a result, your organization will function with a greater sense of clarity, focus, and agility.
Interested in learning more about custom CRMs? Contact us today to discover how we can help transform your business process.