Handee, the compliance system we build for multi-site property operations, decides which contractors an operator is shown when a job needs doing. This month we started charging contractors to change that order.
That is a conflict of interest. We do not think it is an unmanageable one, but the first honest thing to say about it is what it is.
The uncomfortable sentence
A marketplace that ranks suppliers and also sells them a ranking boost has a buyer on one side who assumes the order means something, and a seller on the other who has been told it can be bought.
Both are right, and the gap between them is where most of these products quietly live. The order looks like a recommendation. Some of it is a payment.
You can decline to build the feature. We considered it, and the argument against it is that the alternative is only ever a different arbitrary order, usually alphabetical or whatever the database happened to return, with no principle behind it either. We would rather charge for a bounded, disclosed influence than pretend the unpriced version was impartial.
Having decided to build it, the work was almost entirely about limits.
Three limits, in order of importance
The compliance check runs first and on its own, so paying cannot make anyone eligible. A contractor without the certificates that site requires never reaches the list at all. This is the whole product, and no amount of money touches it.
Then proximity, which paying also cannot beat. The score is mostly about how close the contractor is to the building, then how much life is left on the certificates the job needs, then whether they pay us. The paid weight is deliberately set below the gap between one distance band and the next, so a paying contractor ranks above an equally close one who does not pay, and never above one who is nearer.
And the ranking decides nothing in any case. It sorts a list. The operator still selects each recipient by hand.
A promise in a document, a constraint in a test
The second limit is the one that would rot. Weights get tuned, someone reasons that twenty is a bit thin for a paid feature, and a year later the boost quietly outranks a closer supplier and nobody remembers it was not meant to.
So we wrote it as a test that fails the build: a paying supplier outranks an equally close non-paying one, and never outranks a closer one. Change the numbers past that line and the release does not ship.
This distinction is worth more than it sounds. A rule in a policy document is a promise, kept for as long as the person who made it is still in the room. A rule in a test is a constraint on everyone who comes after, including on us in a quarter when revenue is thin. When a supplier tells you they will not do something, the useful question is which of the two they have got.
Putting it in the terms rather than the sales page
The parameters are published in our terms of service, in the section on how contractors are ranked. That is a deliberate choice of venue over the help centre or a footnote in a pricing table, because the person reading the terms is an operator deciding whether to trust the list.
The section gives the weights, states that the ranking runs after eligibility and can never get round it, and confirms that the operator makes the selection. It then says, in as many words, that this is remuneration which influences ranking and we are telling them so plainly.
The cost of writing it that way is precise. It makes the feature sound weaker to the people paying for it, because the accurate description of a bounded boost is that it changes the order among close equals and often changes nothing at all. Our own marketing wanted a stronger sentence. The stronger sentence was not true, and we have already published one release note about the last time we let a persuasive claim out ahead of the software.
There is a European regulation that requires platforms to disclose ranking parameters. We would like to claim we did this because it was right. It was also required, and saying only the first half would be its own small dishonesty.
Why any of this should matter to you
Every supplier you evaluate has somewhere their revenue and your interests point in different directions. Usage-based pricing rewards inefficiency, seat pricing rewards sprawl, and a ranked marketplace rewards whoever pays.
The question is not whether that divergence exists, because it always does. It is whether the supplier can tell you where theirs is without being cornered into it, how far they have bounded it, and whether the bound lives anywhere that would stop them crossing it on a bad quarter.
Most procurement processes never ask. They ask about uptime and roadmaps and reference customers, all of which the supplier has prepared for. The unprepared question is: where does your business model make you want something I would not want, and what stops you?
The number we promise clients is the human time recovered on the work they hand us. That promise is only worth as much as our willingness to publish the parts that do not flatter us, and this is one of them. The version written for the operators and contractors who use the product is on the Handee site.