Twelve AC repair calls in Plano produced two prices, both diagnostic fees.
Nine of twelve calls connected and seven reached a person, but only three would confirm a visit and two named a price. Four took details and promised a callback.
A homeowner in Plano, Texas woke up on a Monday morning with the air conditioning dead and a forecast that was not going to wait. The request was filed on the “as soon as possible” setting, which is the urgent one. Boocki found twenty air conditioning and HVAC providers in ZIP 75093 and spent the next twenty minutes calling twelve of them. Nearly all of them answered. Very few of them would commit to anything.
- 20
- HVAC providers foundZIP 75093
- 12
- called8:41 to 8:51 AM CT
- 3
- confirmed they could comeof the twelve
- 2
- named a price$99 and $129, both diagnostic
How to read this
Four phrases carry the piece, and three of them sound interchangeable until they are written down.
- Completed: the call produced a transcript. Nine of the twelve.
- Reached a person: someone at the provider’s end spoke, and it was not a voicemail greeting, a carrier recording or an automated assistant. Seven of the twelve.
- Confirmed they could come: the product’s own availability field was set to true on that call. This is a stricter test than a person answering, and it is what the funnel counts. Three of the twelve.
- Named a price: the provider said a number out loud in the conversation. Two of the twelve, and both numbers were the fee to come and look, not the cost of a repair.
The method is one job, one ZIP code and one frozen search phrase. The ZIP is 75093 (Plano); the phrase is air conditioning repair HVAC. The job carried the urgent preset, so every provider was told the system had broken down and the homeowner needed service as soon as possible.
Whose ASAP is it?
Every provider was told the same thing in the first sentence: the system has broken down and the homeowner needs repair as soon as possible. That is the whole ask. A broken AC in a Plano September is not a next-week problem, so the only useful answer has two parts, a time and a number.
Twelve providers answered that sentence in twelve different ways. Nine of them stayed on the line long enough to produce a transcript. Two gave a time or a time window. Two gave a number. No call produced a firm appointment, because the “as soon as possible” setting tells a provider what the homeowner wants, not what the calendar can hold.
The twelve calls, one by one
Everything below reconciles to this table. No provider is named: the recordings contain the homeowner’s street address, a callback number and the first names of the people who answered, so the call numbers are the identifiers here. The “Confirmed” column is the product’s own availability field, not our reading of the transcript.
| # | What happened | Length | Confirmed | Price |
|---|---|---|---|---|
| 1 | A three-second greeting, then nothing the carrier filed as an answer | 0:03 | No | None |
| 2 | No audio captured at all | 0:00 | No | None |
| 3 | A person answered, asked for the address, then offered same-day and a fee | 2:00 | Yes | $129 |
| 4 | A recording, then the voicemail box took a message and dropped the line | 0:15 | No | None |
| 5 | Forwarded straight to voicemail, then ended | 0:02 | No | None |
| 6 | A person answered and gave a fee and a four-hour window | 2:20 | Yes | $99 |
| 7 | A person answered, then the call cut off before the request was made | 0:28 | No | None |
| 8 | An answering service took the message and promised a callback | 0:59 | No | None |
| 9 | A person confirmed they could help, took the callback number, quoted nothing | 2:42 | Yes | None |
| 10 | A person answered, then the line dropped mid-sentence | 0:35 | No | None |
| 11 | A person offered to book it, would not quote or give a window, took the number | 2:51 | No | None |
| 12 | An automated intake assistant took the details and promised a callback | 2:45 | No | None |
One row in that table needs a note before the summary. Calls 11 and 12 did offer to help, and both took the homeowner’s details down, but neither set the availability field, so they read as “No” above while their transcripts read like a soft yes. The funnel below counts the field, and the successes section returns to the two calls rather than pretending the table and the prose agree.
The funnel
The same twelve calls, narrowed five times. Every row is the sum of rows in the table above, and the “Calls” column says which, so nothing here is an orphan number.
| Step | Calls | Count | Share |
|---|---|---|---|
| HVAC providers found | n/a | 20 | n/a |
| Called | 1 to 12 | 12 | 100% |
| Connected by the carrier | all but 1, 2, 5 | 9 | 75% |
| Reached a person | 3, 6, 7, 8, 9, 10, 11 | 7 | 58% |
| Confirmed they could come | 3, 6, 9 | 3 | 25% |
| Named a price | 3, 6 | 2 | 17% |
The 75% is the number an ordinary call log would print as “answered,” and it is the least useful row here: it counts a two-second voicemail announcement (call 5) the same as a two-minute conversation. The 58% is the tier that costs a reader the most attention, because call 12 was answered by an automated intake assistant and call 8 by an outside answering service, so neither is the provider itself.
The nine that never confirmed
Nine calls produced no commitment, and they are not one failure repeated nine times. Every one failed differently, and the length of the call is the tell.
| # | Failure | Length | What the recording shows |
|---|---|---|---|
| 1 | Greeting, then silence | 0:03 | Three seconds of a greeting before the carrier ended the call. |
| 2 | Nothing at all | 0:00 | No audio captured and no recording stored. |
| 4 | Voicemail, then disconnect | 0:15 | A quality-assurance recording, then a box that took the message and dropped the line. |
| 5 | Forwarded to voicemail | 0:02 | The line announced the forward and ended. |
| 7 | Cut off mid-sentence | 0:28 | A person answered, and the call ended while the agent was still explaining the job. |
| 8 | Answering service, message taken | 0:59 | An operator at an answering service wrote the request down and said the team would call back. |
| 10 | Disconnected mid-intake | 0:35 | A person answered, and the call ended before anything was exchanged. |
| 11 | Would book, would not quote | 2:51 | A person offered to make an appointment but asked for the callback number instead of giving a time, and would not name a fee. |
| 12 | Automated intake, callback promised | 2:45 | An assistant that introduced itself as an AI collected the details and handed the request to a team specialist. |
Calls 11 and 12 are the two that look most like successes and are not counted as ones, which is exactly why they lead the table’s tail. Call 11 got as far as offering an appointment and stopped at the price. Call 12 took a full intake, asked for the spelling of the homeowner’s surname and the unit type, and still produced neither a time nor a fee.
The three yeses, and what each was worth
Three providers set the availability field. Two of them said a number, and neither number was the price of a repair. Both were the fee to come out and look at the unit, which is a different kind of answer: it tells the homeowner what it costs to get a diagnosis, not what it costs to get cold air back.
| # | What they said | Price | Arrival |
|---|---|---|---|
| 3 | A person answered, took the address, and offered a same-day visit | $129 | Today |
| 6 | A person answered and gave a fee and a four-hour window without being pushed | $99 | 12 to 4 today |
| 9 | A person said they could help and swapped the callback number for the job | None | None |
“It’s a ninety nine dollar diagnostic, and we could have somebody out between twelve and four today.”
That is the only call of the twelve that produced a number, a window and no follow-up request. Call 3 is close behind it: a person answered, asked for the address before answering anything, and then offered same-day service for $129. The other ten calls produced no appointment the homeowner could put on a calendar.
The pattern nobody would say out loud
Look at what the four longest calls have in common. Calls 8, 9, 11 and 12 all ended the same way: the provider took the homeowner’s name and number and said their team would call back. Not one of them offered a time or a price in exchange.
| Reached a person | Calls | Called | Confirmed | Named a price |
|---|---|---|---|---|
| Yes | 3, 6, 7, 8, 9, 10, 11 | 7 | 3 | 2 |
| No | 1, 2, 4, 5, 12 | 5 | 0 | 0 |
The split is not the finding on its own, because seven calls reaching a person and only two producing a number is a small sample. The finding is the shape of the four deferrals: in each one the provider extracted information and gave none, which is a reasonable way to run an intake desk and a bad way to answer a homeowner who is trying to budget for the day.
The arithmetic
The whole job cost less than a single diagnostic fee: twenty providers found, twelve called, fifteen minutes of recorded audio.
| Metric | Value |
|---|---|
| Providers found | 20 |
| Calls placed | 12 |
| Talk time | 15 min 0 s |
| Billable talk time | 14 min 55 s |
| Longest call | 2:51 (call 11) |
| Shortest call | 0:00 (call 2) |
| Charged past the last spoken word | 0 s |
| Total charged | $4.48 |
| Average per call | $0.37 |
Talk time is the sum of the Length column in the first table: 0:03 + 0:00 + 2:00 + 0:15 + 0:02 + 2:20 + 0:28 + 0:59 + 2:42 + 0:35 + 2:51 + 2:45, which is 15 min 0 s. Billable time is the same sum without the two no-answer fragments (calls 1 and 5, five seconds between them), which is 14 min 55 s. The ledger charges on the nine completed calls only, at $0.30 a minute, so $4.48 is that total rounded up to the cent. The average is $4.48 divided by the twelve calls placed.
What we would change next time
- Call all twenty, not twelve. Eight providers in the search were never dialled, so the top of the funnel is a selection rather than the whole population, and those eight could move any of these numbers.
- Ask for the repair price, not the diagnostic fee. The two numbers this job produced are both the cost of finding out. The question that matters to a homeowner is what the fix costs, and this run never asked it in so many words.
- Time the run to the claim.This was filed Saturday night and dialled Monday at 8:41 AM, so the “as soon as possible” setting was tested at the start of the business day, which is its easiest hour. A weekend or evening run is the harder test.
- Keep the callback number out of the script.Calls 11 and 12 turned the intake into a number swap. Four of the longest calls ended in a promised callback, and a transcript that contains the homeowner’s mobile number is the reason none of them can be quoted at length here.
Why publish the whole funnel
A tool that reported “three HVAC providers available” would be hiding the most useful thing it learned: what happened to the other nine. Boocki finds the providers, makes the calls, and writes down what each one said, including the four that took the homeowner’s number and promised to call back without ever naming a price.