The vendor is right that the service worked by the terms of the contract. The investor is right that the outcome was a failure. Both things are true because the contract measured the wrong thing.
A "warm lead" in this context means a seller who responded to an outbound text and indicated some willingness to talk. That response has a short shelf life. Research on inbound sales contact consistently shows conversion drops sharply after the first hour, and in a competitive market where multiple buyers are prospecting the same lists, the drop can be that fast.
The core problem here is that the service agreement defined delivery as the response, full stop. The vendor hit that mark. Nothing in the agreement created any obligation around what happened next, and so nobody on the investor side owned the job of being first to call. Four sellers found another buyer in that window.
A few things worth building into any agreement before the next campaign:
The definition of a "qualified lead" should include a response-time commitment on your end, written as a number of hours, not a vague intention. If your team cannot staff that window, that belongs in the conversation with the vendor before you sign.
The fee structure matters here. Paying per response means the vendor's incentive ends at the response. Paying per appointment, or even per contract, moves some of that incentive forward, though vendors with good contact rates will price accordingly.
The handoff itself needs an owner by name on your team. A three-person operation with no written handoff protocol is the internal version of the same problem.
I am not certain how different state laws treat response-time disclosures in lead-gen agreements, so a contracts attorney would be worth a short call before you redline anything.
What does your current team structure look like for inbound follow-up? That changes what a realistic response-time commitment actually is.