English
About Knockwire
Last updated 1 August 2026
Knockwire reads companies on the open web, throws out the ones that will never buy, and for the few that survive it finds the contact form the company published itself and submits one message, after a person has read that message and approved it. Most of what it does is refuse. That is not a limitation we are working through. It is the product.
Sending stopped being the hard part
You can buy an outbound stack this afternoon, load fifty thousand contacts into it before dinner, and have every one of those messages delivered by the morning for roughly the price of a lunch. Nothing about that has been difficult or expensive for about a decade. When a vendor tells you their product sends at scale, they are describing the part of the job that got cheap, and charging you for it.
Once a capability costs nothing, having it stops setting you apart and starts implicating you. Everyone in your category owns the same capability, pointed at the same finite set of people, and the people have noticed. So the binding constraint moved. It used to sit on capacity. It now sits on permission and on attention, and no amount of infrastructure buys either one.
The valuable question moved with it, from who can be reached to who should be left alone. That is a filtering problem, and filtering is hard in a way that sending has not been for years, because it means researching companies you are about to throw away. Nearly all of the work happens on companies that never receive anything.
A filter you cannot read is only a list
Open any outbound dashboard and look at what it is willing to tell you. Messages sent. Delivery rate. Opens, clicks, replies, meetings booked. Every one of those describes something that happened after a decision to send. A candidate that was refused leaves no row at all: no send event, no open, no reply, no thread. It exits as an absence, and absences do not appear in reports. So the one component that now decides whether the product is any good is the one component nobody instruments. It is like judging a proofreader by reading only the sentences they left in.
There is an incentive underneath that, and it is worth naming, because it explains why the gap has not closed by accident. Most outbound tooling is priced per seat or per send, so a refusal is revenue that did not happen. A vendor whose margin improves every time the filter says yes is not the vendor you want tuning the threshold. We price the other way round. You pay for knocks that land, rejections are free, and a company we judged unreachable is never billed. Refusing one costs us the work and costs you nothing, which is the only arrangement under which we can afford to mean it.
The mechanism itself is deliberately dull. Every candidate a source hands us is recorded. Every one that fails a gate is turned down, and the reason is written in words at the moment of the decision, by the gate that made it. Those rows are kept individually rather than summarised into a pass rate, and they are published. Read the Rejection Index.
The ledger, including the part that embarrasses us
Between 27 January and 26 July 2026 we pointed Knockwire at our own business and kept a written reason for every refusal it made. It read 4,182 companies, turned down 4,171 of them, and delivered 11 knocks. That is 379 refusals for every message a person approved.
The ratio is a true count of rows, and it also flatters us, so here is the correction we published against ourselves. 1,447 of those 4,171 were not judgments about a business at all. They were the pipeline working out that the thing it had read was not a business: a domain that stopped answering between the source indexing it and the pass that read it, a parked page where a product used to be, a code-host organisation belonging to one person with a bio written in the first person plural, a name collision. That is data cleaning, not discernment, and counting it inside a selectivity ratio is a way of taking credit for the current state of the public internet.
Measured only against companies that were genuinely trading at the moment we read them, we read 2,735, turned down 2,724, and delivered 11 knocks. Roughly 1 in 250. We keep both numbers on the record rather than choosing the better one. The first describes the pipeline end to end. The second describes the decision, and only the second is a claim anybody should argue with us about. A ratio that flatters you is usually measuring the state of your input rather than the quality of your judgment. Read the full ledger.
Four gates, and what they cost us
Every company is asked four things in a fixed order. Is it a buyer, meaning is data the product rather than a side activity somebody in finance is trying to reduce. Is there a reason to write this week rather than any other week. Is there a legitimate door, meaning a public contact route the company published and intends strangers to use. Are we allowed to knock at all, given where the recipient sits. A company stops at the first gate it fails and the reason is written there. In the first quarter of 2026 those four gates turned down 12,022 companies out of 12,410.
Three of the four throw away companies we wanted, and we can name the bill. In that quarter 988 were real buyers turned down purely because we could not point at a current reason to write. 183 had no contact route we were willing to use. 33 sat in jurisdictions we hold back by default. A gate that has never turned down a company you wanted is not a gate. It is a formality with a log file. Read what each gate costs.
The obvious objection is that all of this is money left on the floor, so we tested it rather than argue about it. For one month we took fifteen points off the fit threshold and changed nothing else. Messages delivered rose from 81 to 214. Replies went the other way, from 11 to 9. Of the 136 messages that only the looser setting allowed, exactly one company replied, and the review time behind them went from about six and a half hours to eighteen. The threshold went back where it was. One month on one business is not a law, and we published that caveat alongside the result. Read the experiment.
What we will not do
Every item below would raise the number this quarter. Each one is meant to sit in the pipeline rather than on a values page, which is the only version of a principle worth reading.
- No control bypass. We do not solve CAPTCHAs and we do not defeat bot detection. A protected form is a stated preference, so the job stops and waits for a person. That is the designed behaviour, not a fallback we intend to engineer around later.
- No working around a rate limit. A 429 and a robots directive are answers, and we treat them as answers.
- No guessed addresses. If the only route we can construct is a pattern matched against a domain, the company is turned down for want of a door and stays turned down. We do not run email finding tools, and we do not read the personal profiles of the people who work there in order to manufacture a route.
- Nothing sends itself. A named person approves each specific message before it goes anywhere. There is no auto approve, no approve all, and no score above which review is skipped.
- No bulk send path. If a customer asks for one, the answer is no, rather than no for now while we quietly build it.
- Germany and Italy are excluded by default, because their rules require prior consent even between businesses. A customer can change that deliberately and in writing, and the change is recorded.
- One knock per company per period. You can raise the ceiling. You cannot remove it.
- Suppression is permanent and global. One opt out removes a company from every campaign and every future run, and we keep that record for the sole purpose of never contacting them again.
There is also a thing we have not built. Email sending is not part of this product. It is scheduled for Q4 2026 and it stays marked as unbuilt everywhere it comes up, including here. Every knock in the ledger above went through a contact form the target company published itself, which is a narrower channel than an inbox, and narrow is the point. Saying all of that out loud costs us something in a sales conversation. We keep saying it, because the alternative is describing a roadmap in the present tense.
The person running it decides
Nothing here quietly retunes your profile from your own approvals and refusals. The data to do it is sitting right there and the demo would look excellent. We do not, because a profile that adjusts itself makes the ledger unreadable. A written reason has to mean the same thing in March as it meant in January, or nobody can tell whether a company was declined because its circumstances changed or because the rule moved underneath it, and every historical refusal becomes a claim about a version of the profile that was never written down.
What the system does instead is surface the cluster. Here are thirty four companies declined for the same written reason, here is the gate that declined them, here is the change to the profile that would have let them through, and here is what that change would have done to the rest of the pass. A person reads it and makes the call, and the call carries a date and a name.
That is how we found out our own profile was wrong, twice, in the first hundred refusals we sat down and read in order. Our stated target admitted far too much, and a headcount floor we had assumed was sensible was turning down some of the strongest accounts in the business we were pointing it at. Both errors were plain in the companies we threw away and invisible in the companies that qualified. Read what the first hundred refusals taught us.
The bet
None of this is a proof. It is a bet, and it is easy enough to state that you can hold us to it. A tool that refuses well will be worth more than a tool that sends fast, because the scarce inputs are permission and attention, and refusal is the only operation that earns either. If the bet is wrong, the refusal ledger is where it will show first. We publish the ledger partly so that you find out at the same time we do.
The evaluation we would suggest is not a demo call. Run it on your own domain, read the handful of companies it qualified, then spend longer on the thousands it threw away and decide whether you agree with the reasons. If you do not, that disagreement is the most useful thing you can send us. Write to us, and you will get a reply from a person.