A sales pipeline for a roastery
Most roasteries have a pipeline. It is a spreadsheet, it is opened every couple of weeks, and it is never quite right: statuses have changed, conversations went unlogged, and one good lead has been sitting untouched since August. The fix is not better software. It is four columns and one rule.
Published 17 September 2026
On this page11
Short answer. One row per café, six stages, and a rule that every row carries a next action with a date. Work it for one hour at the same time every week: do what is due, close what has not moved in a month, then add new names. Count how many cafés it takes to win one account and let that number, not optimism, tell you how many doors to knock on.
How many cafés do you have to approach?
Selling feels like luck until you have counted it, at which point it becomes arithmetic with a lot of walking in it. Work backwards from the accounts you need, through the rate at which each stage converts, to the number of first visits a week that implies.
The list is the visits plus a fifth, because some cafés turn out to be tied, closing or already roasting their own. Replace the three rates with your own as soon as you have six months of history.
Two things usually fall out of this the first time a roaster runs it. The first is that the number of visits is smaller than feared: at the defaults it is two or three cafés a week, under two hours, which is a Tuesday morning rather than a career change. The second is that "we'll grow wholesale this year" without a number attached is not a plan, because at one visit a fortnight the same targets need about nine years.
The churn figure deserves a moment. Ten new accounts on top of sixteen existing ones is not a book of twenty-six unless nothing leaves, and something always leaves. Whatever you lose, you win back first and grow second — the same arithmetic runs in how many wholesale accounts a roastery needs.
Six stages, defined by something you can check
A stage is only useful if two people would put the same café in the same one. Define each by an observable fact, never by how the conversation felt.
| Stage | True when | Your next action | Moves on when |
|---|---|---|---|
| Identified | On the list, fits your coffee, volume and route | Walk in at a quiet hour | You spoke to a named person |
| Visited | You spoke to the owner or head barista, not the Saturday shift | Offer to leave two coffees | They agreed to samples |
| Sampling | Coffee is with them, roast-dated, with a recipe card and a call date | Call on day two | They have tasted it and will talk terms |
| Quoted | They have prices, minimums, delivery days and payment terms | Propose a trial with edges | A start date or a trial is agreed |
| Trial | Named coffee, kilos, weeks, price and a review date in the diary | Be there on the first morning | First paid order |
| Won | They have ordered and paid once | Hand over to onboarding | — |
Two endings, not stages. Lost needs a reason in one word — price, tied, style, no decision, went quiet — because six months of reasons is the most useful sales report a small roastery will ever produce. Parked needs a date: a café on a machine-loan agreement that ends in March is not lost, it is a diary entry for February.
Resist adding stages. "Warm", "very interested" and "nearly there" are not stages, they are feelings, and pipelines fill with them. If you cannot say what would have to happen for a café to move on, it is not in a stage — it is parked.
The tracker
Eleven columns, one row per café. Copy it into a spreadsheet and put the sheet somewhere your whole team can open, even if your whole team is two people and a van.
| Café | Contact and role | Stage | Est. kg/week | Est. €/month | Current roaster | Source | Last contact | Next action | Due | Notes |
|---|---|---|---|---|---|---|---|---|---|---|
| Little Fox Espresso | Marta, owner | Sampling | 14 | 442 | A national brand | Tuesday route | 3 Sep, visit | Call about the espresso | 5 Sep | Wants a better decaf |
| Common Ground | Head barista, name to find | Identified | 8 | 253 | Unknown | Walked past | None | Visit 10:30 | 10 Sep | New grinder on the bar |
| Café Aurora | Jonas, head barista | Quoted | 20 | 631 | Local roastery | Cupping | 28 Aug, cupping | Propose filter trial | 8 Sep | Owner decides, not Jonas |
| Padaria Norte | Sr. Almeida, owner | Parked | 6 | 190 | Tied, loan machine | Referral | 14 Jul, call | Ring again | 2 Feb | Machine agreement ends March |
The estimated monthly figure is kilos × 52 ÷ 12 × your gross profit per kilo — €7.29 in the worked example running through these guides. Putting money rather than kilos in the column changes how the list gets sorted, and sorting by money is how you stop spending three visits on a four-kilo café while a twenty-kilo one waits.
Estimating the kilos takes twenty minutes of standing in the café counting drinks; the method is in how to get wholesale coffee accounts, along with how to build the list in the first place.
The one rule
Every row has a next action and a date. No exceptions, including for cafés that have just said something encouraging.
This is the whole difference between a pipeline and a list of cafés you like. A row whose next action is blank is not a prospect, it is a memory, and it will sit there getting older while you tell yourself you are on top of things. When you genuinely have no next step, the honest move is to mark it lost with a reason or parked with a date. Both are better than a blank, because both are decisions.
Two habits make the rule survive contact with a busy week. Set the next action while you are still standing outside the café, on your phone, not that evening. And when you complete an action, set the following one in the same keystroke — never close the sheet with a completed row that has no future.
The Monday hour
One hour, the same hour every week, not on a roast day. In this order, because the order is the point:
- Everything due this week. Sort by the date column. Make the calls first — a café that has your samples will tell you more in two minutes on the phone than in a fortnight of email.
- Everything overdue. Either do it now or move the date deliberately. Silently letting it slide is how the sheet stops being true.
- Anything that has not moved in a month. It goes forward, gets parked with a date, or is marked lost with a reason. A prospect that has been "sampling" since July is not sampling.
- Only then, add new names. Adding prospects is the enjoyable part and the least useful, which is why it goes last. A pipeline of eighty untouched names and four worked ones is worse than twenty worked ones.
Fifteen minutes of that hour belongs to accounts you already have. The cheapest new account is the one you do not lose: see spotting café accounts going quiet.
Four numbers worth counting
- Conversion by stage
- Of the cafés that entered each stage in the last six months, how many moved on. This is what feeds the calculator above, and it is usually where the surprise is: most roasters find the leak is not at the close but between the sample and the quote, where nobody called.
- Contacts per win
- How many calls, visits and emails the average won account took. Knowing it is seven stops you giving up at four, which is where most roasters give up.
- Days in stage
- The age of each row in its current stage. Anything over about six weeks is either parked or dead and is being kept alive for morale.
- Reasons for loss
- Counted, not remembered. Ten losses to price is a pricing or positioning problem and is answered in competing with a cheaper roaster. Ten losses to "no decision" is a qualification problem: you were talking to the wrong person.
None of these need software. Four formulas over the tracker and a fifteen-minute look once a quarter is enough, and it is four more numbers than most roasteries have.
Four ways the pipeline lies to you
- Happy ears. "They loved the coffee" is not a stage. A café that loved the coffee and has not agreed to anything is exactly where it was before.
- No named decision-maker. If the contact column says "head barista" and the owner buys the coffee, everything above that row is optimistic. Qualify who decides before the sample drop, not after the quote.
- The estimate nobody revised. A café entered at 20 kg a week because that is what the owner said in March, ordering 7 kg now, is distorting every forecast made from the sheet. Re-estimate at the trial, from real orders.
- The pipeline that only ever grows. If nothing has been marked lost in two months, the sheet is a wish list. Closing rows is the maintenance that keeps the rest meaningful.
When the spreadsheet stops being enough
Later than software companies would like you to believe. Below about twenty live prospects, a single sheet is faster to edit, needs no training and cannot go down. Move when one of these is true, and not before:
- More than one person is selling, and you have found out that a café was contacted twice by two of you.
- You cannot see this week's actions without sorting and squinting.
- What was said on the last call lives in somebody's head or inbox rather than the row.
- The sheet has been copied, and there are now two versions with different truths in them.
When you do move, the thing to look for is not features. It is whether the next action with its date is the first thing you see when you open it. A tool that hides that behind a dashboard is a worse pipeline than the spreadsheet you left.
Where the pipeline ends
At the first paid order, and the handover matters more than the tool. Everything the sheet knows — who decides, what they pay, what they were promised, what they complained about, which coffee won them — has to reach whoever serves the account, or the trial's careful attention becomes ordinary service in week three and the account you worked twelve visits for starts drifting in month five.
Write the promises down where the account lives, not where the prospect lived. "Quarterly dial-in" and "wanted a better decaf" are account facts now. Then delete the row, or mark it won and stop maintaining it: a prospect sheet that doubles as a customer list becomes neither. What happens next is in onboarding a new wholesale café.
Questions roasters ask
- What is a sales pipeline for a coffee roastery?
- A list of every café you are trying to win, each one sitting in a named stage, each one carrying a next action with a date on it. That is the whole idea. The stages matter far less than the rule that no row is allowed to exist without a next action and a date, because a row without one is how a promising café becomes a café you forgot about for six weeks.
- How many cafés do I need to approach to win one account?
- Work it backwards from your own numbers rather than an industry figure. As a starting assumption before you have your own: about six in ten cafés you visit properly will take samples, about four in ten of those will ask for prices or agree a trial, and about half of those become accounts. That is roughly twelve first visits for one account. Track the real rates for six months and the assumption stops mattering.
- Does a small roastery need a CRM?
- Not at first. Below about twenty live prospects a spreadsheet with one row per café is genuinely better, because it is faster to edit and nobody has to be trained. You have outgrown it when more than one person is selling, when you cannot see this week's actions without sorting, or when you keep discovering that a café was contacted twice by two different people.
- What stages should a wholesale coffee pipeline have?
- Six is plenty: identified, visited, sampling, quoted, trial, won — with lost and parked as endings rather than stages. Define each one by something observable rather than a feeling. 'Visited' means you spoke to a named person, not that you walked past. A stage you cannot verify is a stage that fills up with wishful thinking.
- How often should a roaster review the sales pipeline?
- One hour, the same hour every week, ideally not on a roast day. Work the actions that are due, move or close anything that has not changed in a month, and only then add new prospects. Adding is the fun part, which is exactly why it goes last.
- What is the difference between a pipeline and a CRM?
- The pipeline is the part before the first order: prospects, stages, next actions. A CRM in the wholesale sense usually means what happens after — order history, prices, contacts, payments, whether an account is drifting. Most roasteries need the first in a spreadsheet and the second in whatever runs their orders, and problems start when one tool is asked to do both badly.
Where Order Book fits
Order Book keeps prospects in the same book as clients, with stages that follow this guide: Lead, Sample sent, Tasting, Negotiating, then Client or Lost. It is a stage column and a filter on the clients list, not a board of cards. It will not hold a cold list of hundreds or tell you where a lead came from — for that, the tracker above is still the right tool.
A sample is sent from the prospect's page as a free order: it goes on the picking list and the roast plan labelled Sample and stays out of every figure, and the café rates it once it signs in. Every visit and call goes in its Activity, logged from the phone at the door with a photo if you like. The first real order makes it a client by itself, and prospects do not count toward your plan. From that day it has its own account, no password, its own prices in its own language. And once it is ordering, drift detection measures it against its own rhythm and puts it back in front of you when it slows down — which is the other half of the arithmetic at the top of this page, because an account you keep is an account you never have to win again.
Start free for 30 days, no card, or see pricing.