Guides

How to Build a Sales Pipeline in WordPress

9 min read

A spreadsheet tells you what you sold. A pipeline tells you what you are about to sell. Here is how to design stages that reflect a real buying process, what win probabilities actually unlock, and the mistakes that quietly make a forecast useless.

Most small businesses do not lose deals because their product is wrong. They lose them because nobody remembered to follow up on Thursday. A spreadsheet is a fine record of what you have already sold, but it is a terrible instrument for managing what you are about to sell, because it has no concept of momentum: a row that has not moved in six weeks looks exactly like a row you spoke to this morning.

A pipeline fixes that by making the state of every opportunity explicit and comparable. This guide is about designing one properly — the part that determines whether the tool helps or just adds admin. The mechanics of clicking it together are the easy half.

What a pipeline actually is

Strip away the software and a pipeline is one claim: every deal you are working on is somewhere in a sequence of states, and the state tells you how likely it is to close and what has to happen next. That is it. The Kanban board, the drag-and-drop, the coloured cards — those are conveniences layered on top of that single idea.

Two consequences follow, and both are commonly ignored. First, if two deals are in the same stage, they should be roughly comparable in likelihood — otherwise the stage means nothing. Second, if a deal is in a stage, something specific should be happening to move it out. A stage that a deal can sit in indefinitely without anybody being wrong is not a stage, it is a filing cabinet.

Choose stages that describe the customer's decision

The single most common design error is writing stages that describe your internal admin rather than the buyer's progress. "Awaiting paperwork", "Sent to accounts", "Waiting on design" — these are your tasks, not their decisions. They feel productive to track and they wreck forecasting, because a deal parked in "Awaiting paperwork" could be 95% certain or completely dead and the stage cannot tell you which.

Write stages from the customer's side instead. Something like this works for a large majority of consultative businesses:

  1. Enquiry — they have raised a hand. You have contact details and a vague sense of need.
  2. Contacted — you have made real two-way contact, not just sent an email into the void.
  3. Qualified — you have established that they have the problem, the budget and the authority. Many enquiries die here, and that is the stage doing its job.
  4. Proposal sent — a specific price for specific work is in their hands.
  5. Negotiation — they want it and are working out terms, scope or timing.
  6. Won / Lost — closed, one way or the other.

That is six live states plus two closed ones, and the count matters. Twelve stages sounds more precise and behaves worse. Every additional stage forces a rep to make a judgement call at the boundary, and boundary judgements are where consistency dies: if two people would reasonably file the same deal differently, your stage-based reporting is measuring opinion. Five to seven live stages is the range where each one is distinguishable at a glance and the board still fits on a screen.

There is a simple test. For each stage, ask: what specific thing has the customer done that a deal in the previous stage has not done? If you cannot answer in one sentence, merge it into a neighbour.

Give every stage a win probability

This is the step people skip, and it is the step that converts a to-do list into a planning instrument. Each stage gets a number from 0 to 100 representing the share of deals that historically reach that stage and go on to close. In Stillpoint CRM every stage carries that probability along with flags marking whether it counts as won or lost, and the forecast is derived from them automatically.

Why it matters is easiest to see with numbers. Suppose you have four open deals:

  • $50,000 at Qualified — probability 20%
  • $18,000 at Proposal sent — probability 50%
  • $12,000 at Negotiation — probability 75%
  • $9,000 at Contacted — probability 10%

The raw pipeline total is $89,000, and that number will get you into trouble, because it invites you to plan as though $89,000 is arriving. Weight each deal by its stage probability instead — $10,000 plus $9,000 plus $9,000 plus $900 — and the expected value is $28,900. Those two numbers describe the same pipeline and lead to completely different hiring, spending and cash-flow decisions.

The second thing probabilities unlock is a diagnosis of shape. A weighted forecast that is healthy in total but comes almost entirely from one late-stage deal is fragile, and the raw total hides that completely. Once each stage is weighted you can see whether the pipeline is broad or resting on a single client's signature.

Why "On hold" deserves to exist

Real buying processes stall for reasons that have nothing to do with you: a budget freeze, a reorganisation, the champion going on parental leave. Without somewhere to put those deals you get one of two bad outcomes. Either they stay in Negotiation and quietly inflate your forecast for months, or someone marks them Lost and the relationship disappears from view along with all its context.

An explicit On hold stage with a low probability — often 0 or 5% — solves both. The deal stays visible and searchable, its history is intact, and it stops distorting the number you plan against. Two rules keep it honest: every deal on hold needs a review date, and On hold is not a place to hide deals you are afraid to call dead. If nothing has changed after two reviews, it is Lost, and marking it so is useful information rather than a failure.

Use separate pipelines, not one board for everything

As soon as a business sells more than one kind of thing, a single board starts lying. New business, renewals and store orders have genuinely different stages and genuinely different probabilities. A renewal might begin life at 70% because most customers renew; a cold new-business enquiry does not. Forcing both through the same stages means one of them has the wrong multiplier at every step.

Practical splits worth making:

  • New business — the long consultative sequence described above.
  • Renewals and expansion — shorter, higher base probability, driven by dates rather than discovery. Stages like Upcoming, Contacted, Quoted, Renewed.
  • Store orders — where an ecommerce order enters as a deal so fulfilment and follow-up are tracked. Stillpoint's WooCommerce sync writes each order into both an orders ledger and a deal on a dedicated Orders pipeline, which is exactly why it belongs on its own board rather than mixed in with quotes. There is more on that in the WooCommerce CRM overview.

The cost of separate pipelines is that you have to look at more than one board. The benefit is that each forecast is built from probabilities that actually apply to the deals inside it.

Every deal needs an owner and a next action

A deal with no owner belongs to everyone, which means it belongs to no one. Assign one person per deal even in a two-person business, because ownership is what makes a stalled deal somebody's problem rather than an ambient disappointment. In a team, per-record ownership also lets you scope visibility so reps work their own book while managers see everything.

Then the discipline that carries more weight than any other single habit: no open deal without a dated next action. Not "follow up soon" — a task with a date on it, attached to the deal. This is what converts the pipeline from a status display into a working queue, because your morning view becomes "what is due today" rather than "what is out there somewhere". When a deal genuinely has nothing to do next, that is a signal too: either it needs a decision or it belongs on hold.

Automations help here, but only for the mechanical parts — creating a follow-up task when a deal enters a stage, nudging an owner when a deal has been untouched for a fortnight, routing new enquiries to the next rep in turn. Anything that requires judgement should stay manual. The features overview covers what triggers and actions are available.

Common mistakes

  • Stages that mirror your admin instead of the customer's decision. Covered above, and by far the most damaging. If a stage name contains "awaiting" or "internal", look at it hard.
  • Forecasting from gut feel. "I think we'll land about sixty thousand" is not a forecast, it is a mood. If the number is not derived from the deals on the board, the board is decoration.
  • Open deals with no next action. A pipeline that is not a queue becomes a graveyard within a quarter.
  • Never marking anything Lost. Win rate is only meaningful if losses are recorded. A pipeline of 200 open deals in a business that closes six a month is not a pipeline, it is a mailing list.
  • Letting probabilities drift into optimism. Rising probabilities with a flat close rate means someone has been editing the multipliers rather than the stages.
  • One pipeline for fundamentally different sales. The forecast will be wrong in both directions at once.

Setting it up inside WordPress

The reason to run this in WordPress rather than a hosted CRM is usually a combination of cost and control: unlimited users on a flat licence, and customer data that stays on infrastructure you already pay for. Stillpoint CRM installs as a plugin, creates its own database on first load — by default a single SQLite file in a protected folder inside your uploads directory, or your own MySQL database if you prefer — and seeds an editable default pipeline so you have something to shape rather than a blank screen.

A sensible order of work for the first hour:

  1. Rename the seeded stages to match the sequence you wrote down, and delete the ones you do not need. Do this before importing anything.
  2. Set the win probability on each stage, plus the won and lost flags.
  3. Create your second pipeline if renewals or store orders need one.
  4. Import contacts and companies, then add open deals — only the live ones.
  5. Give every imported deal an owner and one dated next action.
  6. Check that the weighted forecast on the dashboard is in the region you would have guessed. If it is wildly out, your probabilities are wrong, not the maths.

The step-by-step install and configuration walkthrough lives in getting started, and pricing covers which licence you need for the number of sites you run.

One closing thought. The value of a pipeline is not the reporting; it is the forced weekly conversation about what actually happens next on each deal. The software exists to make that conversation take fifteen minutes instead of two hours. If your board is not making that conversation easier, redesign the stages before you blame the tool.

Guides

Migrating from a Cloud CRM to WordPress

The export order that avoids rework, what not to bring, how to handle attachments and email history, and a cutover checklist you can verify.

10 min read

WooCommerce

Choosing a CRM for a WooCommerce Store

Email platform, sales CRM or cloud suite? How to decide, what deep WooCommerce integration should mean technically, and a fair look at the options.

9 min read

Guides

What a helpdesk costs when you pay per agent

The multiplication behind per-agent helpdesk pricing at 3, 5, 10 and 20 agents using verified August 2026 figures, the AI add-on, and what flat pricing changes.

5 min read

A pipeline that forecasts, on your own server

Unlimited pipelines, per-stage win probabilities, drag-and-drop stage moves and a weighted forecast — all inside WordPress, with unlimited users on one flat licence.

Unlimited users · Flat price per site · 30-day money-back guarantee