CRM Solid logo
GUIDE19 min read

How to build a sales pipeline that closes

A practical framework for designing a pipeline that actually converts: stage definitions, entry/exit criteria, automation triggers, weighted forecasting math, and the stuck-deal management protocol that keeps revenue predictable quarter after quarter.

14-day free trial · No credit card required · Cancel anytime

What you will learn

Four pipeline skills you will use weekly

Stage design

Define the 5-7 stages every deal passes through with crisp entry and exit criteria.

Automation triggers

The three between-stage automations that capture the most time and revenue.

Weighted forecasting

The math behind probability-weighted pipeline value and what numbers actually predict revenue.

Stuck-deal management

How to detect stalled deals early and the 7-day playbook that revives or retires them.

What you will need

A pipeline is only as good as the data feeding it. Get the prerequisites in order before you redesign anything.

  • A CRM Solid workspace (free trial works).
  • Access to your last 30-50 closed-won deals (and same number of closed-lost) for probability calibration.
  • 1-2 hours of focused time to audit those deals and map the real journey.
  • Buy-in from your sales team; pipeline design without rep adoption is theatre.
  • A current revenue target to forecast against (monthly quota, ARR goal, etc.).
  • Patience for 30-60 days of running the new pipeline before judging it.

Step 1: Audit your last 30 closed-won deals

A pipeline is a model of how deals move through your business. The right model is the one that matches what actually happens, not what your old CRM said should happen, and not what a sales book recommended in 2014.

Pull your last 30 closed-won deals. For each, write down the sequence of milestones between first contact and signed contract. Strip the fluff. You will see a pattern emerge, usually 5 to 7 milestones that almost every won deal passed through.

# Example audit table
Deal           | First       | Replied    | Qualified  | Demo       | Proposal   | Closed
--------------|-------------|------------|------------|------------|------------|--------
Acme Corp      | 2026-02-01  | 02-03      | 02-05      | 02-10      | 02-14      | 02-22
Beta SaaS      | 2026-02-08  | 02-09      | 02-12      | 02-17      | 02-21      | 03-02
Gamma Ltd      | 2026-02-15  | 02-15      | 02-19      | 02-25      | 03-01      | 03-12
...

# Median days between stages
First → Replied:        2 days
Replied → Qualified:    3 days
Qualified → Demo:       5 days
Demo → Proposal:        4 days
Proposal → Closed:      8 days
TOTAL CYCLE:           22 days

That table is your pipeline raw material. The pattern is "First contact → Replied → Qualified → Demo Booked → Proposal Sent → Closed Won." Six stages, 22-day median cycle. Now you can design.

Step 2: Define each stage with entry and exit criteria

A stage without explicit criteria is a vibe. A stage with criteria is a checkpoint. The difference matters because checkpoints can be measured, optimized, and forecast against.

Here is the canonical 6-stage B2B outbound template, with entry and exit criteria for each. Adapt to your motion.

Stage 1: Lead
  Entry: contact added to CRM with at least one channel (Telegram, X,
         WhatsApp, email).
  Exit:  first outbound message sent.

Stage 2: Engaged
  Entry: contact replied to first outbound message (any sentiment).
  Exit:  contact answered at least one qualifying question.

Stage 3: Qualified
  Entry: contact has confirmed (need ✓) AND (budget signal ✓) AND
         (timeline ✓ within 6 months).
  Exit:  demo or discovery call scheduled on calendar.

Stage 4: Demo Booked
  Entry: calendar event created and accepted.
  Exit:  demo or discovery call completed AND next step set.

Stage 5: Proposal Sent
  Entry: written proposal, quote, or pricing document sent.
  Exit:  contract signed OR explicit no.

Stage 6: Closed Won
  Entry: contract signed, payment terms accepted.
  Exit:  (terminal stage)

Stage 6b: Closed Lost
  Entry: explicit no, ghosted >14 days post-proposal, disqualified.
  Exit:  (terminal stage)

The reason these criteria matter is they remove rep judgment from stage transitions. "I think this deal is qualified" is useless. "Need ✓ Budget ✓ Timeline ✓" is testable. The latter forecasts.

Step 3: Calculate real win probabilities

Every stage has a real-data win probability. Calculate it from your audit:

Stage          Total entered  Closed won  P(win | in stage)
Lead           1,200          85          7.1%
Engaged        420            85          20.2%
Qualified      180            85          47.2%
Demo Booked    140            85          60.7%
Proposal Sent  105            85          81.0%
Closed Won     85             85          100.0%

These percentages feed your weighted forecast. Notice the drop-off: every team has one or two stages where the conversion cliff lives. In the example, Engaged → Qualified is 43% conversion, the biggest leak. That is where coaching investment should focus.

If you have not run 30+ deals yet, use industry baselines: Lead 5%, Engaged 15%, Qualified 35%, Demo Booked 55%, Proposal Sent 75%, Closed Won 100%. Update with real data after your first 30 won deals.

Step 4: Build the pipeline in CRM Solid

In Pipeline > Edit stages, replace the default template:

  1. Delete the placeholder stages. Cleaner to start from blank.
  2. Add your 6 stages in order. For each, set:
    • Name (e.g., "Qualified")
    • Entry criteria (paste from Step 2)
    • Exit criteria (paste from Step 2)
    • Win probability % (from Step 3)
    • Target days-in-stage (from your median audit data)
    • Color (helps visual scanning)
  3. Save. The pipeline view updates immediately.

Existing deals get auto-migrated by best-match. Some may need manual stage assignment; do that in the next 24 hours so the forecast is accurate.

Step 5: Wire up automation triggers

CRM Solid's pipeline-stage triggers fire on every stage transition. Start with three high-value automations:

Trigger 1: Calendar link on entry to Qualified

Trigger:  Deal moves into "Qualified"
Wait:     0 minutes
Action:   Send template "qualifier-to-demo-invite" via primary channel
          (Telegram / X / WhatsApp / email)
Notes:    Personalize with calendar booking link {calendar_url}

Trigger 2: Internal nudge on stalled demo

Trigger:  Deal in "Demo Booked" for > 48 hours without status change
Wait:     0 minutes
Action:   Slack DM to assigned rep:
          "Deal {deal_name} at Demo Booked for 48h+ - what is the next
          step?"
Notes:    Re-send every 48h until status changes

Trigger 3: Onboarding kickoff on Closed Won

Trigger:  Deal moves into "Closed Won"
Wait:     5 minutes (let the rep update fields)
Action:   1. Notify workspace channel
          2. Send template "welcome-onboarding-1" to contact
          3. Queue 6-step onboarding sequence
          4. Tag contact "customer"
          5. Update workspace metrics

Resist the urge to wire up 20 triggers on day one. Three triggers running well beats twenty triggers running poorly. Add more only after measuring impact for 30 days.

Step 6: Set stuck-deal alerts

Deals slip silently. The single biggest source of missed revenue is deals that were going to close but stalled at a stage and nobody noticed until the quarter ended.

CRM Solid auto-flags stuck deals: any deal in a stage longer than 1.5× the median days-in-stage for that stage. Configure in Settings > Pipeline > Alerts:

  • Daily digest to assigned rep: list of their stuck deals with one-click "re-engage" button.
  • Weekly digest to sales manager: aggregate stuck-deal count by stage and by rep.
  • Real-time alert when a deal value > $X becomes stuck: routed to manager Slack channel.

The standard 7-day stuck-deal playbook:

  1. Day 1 (stuck flagged): rep reviews last activity, sends a re-engagement message.
  2. Day 4 (no reply): rep tries a different channel (X DM if email; Telegram if X).
  3. Day 7 (still no reply): move to "Closed Lost - No Response," tag with reason, return to nurture sequence for 90-day re-engagement.

Step 7: Calculate your weighted forecast

The formula:

weighted_pipeline = Σ (deal_value × stage_probability)

# Example
Lead (10 deals × $10K × 0.07)             = $7,000
Engaged (8 × $10K × 0.20)                 = $16,000
Qualified (5 × $10K × 0.47)               = $23,500
Demo Booked (3 × $10K × 0.61)             = $18,300
Proposal Sent (2 × $10K × 0.81)           = $16,200
TOTAL WEIGHTED PIPELINE                   = $81,000

# Coverage ratio
weighted_pipeline / monthly_quota
$81,000 / $40,000 = 2.0× coverage

The coverage rule of thumb:

  • > 3× coverage: healthy. Even with a bad month, you hit quota.
  • 2-3× coverage: at quota with normal conversion. A small miss can drop you under.
  • < 2× coverage: insufficient. You either need to generate more top-of-pipeline or improve conversion before missing quota.

CRM Solid's dashboard shows coverage in real time. If it drops below 2×, that is your earliest possible warning; three weeks before the actual revenue miss.

Step 8: Train the team and enforce daily updates

A pipeline is only useful if reps update it daily. Make that the easy path:

  • Auto-stage-on-event: when a calendar event is created, move to Demo Booked automatically. When a proposal PDF is sent via the panel, move to Proposal Sent automatically. CRM Solid does both natively.
  • Stage-promotion via reply keyword: when a contact replies with "yes" to a calendar-invite template, auto-progress to Demo Booked. Reduces rep clicks.
  • Weekly 1:1 anchor: the weekly rep-manager 1:1 starts with the rep's pipeline open. No exceptions. Coaching follows the data, not vice versa.
  • Forecasting accuracy as a metric: reps whose monthly forecasts beat by > 20% or miss by > 20% get attention. Accurate forecasters get autonomy; inaccurate ones get coaching.

The pipeline becomes the language. Decisions about coaching, hiring, marketing investment, and product roadmap all stem from it. Build it well, then trust it.

CRM Solid pipeline vs Pipedrive vs spreadsheet

The difference becomes operational the first time you need to forecast or run a stuck-deal review.

CapabilityCRM SolidRecommendedPipedriveGoogle Sheets
Stage design
Per-stage entry/exit criteria
Per-stage probability
Per-stage typical-time-in-stage
Operations
Auto-stage on reply / calendar event
Stuck-deal alerts
Multi-channel sequences from stage
Forecasting
Weighted forecast dashboard
Coverage ratio vs quota
Per-rep forecast-accuracy report

A spreadsheet works until you have 50 open deals and 3 reps. After that, the manual updates collapse and the pipeline becomes fiction.

“We had a Pipedrive pipeline for two years that nobody trusted. Rebuilt it in CRM Solid with real entry/exit criteria and the stuck-deal alerts. Forecast accuracy in the next quarter went from ±35% to ±8%. We could finally plan hiring against revenue.”
Yannis Papadopoulos
VP Sales · Bluefin Trade Tech

Pipeline setup FAQ

Eight questions every operator wrestles with when designing or redesigning a pipeline.

Five to seven for most B2B sales motions. Fewer than five and you lose visibility into where deals actually stall; more than seven and reps stop updating the stage accurately. The right number is the smallest set where each stage corresponds to a real, observable change in deal state.
A funnel measures volume at each marketing stage (visitors → leads → MQLs → SQLs). A pipeline measures probability-weighted revenue across sales stages for already-qualified deals. Funnels are top-of-stack and probabilistic; pipelines are bottom-of-stack and deal-specific. You need both.
Take your last 30 closed-won deals plus your last 30 closed-lost deals. For each stage, calculate (won at this stage or later) / (total in this stage or later). That percentage is your real probability. Most teams discover their early-stage probabilities are 5-15%, not the 25-50% they were guessing.
A stuck deal is one that has been in the same stage longer than the median for that stage. CRM Solid auto-flags these in the pipeline view. The standard playbook: review last activity, attempt 1 re-engagement message, if no response in 7 days move to "Closed Lost: No Response," cycle them back to a nurture sequence after 90 days.
Yes, they should be similar but not identical. Inbound deals skip the "Cold Reach Out" stage entirely (they already responded). Outbound deals need an "Engaged" stage before "Qualified" that inbound does not. Run two pipelines or use a single pipeline with a "source" tag and stage-skip rules.
Weekly is the right cadence for monthly-billing SaaS and most B2B services. Daily is over-investing; the data does not change that fast and you train reps to obsess over short-term noise. Monthly is too infrequent; you lose the early-warning signal of a deal slipping.
Three high-value automations: (1) When a deal enters "Qualified" → send a calendar booking link via the contact's preferred channel. (2) When a deal stays in "Demo Booked" for 48h without movement → ping the assigned rep with a nudge. (3) When a deal moves to "Closed Won" → notify the workspace, kick off onboarding sequence. Start with these three; add more once they prove value.
Two checks. First, an auto-archive rule: deals in Lead or Engaged with no activity for 30 days are auto-closed as "Lost: No Engagement." Second, a per-rep age report: average days-in-stage by stage. Reps with consistently above-average ages in early stages are usually holding stale deals. CRM Solid surfaces both automatically.
Ready to ship

Forecast revenue you can actually trust

A 14-day trial includes the pipeline builder, stage automations, stuck-deal alerts, and the weighted-forecast dashboard. Run the guide end-to-end and judge the forecast.

Trusted by 2,500+ teams · GDPR-ready · 99.95% uptime

We value your privacy

We use cookies to improve our site, analyze traffic, and personalize ads. You can accept all, reject non-essential, or customize your choices. Read our Cookie Policy.