Uptime is primetime

At PipelineDeals, we are product engineers. We work on a 12 year old codebase that powers a SaaS product that tens of thousands of our customers spend a large portion of their day using, and rely upon to drive and maintain their relationships with their customers. We have all sorts of metrics to track how we’re doing as an engineering team. Reigning supreme above all others, is uptime.

What’s my uptime?

In the early days of the web, uptime was pretty straight-forward. Everyone was publishing monolithic apps that either let you log in and do your thing or it didn’t. The URL either resolved correctly and presented a working application, or it didn’t. If it failed, it would show a 500 page, browser DNS error page or it spun indefinitely and never did anything. 

These days, large and complex apps are typically delivered as a set of networked but independent services, each performing their task and communicating with others. At PipelineDeals, we began with a monolithic application from which we extracted several services, each with their own persistent storage and responsibilities.

From a systems engineering perspective, this approach gives us new tools to help us provide a higher guarantee of availability than is possible under a monolithic delivery model.



Circuit Breakers

The boundaries between services, where one part of the application is depending on data or functionality provided by another, can be hardened against cascading failure using a circuit breaker. This is a piece of logic that will be invoked if there is a network error, internal server error, etc. that prevents a service from responding in a timely manner. This code will return a default value to the client service, allowing execution of the user’s web request to continue (albeit with a degraded or eventually-consistent state).

For example, one of the core services that powers PipelineDeals is responsible for billing and subscriptions. When the main app needs to know which features a particular user or account has access to, it must make an internal API call to this billing service. What if the database server this billing service talks to has a hardware failure? 

Well, since we have a circuit breaker installed in the code that handles this communication, the main app will detect that requests to the billing API are currently timing out or failing. Noticing this, it will substitute a standard set of features instead of the realtime set that would be returned from the billing service, and continue with serving the user’s request.

Without the circuit breaker, a failure in the billing service would have cascaded into failures in all services dependent on it. In this naive case, the app’s uptime is only as good as the uptime of the least reliable service in the request’s critical path through the system. 

Yellow WARNING Barrier Tape Background Isolated on White


Early Warning System

Service-based apps have some failure modes that you don’t see in monolithic apps. Chief among these is the cascading failure. One component will start receiving more load than it can handle, causing requests to it from other components to fail or hang around waiting for a response. These delays or failed requests will pile up in these client components, causing retries and degraded service to their clients, and so forth. Before you know it, the whole web of interdependent services will seize up and start refusing or failing requests from the web app and customer API calls and cause a downtime event.

There’s an opportunity here, as well. Well-designed services have well-defined boundaries, and it’s at these boundaries that we can look for trouble (any good monitoring service will make this easy to set up) and alert early. Data points that we’ve found helpful to monitor include queue job count, error rates and API request 95th percentile response times.

Responding to these alerts early enough will allow a team to avoid a full-blown downtime by, at worst, shutting down services not critical to the core product during an emergency. Happy days!

Panorama of medieval town walls. Avila, Spain


Defence in Depth

We can also look at the monitoring and alerting infrastructure in a top-down way. Failures can occur not only across components but also at different layers within a single component. Imagine you suddenly start seeing elevated 5xxresponses to user-facing web transactions. What’s the cause? Depending on your infrastructure and setup, this could point to a problem with your DNS setup, load balancers, application host, web server, routing layer, database, in-memory object storage, etc.

In an emergency situation, the less probing in the dark we have to do, the better. Setting up monitoring at every level of the stack is an excellent way to cut down this search space. For example, our ping tests report everything is fine but application error monitoring is showing elevated error responses, its reasonable to conclude that everything upstream of your app servers is functioning correctly and that the likely culprit is a recent code change.



Cost / Benefit

So, what are all these handy dashboards and fancy infrastructure going to cost you? It’s a sliding scale. There are engineering teams working at all points on the spectrum between a single monolithic app and a constellation of microservices. Having said that, there is no question that there are additional fixed and marginal costs of delivering your app as a set of networked services.

Most easily measurable are the direct costs of extra servers and hosting infrastructure. We usually want redundancy at the level of the hardware that the service is running on, so most production setups will deploy one service per server instance. The extra database hardware to isolate storage per service is another significant cost, as is the data transferred between service APIs.

The cost incurred for your engineering team’s time is much harder to quantify. Even assuming everyone on the team has the DevOps chops to isolate and debug production issues, the resolution of those issues will necessarily be more complex as they involve more moving parts than under the original monolithic approach.

Do I need it?

Distributed application architectures are not a silver bullet for all that ails your application. In fact, shoehorned into a deployment that doesn’t make sense, it will multiply your problems. Best practice is to begin your app with a simple, monolithic deployment model that’s quick to iterate and develop new features for. As your app acquires paying customers, you’re building a business case for investing the time and money required to improve the resiliency of the infrastructure the business relies on. Even at this point, that may not mean a fully distributed service model as we’ve discussed above – it’s an art as much as it is a science.

What Is a Sales Pipeline?

What Is A Sales Pipeline?

Busy sales teams are often juggling many prospects and deals that are at different stages of the sales process. Keeping track of and managing these sales opportunities can be challenging — even for the most successful sales reps. A sales pipeline is a tool that helps organize all of the deals a sales team is currently working on to improve win rates and boost a company’s total revenue. In this article, we will provide a sales pipeline definition and offer guidance for building and managing your sales pipeline effectively.

What Is a Sales Pipeline?

A Sales Pipeline Outlines Every Step In Your Sales Process.

A sales pipeline outlines every step of your sales process from a potential customer’s first interaction with your company to the final closing of the deal. As prospects take actions that move them forward in the sales process, these are recorded in the sales pipeline. When incorporated as part of a customer relationship management (CRM) system, a sales pipeline allows sales reps and managers to visualize and track the progression of all current prospects and deals to create a more effective sales strategy.

Because each company has a different sales process, every sales pipeline will have different stages. For example, the sales process for a company that produces custom machine parts may begin with prospecting for potential clients in their industry. Those prospects may then progress through several negotiations of design specifications before the sales process ends with approving of a final design plan. For an eCommerce site, their sales pipeline may be much shorter — beginning with connecting to customers through an online marketing campaign and ending when a customer clicks “buy.”

Depending on the complexity of your product and the needs of your customers, different prospects may move through the sales pipeline at different speeds. Customers with an urgent need — such as those ordering a replacement part to repair critical machinery — will move through the sales process more quickly. Prospects who have done a lot of research before contacting your company may also be ready to buy earlier in the process than those who have not. Other prospects may progress through the sales pipeline more slowly, taking time to learn more about your services before they are ready to make a purchase.

What Are the Benefits of Creating a Sales Pipeline?

What Are The Benefits Of Creating A Sales Pipeline?

Creating a sales pipeline for your company can provide valuable insights into the health of the sales team and the company as a whole. By examining where prospects are in the sales pipeline, sales reps can anticipate how many deals are likely to close in a given timeframe. When sales reps can quickly gauge if they are on target to meet their quota, they can take appropriate action by doubling down on sales or pulling back and getting ready for the next quarter.

A sales pipeline can effectively forecast future revenue based on the number of prospects at each stage in the sales process. Because a sales pipeline includes every deal that a sales team is working on, it provides a more comprehensive picture than a standard sales forecast that focuses only on deals that are expected to close soon. Companies that have a more complex sales process can benefit from a sales pipeline by being able to better monitor the progression of prospects in early stages like project planning and design creation.

A sales pipeline also helps to create a standardized sales process by providing clear action steps for salespeople for every stage of the sales process. When sales reps have a clear follow-up action for each step, potential customers are less likely to slip through the cracks. Creating a standardized sales process may also lead to revenue growth for your business — according to a survey by the Harvard Business Review, B2B companies with a formal and defined sales process experienced 18 percent greater revenue growth than those that did not.

By using a sales pipeline to manage your company’s sales opportunities, you can boost your revenue, improve your sales process and identify areas for growth in your business.

How to Build a Sales Pipeline

How To Build A Sales Pipeline

Each sales pipeline will look a little bit different depending on how customers progress through your sales process. If your company offers a variety of products or services, each product may even have its own unique sales pipeline. To create an effective sales pipeline, a company must first define the steps of their sales process and then adjust this process to achieve its customer quotas and revenue goals.

1. Define the Steps of Your Unique Sales Process

The first step for building a sales pipeline is to identify the steps of your company’s sales process. If your company sells a complex or highly customized product, your sales pipeline may be longer and involve numerous steps. Companies selling simpler products may have a shorter and more streamlined sales process.

Although your sales process may be similar to other companies in your industry, it is still best to create your own sales pipeline rather than relying on a template. This ensures you do not miss any crucial steps in your unique sales process.

When defining the steps of your sales process, focus on the customer’s buying experience rather than looking at it from a seller’s perspective. Consider the actions that indicate a prospect is moving closer to purchasing from your company. For example, when a customer schedules a follow-up meeting or requests a customized demo, this indicates a greater commitment to your company and increased interest in your product.

An effective sales pipeline will mirror your customer’s purchasing process and provide action steps for sales reps at each stage. Here are the typical sales pipeline stages that can be adapted to match the sales process of your company:

  1. Prospecting: For companies that offer more complex products or solutions, their sales pipeline will typically begin with prospecting for potential customers who qualify for their services. Companies may develop an ideal customer profile (ICP) to determine the characteristics they are looking for in their clients. An ICP can include a variety of characteristics such as company size, what industry a company is in, the location of the company and what problem they are trying to solve.
  2. Initial connection: After identifying potential customers, the next step is to connect with them. For companies that do not prospect, the buyer may be the one that initiates the interaction rather than the salesperson. This initial connection may take the form of an email, phone call, online form submission, subscription or content download.
  3. Follow-up scheduled: The customer has already expressed some interest in your product and now agrees to schedule a follow-up meeting or phone call for more information. By scheduling a follow-up, the customer shows that they are ready to discuss the next steps and that they view your product as a possible solution to their problem.
  4. Follow-up completed: If the customer is seriously interested in your product or services, they will show up at the follow-up meeting and confirm their next step in the buying process. During this encounter, your sales team should provide any critical technical information and give a clear demonstration of how your product works to meet the customer’s needs. At this stage, the customer should understand your products and services as well as the value that your company offers.
  5. Solution proposed: If a prospect decides that your product is a good match for their needs, the next step is to create a proposal or draw up a contract for your services. At this stage, it can be tempting to believe that the sale is already won. However, the prospect is still in the determination phase and may back out of the deal for many reasons — the prospect may not receive approval from a higher up, may choose to prioritize a different project or may go with your competitor instead. By anticipating these barriers to conversion, smart sales reps can create a proposal that is impossible to refuse.
  6. Proposal sent: After the sales rep has crafted an irresistible proposal, it can be sent to the prospect for review. During the review period, the sales rep should remain available to answer any questions the customer has. Your sales pipeline may also include periodic follow-up calls to check in with the prospect as they review your contract or proposal.
  7. Decision received: The last step for closing the deal is receiving a final decision from the prospect. After the customer signs the contract or agrees to the proposal, your company can begin production or provide your services. At this stage, the customer does not require any more contact with the sales team, and the sales process is complete.

To adapt these typical sales pipeline stages to fit your specific business, consider your customer’s buying experience from start to finish. Use knowledge from your sales team and feedback from customers to create a sales pipeline that best mirrors your individual sales process.

2. Determine the Conversion Rate of Each Stage

Once you have defined the stages of your sales process, the next step is to identify the conversion rate of each step. Even in the most effective sales pipelines, some customers are lost at each stage. The highest percentage of customer drop-off will typically occur in the early stages when customers are still researching possible solutions to their problem. At the later deliberation stages, a higher percentage of potential customers will follow through to make a purchase.

To determine the conversion rate of your sales pipeline, calculate the number of prospects that typically continue to the next step and divide it by the number of prospects that entered that step.

For example, if a company connects with 200 customers and 50 of those customers request a product demo, this means their conversion rate for initial customer connections is just 25 percent. Out of the 50 customers that request a demo, 25 continue to the negotiation phase — resulting in a 50 percent conversion rate for that sales process step. In the final negotiation phase when customers have received a project proposal or contract for review, the conversion rate may rise to 90 percent. This means that out of the initial 200 connections, about 23 of those prospects will complete a purchase.

By determining the percentage of prospects that convert at each step of your sales process, you can then determine how many prospects will need to enter your sales pipeline for you to meet your revenue goals.

3. Calculate How Many Prospects You Need to Meet Your Goals

Using the conversion rates you calculated for each step in your sales pipeline, work backward from your target revenue goals to determine the number of initial prospects you need to meet your quota. Begin with your target revenue for a given time period and divide it by the average size of a deal. This will tell you how many deals you will need to close during that period to meet your target.

Take this target number of deals and divide it by the conversion rate of the last step of your sales pipeline. Work backward through each stage to find the total number of prospects you will need to engage at the beginning of your sales pipeline to meet your final target revenue.

For example, let’s say that the company in the previous example needs to close 180 deals to meet their quota. Because their sales team has about a 90 percent conversion rate in the final negotiation stage, they will need 200 prospects to enter the negotiation stage. The conversion rate for customers who receive a product demo is 50 percent, so 400 prospects will need to enter that step of the sales process. Because just 25 percent of initial customer connections lead to a request for a demo, the company will need to connect with 1,600 customers to meet their target revenue goal.

Once you have determined the total number of prospects that you need to enter your pipeline each period, divide this by the number of sales reps on your team to determine how many connections each salesperson must make. Keep in mind that different sales reps may have different conversion rates at each stage and some salespeople may perform better than others. A salesperson who is poor at prospecting but excellent at closing will need to make more initial connections to meet their quota. Leave some wiggle room when setting goals for each stage of the sales pipeline so you can meet or exceed your target revenue each quarter.

4. Adjust Your Sales Process If Necessary

After you have defined your sales pipeline and established goals for each stage, you can begin looking at ways to improve your sales process and boost revenue. If your sales pipeline analysis revealed that your sales team needs to make more initial connections to meet your revenue goals, consider ways you can reach more customers through marketing or prospecting. If you noticed that a high percentage of customers drop off after their first follow-up meeting, ask if there are ways to improve your sales strategy to boost that conversion rate.

Pay attention to which actions typically lead to conversions and make these a part of your standardized sales strategy. For example, you may observe that a salesperson who sends follow-up emails after initial client meetings has a higher conversion rate than a sales rep who does not. You can then include sending a follow-up email as a step in your sales pipeline to improve your overall conversion rate.

Common Sales Pipeline Mistakes

Common Sales Pipeline Mistakes

When executed successfully, building a sales pipeline can improve your company’s sales process and boost revenue. However, there a few common pitfalls that can lead to ineffective pipeline management. Here are a few common mistakes to avoid when creating and managing your sales pipeline:

  1. Forgetting to prospect: If your company is receiving a lot of business and your sales team has several deals in the sales pipeline that are about to close, it can be easy to neglect prospecting. However, forgetting to prospect means that your sales may plummet next quarter when there are not enough new prospects entering the sales pipeline.
  2. Losing leads: If your sales pipeline does not include standardized follow-up processes, leads can easily slip through the cracks. When sales reps focus on closing deals, they may forget to send follow-up emails to schedule meetings with new prospects.
  3. Pursuing the wrong leads: Your company’s sales can also suffer if sales reps spend too much time chasing after prospects that are not likely to convert. If sales reps pursue the wrong leads — such as clients who do not match the company’s ideal customer profile — they waste time that could have been spent prospecting new clients or tending to customers that are a better fit for your company.
  4. Letting your pipeline get messy: When a sales rep disqualifies a potential prospect or a prospect stops responding to follow-up emails, those prospects should be removed from the pipeline. A pipeline that is cluttered with stale deals can lead to inaccurate sales forecasts and missed revenue goals.
  5. Trying to “fast-track” sales: If sales reps are behind on meeting their quota, it can be tempting to try to move prospects through the sales pipeline more quickly by skipping steps in the sales process like demos or meetings. However, trying to fast-track customers often leads to lost deals or an even longer sales cycle when the salesperson must go back to perform demonstrations that were skipped the first time.

By managing your sales pipeline well, you can avoid these common mistakes to create a more efficient and productive sales process.

How to Manage a Sales Pipeline

How To Manage A Sales Pipeline

Effective sales pipeline management can increase the win rate of your sales team and improve the overall health of your company. A well-managed sales pipeline can also boost your company’s profits and growth — the Harvard survey of 62 B2B companies revealed that companies that had effective pipeline management enjoyed a 15 percent higher revenue growth rate than companies that did not manage their pipeline effectively. Here are a few tips for managing your sales pipeline for success:

1. Keep Your Sales Pipeline Updated

Keep Your Sales Pipeline Updated.

One of the most basic — yet also most essential — steps for pipeline management is keeping your sales pipeline updated. Sales reps should update the sales pipeline after each interaction with a prospect or every time a customer moves to the next step in the sales process. A sales pipeline that is not updated regularly will provide inaccurate forecasts and will not be useful for planning sales strategies.

2. Set Follow-up Standards

Set Follow Up Standards.

Sales reps should always have a clear and actionable follow-up step for each stage of the sales process. Your follow-up standards could include a certain number of interactions that sales reps should have with clients each month or a time frame in which they should respond to emails or calls. Establishing follow-up standards prevents prospects from getting lost in the mix and ensures valuable sales opportunities are not missed.

When using a sales pipeline as part of your CRM system, you can set up reminders or alerts that notify sales reps when it is time to reach out to a certain client. Your CRM software also makes it easy to see when you last interacted with a customer and view details about that interaction.

3. Establish a Stable or Growing Pipeline

Failing to prospect is one of the most common problems in sales pipeline management and can lead to missed quotas and lost revenue. According to data from Hubspot, 72 percent of companies that received less than 50 new sales opportunities each month did not achieve their revenue goals. On the other hand, only four percent of companies that received 51 to 100 opportunities failed to hit their target revenue goals.

To maintain a healthy sales pipeline, aim to keep the early stages of your pipeline full of potential customers at all times. If you have a lot of prospects who are reviewing proposals or testing out product demos, continue prospecting in the meantime while you wait to close those deals. Your sales pipeline should always be stable or growing as you add new opportunities to your sales cycle.

4. Focus on Customers Most Likely to Convert

In an ideal world, your sales team would be able to dedicate its full attention to every sales opportunity presented. However, there are only so many hours in the day and your sales team may need to prioritize the prospects that are most likely to lead to a sale. Pay attention to which customers best fit your ideal customer profile or take actions that indicate they are likely to convert. Focus your energy on these prospects first to maximize the conversion rate of your sales pipeline.

5. Keep Your Pipeline Clean

Instead of wasting time pursuing prospects that are not likely to result in a sale, keep your pipeline clean by periodically removing dead leads. When reviewing your sales pipeline, look for any customers who have not responded to your last follow-up message, have expressed that they are no longer interested in your product or have been lingering in a single process step for a long time. If you are uncertain of the status of a certain prospect, reach out to them one more time before removing them from the pipeline.

Keeping your pipeline clean allows your sales team to quickly assess what work needs to be done and focus on the opportunities that matter most.

6. Monitor Key Sales Metrics

As prospects enter and exit your sales pipeline, your sales manager should pay attention to key sales metrics to assess the health of the overall system. Key metrics for a sales pipeline include:

  • The number of opportunities in the pipeline
  • The average size of deals in the pipeline
  • The total value of opportunities in the pipeline
  • The average time it takes a prospect to move through the pipeline
  • The conversion rates of each sales process step and the entire pipeline

Monitoring these sales pipeline metrics allows sales managers to track company growth and make more accurate predictions for future revenue. Key sales metrics can also be used to adjust target quotas and identify areas of the pipeline that may need improvement.

7. Take Steps to Improve Your Pipeline

Take Steps To Improve Your Pipeline.

If your key sales metrics indicate weak spots in your sales pipeline, take steps to improve your sales process. For example, if you observe that clients are spending a long time considering different solutions your company offers, look for ways to streamline this process and move customers through the pipeline more quickly. If you want to increase the size of your deals, consider ways to encourage larger purchases. By continually seeking ways to improve your sales pipeline, you can improve conversion rates, win more deals and increase your company’s total revenue.

Streamline Your Sales Pipeline Management With CRM Software From Pipeline Deals

An effective sales pipeline allows your sales team to track the progression of sales opportunities and take actions to improve conversion rates. Using CRM software to manage your sales pipeline makes it even easier to organize and manage all of your current prospects. Pipeline Deals offers streamlined and simplified sales pipeline management as a part of our CRM software to help you grow your business and increase your company’s revenue.

Our sales pipeline management software allows your company to manage multiple sales pipelines, view key sales metrics and keep track of details of each deal your sales team is working on. With real-time status updates and straightforward visual reporting, Pipeline Deals provides effective sales pipeline management for your business. Contact us for more information about our CRM software or start your free trial today to experience the benefits of choosing Pipeline Deals for your sales pipeline management software.

What are the Types of CRM?

The CRM has become one of the most important tools that today’s businesses use, but there’s more than one kind of this customer-focused software. In this post, we’ll look at three common variations — operational, analytical and collaborative CRMs.

Continue reading

What is the Difference Between ERP and CRM

You may have heard about the benefits that ERP and CRM software can provide to businesses. As your company grows and the amount of data your company collects increases, you need to organize it and ensure that everyone is on the same page. CRM and ERP systems can help you with that.

Continue reading

What is the Role of a CRM?

Raise your hand if your business:

  • Maintains a public-facing website
  • Offers products or services through that website
  • Creates and initiates digital marketing campaigns
  • Tracks digital marketing efforts — or at least aims to
  • Collects customer data, such as names, emails and purchase history
  • Stores customer data
  • Handles customer service inquiries
  • Generally wishes to work smarter — not harder — to maximize its sales pipeline
Continue reading